【轉寄好友】 【友善列印】 推到  推到
  【免費加入會員】   【學員須知】 【常見問題】
【課程名稱】 嵌入式物聯網IoT C 語言 / More Effective C++ 專業程式設計實戰進階應用班【適合嵌入式系統+單晶片+電控開發】
全新課程內容~
【課程代碼】 07C004
【上課時間】 3/13~6/8每週二五晚上19:00~22:00共66小時(4/3,4/6,5/1停課) 
【課程主旨】 由於嵌入式及ARM即時作業系統的盛行,其進入門檻就是--嵌入式C語言。本課程著重於程式設計實務之演練,講師除了輔以教學投影片,講解程式設計理論及程式語法,同時間會在課堂上實際現場撰寫(CODING)程式範例,讓學員清楚如何從無到有、清楚且完整的撰寫程式。整個課程內容不僅是C/C++程式技術,也包含業界需要的進階程式設計技巧。

C++ 多年來一直是流行的程式語言。嵌入式系統的微控制器技術(如ARM Cortex-M)在物聯網運用的最新發展, 如 ARM mbed platform, C++ 已是系統應用開發的首選語言。

本課程授課過程,實際在嵌入式系統的ARM Cortex M 的開發工具中教授 C++ 程式語言,且深度探索關鍵 C++ 的特性、程式編寫風格與對嵌入式系統資源和性能的影響。讓學員學到可以達到高效能且專業的嵌入式 C++ 程式專業能力。

本課程雖然專注於嵌入式系統的 C++ ,開發與執行環境是在 ARM Cortex M 系統,但課程同時適合任何希望學習 C++ 程式語言,以用在嵌入式Linux環境系統中開發應用程序的人。這課程是圍繞精心設計的練習編程和調試一個真正的嵌入式系統,以加強和挑戰學習的程度。

嵌入式系統的 C++ 針對的是電子硬件,軟件和片上系統工程師,他們需要獲得 C++ 語言的工作知識才能構建嵌入式系統。該課程也適用於 C++ 編程的一般介紹,特別是對於在電子相關業務領域工作或在數字電子學背景下工作的人員。
【課程目標】 1.培養正確完整的嵌入式C語言 程式設計概念與程式設計基本能力。
2.培養完整且符合業界之C語言韌體設計的能力。
3.增加學員使用C語言開發應用程式的能力。
4.培養完整且符合業界之物件導向分析設計的能力
5.增加學員使用C語言開發應用程式的能力
6.對程式設計有興趣者、或想學習資料結構與演算法者也適合此課程。
【課程特色】 1. 本課程著重於程式設計實務之演練,講師除了輔以教學投影片,講 解程式設計 理論及程式 語法;同時間會 在課堂上實際現場撰寫(CODING)程式範例,讓學員 清楚如何從無到有、清 楚且 完整的撰寫程式。
2. 整個課程內容不僅是C++程式技術,也包含業界需要的進階程式設計技巧
3. 上完此課程,您將從講師於課堂上完成的大量 LAB 範例,實際上學到程式撰寫 的實作技巧與思考方式。
1. 增加學員使用C語言、C++物件導向程式語言開發應用程式的能力
2. C++語言的語法和語義(包括C++11)
3. 物件導向建模,嵌入式C++軟體程式編寫的原理
4. 如何使用C++程式語言編寫嵌入式系統
5. 如何使用C++控制內存及映射周邊設備
6. 以C++編程嵌入式系統的最佳化
7. 進一步理解 C++ 相關重要機制的幕後運作
8. 深度探索 CRT (C Runtime Library) 及 virtual functions、 polymorphism、dynamic binding 幕後的機制
【修課條件】 1. 熟悉電腦基礎操作。
2. 適合沒有任何程式設計經驗者,從基礎到進階 完整的課程規劃。
【課程大綱】 【模組A】嵌入式物聯網IoT C 語言實戰班【適合嵌入式系統+單晶片+電控開發】
【課程大綱】:
1.C&C++Tools Introduction and Setup
2.C&C++式架構、常數(Constants)、資料型態/Alignment 與運算式、Endian- ness 與 Byte Ordering、嵌入式C Bitwise運算子及最佳化技術
3.C&C++基本輸入輸出(Input/Output)
4.流程控制敘述(Flow Control & Loop)、流程控制最佳化 技術
5.C&C++編譯器前置處理器(Preprocessor Compiler Control):#include、 #define/#undef、 #if/#else/#endif/#ifndef
6.指標(Pointer)、陣列(Array)、字串:字元陣列與字元 指標 (String: Character Array, Character Pointer)、stringify operator、 Token Concatenation Operator、 Memory Alignment LAB
7.指標陣列(Pointer and Array)進階用法:多重指標與多 維陣 列、指標陣列化 (Pointer to Array)
8.陣列指標化(Array to Pointer)
9.C&C++函式(Function):函數的定義及呼叫、函數的原型 宣告、參數的傳遞與預 設初值、C++函 數的Overload(同名異式、函數覆載)... unknown parameter的運用
10.Mixed C and Assembly( include Parameter passing )
11.static、volatile、const and typedef
12.結構型態(Structure Types):struct、enum、union Type、檔案IO處理(File I/O) 、 bitwise field structure
13.指標進階應用( 函式指標(Function pointer)、結構型 態與指標、void指標 (void pointer)

【模組B】嵌入式物聯網IoT More Effective C++ 專業程式設計實戰進階應用班【適合嵌入式系 統+單 晶片+電控開發】
【課程大綱】:
1. From C to C++ and C++11/從 C 到 C++/C++11
The features added to C by C++、 inline 、 C++ const 、 Enhanced enumerations 、 constant expressions 、 Overview of I/O streams 、 Function prototypes 、 Pass- by-reference 、 Default arguments 、 Function and operator overloading 、 String class、Learn the principles of object-oriented design
2.Explore in depth the Startup Code and C Runtime(CRT)/深度探索Startup Code及 C Runtime(CRT)
Stack/Heap init, I/O init, Environment Variables, main()的引數 argc & argv & envp , core of C/C++ Initialization, SystemInit[ main()之前執行的特定程式 ]
3.C++ Linkage and Storage
C++ Scope 、 Linkage 、 Linking C and C++ 、 Namespaces 、 C++ Static, automatic and dynamic storage 、 new and delete 、 Placement new 、 C++ Arrays and Pointers 、 Vectors
4.Classes and Objects/類別與物件
Object-Oriented modeling and abstraction 、 Information hiding 、 Abstract data types 、 Classes and objects 、 Public and private class members 、 Member functions 、 Scope resolution 、 this pointer
5.Constructors
Objects initialised and how to tidy up afterwards、 Constructors 、 Destructors 、 Delegating constructors 、 Copy constructors 、 Pointers and objects 、 Move semantics
6.Members and Friends
More features of C++ classes 、 Friends 、 Operator overloading 、 Overloading assignment 、 Move assignment 、 Memory fragmentation 、 Working with memory pools 、 Static members 、 Constant objects and members
7.Object-Oriented Modelling/物件導向建模
Class relationships 、 UML/Class and object diagrams 、 Association 、 Composition 、 Dependency 、 Implementing class relationships in C++ 、 Initialization of class members 、 Singleton class 、 Design Patterns(設計模式)
8.Inheritance/繼承
Derived classes 、 Inheritance 、 Protected members 、 Casting pointers 、 Order of initialization
9.Explore in depth the Virtual Functions and Polymorphism in depth/深度探索虛擬函 數及多型
Inheriting common behavior 、 Overriding methods 、 Virtual functions 、 Polymorphism 、 Late binding/Dynamic Binding動態繫結 、 Virtual destructors 、 Vptr/Vtable 、 Cost of virtual functions 、 Abstract base classes and pure virtual functions 、 Interface classes
10.Advance C++ Features/高級C++特性
User-defined conversions 、 Explicit functions 、 Defaulted and deleted behavior 、 Run-Time Type Identification 、 Type casts 、 Nested classes 、 Multiple Inheritance 、 Pointer-to-member 、Function wrapper
11.Templates/樣板
Function templates 、 Class templates 、 Template arguments 、 Template specialization 、 Dependent name and type lookup 、 Avoiding code bloat
12.Exception Handling and Efficiency Considerations/異常處理及效率的注意事項
Exception handling - definition and programming、Exception classes and hierarchies、User exceptions、C++ standard exceptions
【課程師資】 江義華老師(教學經驗超過20年以上)
學 歷:逢甲大學 資訊工程研究所、中正大學 資訊工程所博士班研究
經 歷:知名電腦叢書暢銷作家、大學電子資訊相關科系講師、自強工業基金會 講師、資策會講師、科技公 司技 術顧問、工研院專業講師
【上課時數】 66 小時
【上課地點】 台北分部(台北市博愛路80號3樓)
【主辦單位】 財團法人自強工業科學基金會
【相關課程】 07C004-1【模組A】嵌入式物聯網IoT C 語言實戰班
07C004-2【模組B】嵌入式物聯網IoT More Effective C++ 專業程式設計實戰進階應用班
【課程費用】 21500元 (超值優惠價格需送出報名表後,系統發出報名成功回函確認金額。)
【超值優惠】
  • VIP企業會員價:VIP企業會員可享優惠價格 (按我)
  • 會員優惠價: 會員於開課前七天完成報名繳費者可享會員優惠價 19800 元
  • 會員紅利折抵:本課程歡迎使用紅利折抵,最高可使用 200 點
【諮詢專線】 02-23113316分機2282 林小姐 hllin@tcfst.org.tw
【學員須知】 報名與繳退費方法常見問題與解決會員紅利積點活動辦法
【注意事項】
  1. 若遇不可預測之突發因素,基金會保有相關課程調整、取消及講師之變動權。
  2. 無紙化環境,輕鬆達到減碳救地球,即日起16小時以上課程結業證書改以電子方式提供。
  3. 使用VIP廠商優惠之學員,上課當日報到時須查核該公司識別證(相關證明資料)。
  4. 會員紅利折抵限以原價或會員優惠價再折抵,其他方案不適用。
  5. 課前請詳閱簡章之課程內容或利用課程諮詢電話。
  6. 課程嚴禁旁聽,亦不可攜眷參與。