Giới thiệu về Lập trình Julia
Hướng dẫn toàn diện về ngôn ngữ lập trình Julia, một ngôn ngữ động tổng quát hiệu suất cao, phù hợp lý tưởng cho tính toán khoa học và số liệu. Khóa học bao gồm mọi thứ từ cú pháp cơ bản và kiểu dữ liệu đến các chủ đề nâng cao như metaprogramming, khung dữ liệu, mạng lưới và giao tiếp với cơ sở dữ liệu.
Tổng quan khóa học
📚 Tóm tắt nội dung
Hướng dẫn toàn diện về ngôn ngữ lập trình Julia, một ngôn ngữ động tổng quát hiệu suất cao, phù hợp đặc biệt với tính toán khoa học và số liệu. Khóa học bao gồm mọi thứ từ cú pháp cơ bản và kiểu dữ liệu đến các chủ đề nâng cao như lập trình siêu cấu trúc, bảng dữ liệu, mạng lưới và giao tiếp với cơ sở dữ liệu.
Thành thạo tính toán khoa học hiệu suất cao với tốc độ của C và sự đơn giản của Python.
Tác giả: Tutorials Point (I) Pvt. Ltd.
Ghi nhận cảm ơn: Bản quyền 2020 bởi Tutorials Point (I) Pvt. Ltd. Tất cả nội dung và hình ảnh đều thuộc quyền sở hữu của Tutorials Point.
🎯 Mục tiêu học tập
- Định nghĩa ngôn ngữ lập trình Julia và xác định các tính năng cốt lõi cũng như bối cảnh lịch sử của nó.
- Phân biệt Julia với các ngôn ngữ tính toán kỹ thuật khác về mặt hiệu suất và cú pháp.
- Cài đặt và cấu hình thành công môi trường Julia và REPL trên Linux, Windows và macOS.
- Áp dụng các quy tắc phong cách của Julia trong đặt tên biến và sử dụng chú thích dòng đơn, dòng nhiều để tài liệu hóa mã nguồn.
- Xây dựng mảng với nhiều loại và chiều khác nhau bằng các đối tượng khoảng cách, nhà tạo, biểu thức hội tụ và các hàm tích hợp như
zeros()vàones(). - Thực hiện các tác vụ truy cập mảng nâng cao và thay đổi dữ liệu bằng logic boolean, từ khóa
endvà các hàm có dấu chấm than (ví dụ:push!,splice!). - Xây dựng và thao tác Tuple và Named Tuple, bao gồm việc sử dụng chúng như đối số từ khóa cho hàm.
- Nhận diện và quản lý hành vi tràn số nguyên và lỗi chia số bằng cách sử dụng các kiểu số chuẩn và số chính xác tùy ý.
- Phân tích biểu diễn số thực, bao gồm các giá trị âm dương, các giá trị đặc biệt (NaN, Inf) và epsilon máy tính.
- Thực hiện và kết hợp các toán tử số học, toán tử bit và toán tử cập nhật để thao tác với các kiểu dữ liệu.
Bài học 共 10 课时 · 预计 30.0h
Bài học
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.