- 程序員面試寶典-筆試環(huán)節(jié) 推薦度:
- 相關(guān)推薦
程序員面試寶典
對于即將成為程序員的應(yīng)屆生,首先需要考慮的是如何選擇一個適合自己職業(yè)起步的公司,以及根據(jù)自己感興趣的技術(shù)確立自己將來的職業(yè)方向。對于已經(jīng)身為程序員的跳槽人員,則需要考慮繼續(xù)走技術(shù)方向還是轉(zhuǎn)型到管理、銷售等方面。在求職面試過程中需要什么流程以及需要注意什么細(xì)節(jié)?
針對初級C/C++工程師職位
所謂的初級C/C++工程師,也就是剛剛踏入C/C++開發(fā)領(lǐng)域的初學(xué)者,或者說是有過很短經(jīng)歷的C/C++開發(fā)者。針對這個職位,下面將會介紹這個職位所需要掌握的知識體系。
面向?qū)ο蟮闹R: C++是一個面向?qū)ο蟮拈_發(fā)語言,因此熟悉面向?qū)ο髮W(xué)習(xí)C++很有必要。讀者要了解:什么是對象、什么是類、什么是封裝、什么是多態(tài)、什么是繼承、什么是抽象類、什么是接口等。讀者不但要了解概念,還需要知道這些概念是如何體現(xiàn)的。例如,類和對象有什么區(qū)別?類是如何封裝的?
C/C++語法:如果讀者已經(jīng)有了開發(fā)經(jīng)驗(yàn),那對于學(xué)習(xí)C/C++語法來講比較容易。如果你有C++等面向?qū)ο笳Z言的開發(fā)經(jīng)驗(yàn),那么只需簡單的翻看介紹C/C++的相關(guān)書籍。如果你是新手,那么就好好研究一本有關(guān)C/C++初級教程之類的書。學(xué)習(xí)了C/C++語法,加上面向?qū)ο蟮闹R,相信讀者可以寫出來比較好的C/C++代碼。如果再抽出時間熟悉一下C/C++編程規(guī)范,那么代碼的水平就會比較正規(guī)了。
數(shù)據(jù)庫知識:作為一名初級C++開發(fā)工程師,必須要清楚如何使用數(shù)據(jù)庫進(jìn)行一些簡單的開發(fā)工作,這是一些應(yīng)用軟件開發(fā)的基礎(chǔ)。
開發(fā)工具:讀者都知道,開發(fā)工具可以幫助更好更快地開發(fā),因此熟悉幾種開發(fā)工具很有必要。目前C/C++的開發(fā)工具比較流行的有Turbo C和Visual C++ 6.0等。
掌握了以上的知識,另外再加上少許的開發(fā)經(jīng)驗(yàn),就可以稱得上是一名基本合格的初級C/C++開發(fā)工程師。所有招聘公司對于初級程序員的要求并不高,但基礎(chǔ)知識一定要扎實(shí),如果你連開發(fā)工具都不會使用,那如何能迅速提高學(xué)習(xí)水平呢?
針對中、高級C/C++開發(fā)工程師職位
所謂的中、高級C/C++開發(fā)工程師,也就是有了幾年的開發(fā)經(jīng)驗(yàn)和實(shí)戰(zhàn)經(jīng)驗(yàn)的開發(fā)人員。針對這個職位,所需要掌握的知識和積累的經(jīng)驗(yàn)就必須是更上一層樓了。下面將介紹中、高級C/C++開發(fā)工程師所需要具備的知識體系:
1.C/C++知識方面
一般的程序員或許只需知道一些C/C++的語法結(jié)構(gòu)就可以應(yīng)付招聘了,但要成為C/C++高級工程師,必須要對C/C++做比較深入的研究。讀者應(yīng)該多研究指針、輸入輸出、內(nèi)存管理、數(shù)據(jù)結(jié)構(gòu)等。如果有可能,希望能夠?qū)/C++的所有模板和容器都進(jìn)行了解和學(xué)習(xí),這樣就可以發(fā)現(xiàn)很多程序開發(fā)中所需的功能,通過C/C++的類庫函數(shù)都可以實(shí)現(xiàn)。
2.設(shè)計模式
其實(shí)寫代碼是很容易的事情,相信讀者也有同感,但如何寫得好就比較難。這個“好”字包括代碼可重用性、可維護(hù)性、可擴(kuò)展性等。如何寫出好的代碼往往要借助一些設(shè)計模式。當(dāng)然長期的代碼經(jīng)驗(yàn)積累,也會使程序員形成自己的代碼風(fēng)格。相信高級程序員的代碼也比較符合代碼的可重用性、可維護(hù)性、可擴(kuò)展性,但既然前人已經(jīng)總結(jié)出了經(jīng)驗(yàn),那么就可以借鑒這些寶貴的經(jīng)驗(yàn)為自己的開發(fā)增添一些色彩。
3.熟悉主流數(shù)據(jù)庫
其實(shí)真正比較大的項目都是有設(shè)計人員專門設(shè)計數(shù)據(jù)庫的,但往往很多項目要求高級工程師也參與數(shù)據(jù)庫的設(shè)計以及SQL的編寫。為了更好的熟悉整個軟件系統(tǒng)的開發(fā)流程,建議讀者還是多了解一些主流數(shù)據(jù)庫,例如SQL Server和Oracle,多練習(xí)有關(guān)SQL和 存儲過程以及觸發(fā)器方面的知識。如果讀者不是“科班”出身,那么還需要補(bǔ)充一些數(shù)據(jù)庫原理方面的知識。
4.UML
在比較正規(guī)的開發(fā)團(tuán)隊中,UML是討論項目的交流工具,如果要想成為一名軟件工程師,那么至少要能看懂,如果要想成為一名高級工程師,那么要能通過它來描述自己對項目的理解,盡管這不是必須,但卻很重要。
【程序員面試寶典】相關(guān)文章:
Java程序員面試寶典12-14
面試寶潔寶典07-31
求職面試的傻瓜寶典11-18
面試寶典:換位思考談面試07-31
面試英語:面試寶典在校表現(xiàn)11-30
面試自我介紹寶典02-07
面試自我介紹寶典02-18
主管級人才的面試寶典02-18