Get in Touch

Course Outline

Introduction

  • What defines Julia as a programming language?
  • The origins, timeline, and creators of Julia.
  • Accessing Julia resources.

Development Environment

  • Overview of cloud-based development environments.
  • Terminal usage.
  • The REPL (Read-Eval-Print Loop).
  • Loading and installing packages.
  • Integrated Development Environments (IDE).

Fundamental types, variables and operators

  • Core data types.
  • Strings and interpolation techniques.
  • Variables.
  • Operators.

Variables, functions and operations

  • Variables and constants.
  • Declaring and invoking functions and lambdas.
  • Control flow, exception handling, and errors.

Scoping

  • Function scopes.
  • Global and local scoping rules.
  • Code blocks.
  • begin/end blocks.
  • let/end blocks.
  • Modules.
  • Data Structures.
  • Tuples.
  • Dictionaries.
  • Arrays.
  • Vectors.
  • Matrices & Linear Algebra.
  • Multidimensional arrays.
  • Dot notation (within functions).
  • Handling 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 or concrete types.
  • Constructors.
  • Print/show methods.
  • Operator overloading.
  • Interfaces.

Metaprogramming

  • 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 files.
  • Downloading files.

Requirements

There are no prerequisites for attending this course.

 21 Hours

Testimonials (1)

Upcoming Courses

Related Categories