Retour aux cours
AI015 Professionnel

Introduction à la programmation Julia

Un guide complet sur le langage de programmation Julia, un langage dynamique généraliste à haute performance particulièrement adapté au calcul scientifique et numérique. Ce cours couvre tout, du syntaxe de base et des types de données aux sujets avancés tels que la métaprogrammation, les cadres de données, le réseau et l'interaction avec les bases de données.

4.9
30.0h
913 étudiants
10 lessons
0 j'aime
Intelligence Artificielle
Commencer à apprendre

Aperçu du cours

📚 Résumé du contenu

Un guide complet sur le langage de programmation Julia, un langage dynamique généraliste à haute performance particulièrement adapté au calcul scientifique et numérique. Ce cours couvre tout, des bases de la syntaxe et des types de données aux sujets avancés tels que la métaprogrammation, les cadres de données (data frames), le réseau et l'interface avec les bases de données.

Maîtrisez le calcul scientifique à haute performance avec la vitesse du C et la simplicité du Python.

Auteur : Tutorials Point (I) Pvt. Ltd.

Remerciements : Copyright 2020 par Tutorials Point (I) Pvt. Ltd. Tout le contenu et les graphiques sont la propriété de Tutorials Point.

🎯 Objectifs d'apprentissage

  1. Définir le langage de programmation Julia et identifier ses fonctionnalités essentielles ainsi que son contexte historique.
  2. Différencier Julia des autres langages de calcul technique en termes de performance et de syntaxe.
  3. Installer et configurer correctement l'environnement Julia et l'interpréteur REPL sous Linux, Windows et macOS.
  4. Appliquer les conventions stylistiques de Julia pour la dénomination des variables et utiliser les commentaires simples ou multilignes pour la documentation du code.
  5. Créer des tableaux de divers types et dimensions à l'aide d'objets plages, de générateurs, de compréhensions et de fonctions intégrées comme zeros() et ones().
  6. Exécuter des opérations avancées d'indexation et de mutation de tableaux en utilisant la logique booléenne, le mot-clé end et les fonctions marquées d'un point d'exclamation (par exemple push!, splice!).
  7. Construire et manipuler des tuples et des tuples nommés, y compris leur utilisation comme arguments clés de fonction.
  8. Identifier et gérer les comportements de dépassement d'entier et les erreurs de division en utilisant des types standard et à précision arbitraire.
  9. Analyser les représentations en virgule flottante, y compris les zéros signés, les valeurs spéciales (NaN, Inf) et l'epsilon machine.
  10. Exécuter et combiner des opérateurs arithmétiques, binaires et mis à jour pour manipuler les types de données.

Leçons

Lesson

This lesson introduces the Julia programming language and its ability to solve the "two-language problem" by providing high-level, readable syntax that executes with the speed of low-level languages. Students will learn how to set up their development environment and understand how Julia’s LLVM-based compilation eliminates the need to rewrite prototypes for production.

This lesson introduces the fundamentals of Julia programming, focusing on variable naming conventions, type inference, and the use of snake_case. Students will also learn how to manage the Julia environment, execute scripts using the include() function, and implement proper documentation standards through single and multi-line comments.

This lesson introduces tuples in Julia as fixed-length, immutable collections that ensure data integrity by preventing accidental modifications. Students will learn how to define and index tuples, utilize tuple unpacking, and leverage their performance advantages for storing fixed-size data.

This lesson introduces the landscape of operators in Julia, covering arithmetic, bitwise, and logical operations, as well as the use of compound updating assignments. Students will learn how to apply these operators effectively while managing type-specific behaviors and operator precedence to solve computational problems.

This lesson explores the distinction between Julia’s 32-bit Char primitives and immutable UTF-8 Strings, emphasizing their unique type hierarchies and memory handling. Students will learn to perform character arithmetic, implement functional transformations, and optimize text processing through efficient byte-based indexing and SubString views.

This lesson explores flow control in Julia, focusing on implementing complex conditional logic, iterative loops, and key-value data structures. Students will also learn to leverage Julia's multiple dispatch system and the Dates module to manage and manipulate temporal data types efficiently.

This lesson explores the Julia Dates module, focusing on the hierarchical management of temporal data through Date, Time, and DateTime types. Students will learn to perform precise calendar arithmetic, utilize stream-based I/O, and apply metaprogramming techniques to build flexible, reusable code.

This lesson introduces the Julia visualization ecosystem, focusing on the Plots.jl metapackage that provides a unified syntax for various rendering backends. Students will learn how to switch between backends like GR and UnicodePlots to optimize workflows for both high-resolution graphical output and terminal-based data analysis.

This lesson explores the four pillars of scientific computing in Julia: high-performance data handling, statistical rigor, modular architecture, and versatile graphics. Students will learn how to integrate diverse data streams, apply weighted statistical metrics, and utilize various libraries for both low-level and declarative data visualization.

This lesson explores Julia’s networking and database ecosystem, focusing on using the Multiple Dispatch paradigm to interface with high-performance tools like Gaston and PGFPlots for data visualization and reporting. It also introduces practical byte-stream communication, contrasting the reliability of TCP and Named Pipes with the speed-focused nature of UDP.