Liên hệ với chúng tôi

Đề cương khóa học

Giới thiệu về Hệ thống Nhúng và C++

  • Tổng quan về kiến trúc hệ thống nhúng
  • Thách thức của phát triển phần mềm nhúng
  • Sự phù hợp của C++ cho vi điều khiển và các nền tảng nhúng
  • Cân bằng giữa trừu tượng hóa, hiệu suất và các ràng buộc về tài nguyên

Môi trường Phát triển C++ Nhúng

  • Cài đặt chuỗi công cụ phát triển nhúng (toolchain)
  • Biên dịch, công cụ chẩn đoán lỗi (debugger) và hệ thống xây dựng (build systems)
  • Làm việc với thiết bị đích
  • Phát triển và triển khai ứng dụng nhúng

Lập trình Hướng đối tượng cho Hệ thống Nhúng

  • Nguyên tắc thiết kế hướng đối tượng
  • Lớp và đối tượng trong môi trường tài nguyên hạn chế
  • Nhốt hóa (Encapsulation) và thiết kế module
  • Áp dụng hiệu quả các kỹ thuật hướng đối tượng trong ứng dụng nhúng

Các Tính năng C++ Nâng cao cho Phát triển Nhúng

  • Kế thừa và đa hình
  • Hàm ảo và các cân nhắc về chi phí thời gian chạy (runtime overhead)
  • Template và việc tránh mở rộng mã không cần thiết
  • Hàm inline và tối ưu hiệu suất

Quản lý Bộ nhớ và Tối ưu Tài nguyên

  • Ràng buộc bộ nhớ trong hệ thống nhúng
  • Các cân nhắc về việc sử dụng stack và heap
  • Chiến lược quản lý bộ nhớ động
  • Tránh phân mảnh bộ nhớ và phình mã (code bloat)

Xử lý Lỗi và Các Cân nhắc về An toàn

  • Xử lý ngoại lệ trong môi trường nhúng
  • Thiết kế phần mềm đáng tin cậy và có thể dự đoán được
  • Kỹ thuật lập trình phòng thủ (defensive programming)
  • Các cân nhắc về C++ cho hệ thống quan trọng về an toàn

Thư viện Tiêu chuẩn C++ và Việc Sử dụng trong Hệ thống Nhúng

  • Chọn các tính năng thư viện tiêu chuẩn phù hợp
  • Tối thiểu hóa việc sử dụng tài nguyên
  • Các thư viện tùy chỉnh và các lựa chọn thay thế thân thiện với hệ thống nhúng
  • Viết mã hiệu quả và dễ bảo trì

Khởi động, Tương tác Phần cứng và Chẩn đoán Lỗi

  • Tuần tự khởi động ứng dụng nhúng
  • Các quy trình khởi tạo (initialisation routines)
  • Chẩn đoán lỗi các ứng dụng C++ trên phần cứng đích
  • Chẩn đoán các vấn đề về hiệu suất và thời gian chạy

Lập trình Thời gian thực và Hệ điều hành

  • Nền tảng của hệ thống thời gian thực
  • Làm việc với hệ điều hành thời gian thực (RTOS)
  • Điều phối tác vụ (task scheduling) và các ràng buộc về thời gian
  • Phát triển các ứng dụng phản hồi nhanh và tất định (deterministic)

Tương tác giữa C và C++

  • Tích hợp các cơ sở mã C và C++
  • Gọi thư viện C từ C++
  • Quản lý các dự án nhúng dùng nhiều ngôn ngữ
  • Chiến lược chuyển đổi từ C sang C++

Mô hình hóa Hướng đối tượng và UML

  • Áp dụng UML cho thiết kế phần mềm nhúng
  • Mô hình hóa các lớp và thành phần hệ thống
  • Chuyển đổi thiết kế thành mã nhúng hiệu quả
  • Cải thiện khả năng bảo trì thông qua thiết kế có cấu trúc

Xưởng Thực hành Ứng dụng C++ Nhúng

  • Phát triển một ứng dụng nhúng bằng C++
  • Áp dụng các kỹ thuật tối ưu hóa và an toàn
  • Kiểm thử và chẩn đoán lỗi trên thiết bị đích
  • Rà soát các thực hành tốt nhất và các bước tiếp theo

Yêu cầu

  • Hiểu biết chung về C++
 21 Giờ

Số người tham gia


Giá cho mỗi học viên

Đánh giá (2)

Các khóa học sắp tới

Các danh mục liên quan