序
創(chuàng)新互聯(lián)是一家專(zhuān)注于網(wǎng)站建設(shè)、網(wǎng)站設(shè)計(jì)與策劃設(shè)計(jì),吉林網(wǎng)站建設(shè)哪家好?創(chuàng)新互聯(lián)做網(wǎng)站,專(zhuān)注于網(wǎng)站建設(shè)10余年,網(wǎng)設(shè)計(jì)領(lǐng)域的專(zhuān)業(yè)建站公司;建站業(yè)務(wù)涵蓋:吉林等地區(qū)。吉林做網(wǎng)站價(jià)格咨詢(xún):18980820575
忘了之前在哪看到的一篇文章了,文章名字是《黑馬程序員:3分鐘帶你讀懂C/C++學(xué)習(xí)路線》;今天翻看之前的文檔記錄,看到了它,聲明:以下內(nèi)容非原創(chuàng)
隨著互聯(lián)網(wǎng)及互聯(lián)網(wǎng)+深入蓬勃的發(fā)展,經(jīng)過(guò)40余年的時(shí)間洗禮,C/C++儼然已成為一門(mén)貴族語(yǔ)言,出色的性能使之成為高級(jí)語(yǔ)言中的性能王者。而在今天,它又扮演著什么樣重要的角色呢?請(qǐng)往下看:
后端服務(wù)器,移動(dòng)互聯(lián)網(wǎng)后端,經(jīng)典Windows界面開(kāi)發(fā),移動(dòng)互聯(lián)網(wǎng)端界面開(kāi)發(fā),跨平臺(tái)界面開(kāi)發(fā),圖形分析,系統(tǒng)架構(gòu),應(yīng)用設(shè)計(jì),還有現(xiàn)在最為流行的分布架構(gòu)等一些新的技術(shù)領(lǐng)域。
這么牛的語(yǔ)言,你是不是想知道怎樣學(xué)習(xí)和掌握它呢?接下來(lái)請(qǐng)看經(jīng)過(guò)小編整理過(guò)C/C++工程師必備知識(shí)的思維導(dǎo)圖。
一、初級(jí)入門(mén)階段
在入門(mén)之初,首先要做的是通過(guò)C/C++語(yǔ)言的學(xué)習(xí)培養(yǎng)編程思維和動(dòng)手能力,深刻理解面向過(guò)程和面向?qū)ο蟮乃枷敕椒?。這個(gè)階段你需要學(xué)習(xí):
① C語(yǔ)言
數(shù)據(jù)類(lèi)型、變量、內(nèi)存布局、指針基礎(chǔ);
字符串、一維數(shù)組、二維數(shù)組;
一級(jí)指針,二級(jí)指針,三級(jí)指針,N級(jí)指針概念,指針數(shù)組和數(shù)組指針;
結(jié)構(gòu)體、文件的使用;
動(dòng)態(tài)庫(kù)的封裝和設(shè)計(jì);
函數(shù)指針回調(diào)函數(shù)。
② C++語(yǔ)言
面向?qū)ο缶幊趟枷耄?/p>
類(lèi)的封裝,構(gòu)造和析構(gòu)、靜態(tài)成員、對(duì)象管理;
類(lèi)的構(gòu)造(有參構(gòu)造函數(shù)、無(wú)參構(gòu)造、拷貝構(gòu)造、默認(rèn)構(gòu)造函數(shù))和析構(gòu);
對(duì)象動(dòng)態(tài)管理、友元函數(shù)、友元類(lèi)、操作符重載;
C++編譯器對(duì)象管理模型分析;
類(lèi)對(duì)象的動(dòng)態(tài)管理(new/delete);
友元函數(shù)和友元類(lèi);
運(yùn)算符重載(一元運(yùn)算符、二元運(yùn)算符、運(yùn)算符重載難點(diǎn)、項(xiàng)目開(kāi)發(fā)中的運(yùn)算符重載);
類(lèi)的繼承、多繼承及其二義性、虛繼承;
多態(tài)(概念、意義、原理剖析、多態(tài)案例);
虛函數(shù)、純虛函數(shù)、抽象類(lèi)(面向抽象類(lèi)編程思想案例);
函數(shù)模板、類(lèi)模板,模板的繼承;
C++類(lèi)型轉(zhuǎn)換;
C++輸入輸出流(標(biāo)準(zhǔn)I/O 文件I/O 字符流I/O);
C++異常處理(異常機(jī)制、異常類(lèi)型、異常變量、異常層次結(jié)構(gòu)、標(biāo)準(zhǔn)異常庫(kù));
二、C/C++開(kāi)發(fā)進(jìn)階
這一階段的目標(biāo)才是達(dá)到C/C++軟件工程師開(kāi)發(fā)行業(yè)的基本要求,這個(gè)階段是我們走向C/C++開(kāi)發(fā)的進(jìn)階之路,更是一個(gè)讓自己找份薪水比較體面的工作的籌碼。
如果在此部分遇到不懂的或者沒(méi)有見(jiàn)過(guò)的知識(shí)點(diǎn)和名詞,可先將本文收藏,供以后細(xì)細(xì)研讀。
① C++進(jìn)階之STL
STL = Standard Template Library,即標(biāo)準(zhǔn)模板庫(kù)。這是提高開(kāi)發(fā)效率的極品工具。通過(guò)學(xué)習(xí)此階段,應(yīng)掌握泛型編程技巧,理解容器類(lèi)在C++語(yǔ)言中的應(yīng)用模式,以及熟練掌握全部STL類(lèi)的使用方法。
② C++進(jìn)階之設(shè)計(jì)模式
決定一個(gè)項(xiàng)目成敗最重要的因素是項(xiàng)目總體的設(shè)計(jì),通過(guò)本階段的學(xué)習(xí),可掌握面向?qū)ο缶幊讨兄匾囊画h(huán),是編碼前建模的技巧所在。單例模式;工廠模式;代理模式;迭代模式等,這些都是你要掌握的哦。
③ C++進(jìn)階之?dāng)?shù)據(jù)結(jié)構(gòu)基礎(chǔ)
這是所有編程語(yǔ)言中最應(yīng)該學(xué)習(xí)的部分,程序組成的基礎(chǔ)之一。
順序存儲(chǔ)、鏈?zhǔn)酱鎯?chǔ)、循環(huán)鏈表;
雙向鏈表、棧(順序和鏈?zhǔn)?、隊(duì)列(順序和鏈?zhǔn)?;
棧的應(yīng)用、樹(shù)基本概念及遍歷、二叉樹(shù);
排序算法、并歸算法、選擇、插入、快速、希爾。
④ C++進(jìn)階之UI界面開(kāi)發(fā)
掌握QT類(lèi)庫(kù)構(gòu)架,圖形界面開(kāi)發(fā)模型;
掌握QT開(kāi)發(fā)技巧,消息機(jī)制,圖形處理;
掌握QT網(wǎng)絡(luò)編程,UDP,TCP使用方式;
掌握QT文件處理方式,序列化;
掌握QT在windows,linux,ios,android不同平臺(tái)下的移植技術(shù)。
⑤ C++進(jìn)階之Unix/Linux網(wǎng)絡(luò)服務(wù)器
掌握Unix/Linux平臺(tái)開(kāi)發(fā)方式;
熟練使用系統(tǒng)調(diào)用;
熟練Unix/Linux內(nèi)存管理,進(jìn)程,線程調(diào)度;
熟悉網(wǎng)絡(luò)服務(wù)器開(kāi)發(fā)方式,熟練編寫(xiě)TCP,UCP網(wǎng)絡(luò)服務(wù)程序;
掌握同步/異步IO模型在網(wǎng)絡(luò)編程中的使用方式。
⑥ C++進(jìn)階之?dāng)?shù)據(jù)庫(kù)開(kāi)發(fā)
掌握SQL語(yǔ)言的實(shí)用技巧。Oracle,MySQL數(shù)據(jù)庫(kù)的使用方式。
如果你能熟練掌握以上列出的技能,具備解決復(fù)雜問(wèn)題和技術(shù)難點(diǎn)的能力,而且你能獨(dú)立開(kāi)發(fā)一些比較復(fù)雜的功能模塊,那么很榮幸地告訴你,你已經(jīng)達(dá)到中級(jí)水平,薪資過(guò)萬(wàn)對(duì)你來(lái)說(shuō)簡(jiǎn)直是小菜一碟。