Course Outline

Introduction

  • What kind of programming language is Julia?
  • How was Julia created, when, and by whom?
  • Julia resources

Development Environment

  • Introduction to the cloud development environment
  • Terminal
  • REPL
  • Loading and installing packages
  • IDE

Fundamental types, variables and operators

  • Basic data types
  • Strings and interpolation
  • Variables
  • Operators

Variables, functions and operations

  • Variables and constants
  • Calling and declaring functions and lambdas
  • Control flow, exception handling and errors

Scoping

  • Function scopes
  • Global and local scoping
  • Blocks
  • begin/end
  • let/end
  • Modules
  • Data Structures
  • Tuples
  • Dictionaries
  • Arrays
  • Vectors
  • Matrices & Linear Algebra
  • Multidimensional arrays
  • Dot notation (in functions)
  • Missing values

Types

  • Tuples and named tuples
  • Structs and mutability
  • Unions
  • Abstract types and inheritance
  • Parametric types (generics) and inheritance
  • Value types
  • Type checking

Methods and constructors

  • Multiple dispatch
  • Writing methods for abstract/types
  • Constructors
  • Print/show methods
  • Operator overloading
  • Interfaces

Metaprogamming

  • Symbols
  • Eval
  • Expressions
  • Interpolation
  • Evaluation
  • Calling and building macros
  • Code generation
  • @generated functions

Local concurrency and parallelism

  • SIMD
  • Parallelism
  • Tasks & Channels
  • Asynchronous programming
  • Multithreading
  • Performance optimization

Tooling

  • Unit testing
  • Performance benchmarking
  • Profiling
  • Logging
  • Debugging: stack traces

I/O

  • Reading and writing text and binary files
  • Delimited files
  • Memory mapped
  • Downloading files

Requirements

There are no prerequisites to attending this course

  21 Hours
 

Testimonials

Related Courses

Java Advanced

  28 hours

Java Advanced - one day

  7 hours

Java Fundamentals for Android

  14 hours

Java fundamentals with Maven

  28 hours

Java Intermediate - one day

  7 hours

Java Persistence with Hibernate

  14 hours

Introduction to Programming

  35 hours

Clean Code

  14 hours

Linux Network Programming

  14 hours

Standard Java Security

  14 hours

Java and Web Application Security

  21 hours

Introduction to Julia

  14 hours

Machine Learning Algorithms in Julia

  21 hours

Statistics and Probabilistic Programming in Julia

  21 hours

Unit Testing with JUnit

  21 hours