Boost培訓(xùn)(項(xiàng)目班)
昆山軒轅高端IT培訓(xùn),C++ Boost現(xiàn)場項(xiàng)目班課程,通過對Boost幾個(gè)實(shí)用組件的學(xué)習(xí),掌握高吞吐量、低延遲的服務(wù)器端應(yīng)用開發(fā)的有效知識(shí),且通過最終項(xiàng)目的歷練,學(xué)員將對高性能服務(wù)器端應(yīng)用開發(fā)有一個(gè)清晰的認(rèn)識(shí),并能熟練使用Boost相關(guān)的類庫來開發(fā)服務(wù)器端應(yīng)用。
該課程的項(xiàng)目實(shí)戰(zhàn)部分時(shí)間,主要講解服務(wù)器端應(yīng)用的架構(gòu)、設(shè)計(jì),以及項(xiàng)目實(shí)現(xiàn)技術(shù)的運(yùn)用。
上課方式
現(xiàn)場班:全日制脫產(chǎn)學(xué)習(xí),歷時(shí)1個(gè)月,每月開班。
遠(yuǎn)程班:遠(yuǎn)程視頻學(xué)習(xí),學(xué)習(xí)時(shí)間自定,隨時(shí)開課。
課程大綱
C++ Boost強(qiáng)化班課程由以下模塊組成:
1 - C++ Boost
Boost是由C++標(biāo)準(zhǔn)委員會(huì)成員發(fā)起、眾多C++業(yè)界高人參與設(shè)計(jì)并實(shí)現(xiàn)的一個(gè)涉及面廣、質(zhì)量高且業(yè)已廣泛使用的C++標(biāo)準(zhǔn)后備庫,其中 TR1已經(jīng)被納入C++0x標(biāo)準(zhǔn)庫。不論從風(fēng)格和內(nèi)容組織上講,都可以認(rèn)為Boost項(xiàng)目是C++標(biāo)準(zhǔn)庫的延伸。截止到boost 1.43版本,boost項(xiàng)目擁有大約100個(gè)用途廣泛的實(shí)用庫。這部分課程將介紹服務(wù)器端開發(fā)所需要的幾個(gè)組件:
容器與數(shù)據(jù)結(jié)構(gòu)
介紹boost.any, boost.tuple, boost.array, boost.unordered(基于hash table,即hash_map和hash_set)等組件。
字符串算法和文字處理
介紹boost.lexical_cast, boost.format, boost.string_algo等組件。
正則表達(dá)式
正則表達(dá)式語法(perl正則表達(dá)式語法)的講解,boost.regex庫的使用。
智能指針
詳細(xì)介紹shared_ptr、scoped_ptr、weak_ptr等智能指針的使用。
函數(shù)對象相關(guān)
詳細(xì)介紹boost.bind, boost.mem_fn, boost.function, boost.ref, boost.lambda等組件。
Boost.Signals2 - 實(shí)現(xiàn)回調(diào)機(jī)制
Boost Signal2:線程安全的Signal-Slot機(jī)制 (Publishers → Signals/Subscribers → Slots),即Observer模式的實(shí)現(xiàn);
序列化
通過實(shí)例熟悉boost.serialization庫的用法。
日期與時(shí)間
boost.date_time庫的詳細(xì)介紹。
多線程
作為服務(wù)器端開發(fā)必不可少的內(nèi)容之一:多線程支持,boost提供了一個(gè)跨平臺(tái)的線程庫:boost.thread。
本單元的課程詳細(xì)介紹boost.thread。
網(wǎng)絡(luò)編程
boost.asio庫,通過對各類操作系統(tǒng)原生的socket API以及事件多路分離、異步I/O API的封裝,構(gòu)成了一個(gè)性能優(yōu)秀、便于編程的網(wǎng)絡(luò)編程框架,使復(fù)雜的網(wǎng)絡(luò)編程任務(wù)變得簡單、安全、并且高效。
本單元的課程通過一系列的示例來展示:通過asio來構(gòu)建TCP同步/異步服務(wù)器和客戶端、UDP同步/異步服務(wù)器和客戶端應(yīng)用,從而熟悉asio的接口和編程套路。
2 - 項(xiàng)目實(shí)戰(zhàn)
課程結(jié)束后,學(xué)員需基于C++、Boost實(shí)現(xiàn)以下項(xiàng)目:
課程資源
可獲取的課程資源見:教學(xué)資源。
http://xuanyuan-soft.cn