1.什么是subversion,他與vss,cvs的區(qū)別在哪里,或者各有什么優(yōu)劣
2.怎么使用subversion,在個人電腦上安裝subversion并實踐之。
Subversion是一個免費的、開放源碼的版本控制系統(tǒng)。
就是說,Subversion管理隨時改動的文件和目錄。
文件樹被放在一個中央資料庫(Repository)中。
這個資料庫象一個普通的文件服務(wù)器,但是它可以記錄文件和目錄的每次改動。
它允許你恢復(fù)以前舊版本的數(shù)據(jù),或者檢查數(shù)據(jù)變化的歷史。
因此,很多人把版本控制系統(tǒng)看成某種“時光機”。
CVS只跟蹤單個文件的歷史,但Subversion實現(xiàn)了一個“虛擬”的版本化文件系統(tǒng),
可以跟蹤整個文件目錄樹隨時間的改變。文件和目錄都版本化了。
自己以前從未使用過VSS和SVN
1.什么是blog,你有過個人blog嗎
2.在個人電腦建立自己的blog并每天堅持使用
3.什么是團隊或者項目blog,他與個人blog的區(qū)別在哪里,怎么維護團隊的blog
blog的全名應(yīng)該是Web log,中文意思是“網(wǎng)絡(luò)日志”,后來縮寫為Blog.
Blog 以個人為主線 展示自我成果,眾人參與討論 以我為主,我的地盤聽我的
曾經(jīng)一段時間使用QQ空間寫日志.
團隊BLOG就是用來交流項目,如開發(fā)中碰到的問題和心得體會等
1.什么是wiki,關(guān)于程序項目的wiki你使用過哪些
2.wiki對你有幫助嗎,wiki與程序文檔的差別在哪里
3.怎么建立一個wiki,在你的個人電腦上建立wiki并實踐之
Wiki 以信息為主線 成千上萬個志愿者在修改成千上萬個文檔
大家都在表達自己的思維,自己的見解。
大家都在發(fā)布自己的所見,其他人補充
信息為主,是大家在分享、更新與創(chuàng)造
Wiki不在于熱鬧,而在于它的成果—— 一個不斷完善的知識庫。
享用這個知識庫的人要比為這個知識庫作貢獻的人多得多,
而且能引領(lǐng)一種巨大的商業(yè)價值,可以創(chuàng)造出與百度一樣偉大的互連網(wǎng)巨擎。
自從維基百科wikipedia被中國政府封了以后就很少用WIKI了..
1.什么是tdd,你使用過嗎
2.tdd的關(guān)鍵在哪里,跟傳統(tǒng)的單元測試相比,有什么優(yōu)越性
3.實踐下tdd
TDD(Test-Driven Development)
測試驅(qū)動開發(fā)方法
一種開發(fā)模型,先根據(jù)預(yù)期要求寫測試代碼,然后編寫系統(tǒng)代碼以讓寫好的測試通過。
最后再對代碼優(yōu)化。
是XP(Extreme Programming)思想的一種實現(xiàn)。
優(yōu)點:在任意一個開發(fā)節(jié)點都可以拿出一個可以使用,含少量bug并具一定功能的產(chǎn)品。
缺點:增加代碼量。測試代碼是系統(tǒng)代碼的兩倍或更多。
TDD = TFD + Refactoring
(TFD -- Test First Development)
1.什么是單元測試,你用過哪些單元測試的工具
2.他們的區(qū)別和好處各自有哪些,以至于你傾向于那一種
3.單元測試需要注意的地方在哪里
1.什么是單元測試,你用過哪些單元測試的工具
2.他們的區(qū)別和好處各自有哪些,以至于你傾向于那一種
3.單元測試需要注意的地方在哪里
單元測試(模塊測試)是開發(fā)者編寫的一小段代碼,用于檢驗被測代碼的一個很小的、
很明確的功能是否正確.通常而言,一個單元測試是用于判斷某個特定條件(或者場景)
下某個特定函數(shù)的行為
單元測試的優(yōu)點
1、它是一種驗證行為。
程序中的每一項功能都是測試來驗證它的正確性。它為以后的開發(fā)提供支緩。
就算是開發(fā)后期,我們也可以輕松的增加功能或更改程序結(jié)構(gòu),
而不用擔(dān)心這個過程中會破壞重要的東西。而且它為代碼的重構(gòu)提供了保障。
這樣,我們就可以更自由的對程序進行改進。
2、它是一種設(shè)計行為。
編寫單元測試將使我們從調(diào)用者觀察、思考。特別是先寫測試(test-first),
迫使我們把程序設(shè)計成易于調(diào)用和可測試的,即迫使我們解除軟件中的耦合。
3、它是一種編寫文檔的行為。
單元測試是一種無價的文檔,它是展示函數(shù)或類如何使用的最佳文檔。
這份文檔是可編譯、可運行的,并且它保持最新,永遠與代碼同步。
4、它具有回歸性。
自動化的單元測試避免了代碼出現(xiàn)回歸,
編寫完成之后,可以隨時隨地的快速運行測試。
單元測試工具知道CppUnit,不過沒有使用過
1.什么是編程規(guī)范,你傾向于什么樣的規(guī)范,他的好處在哪里
1.什么是mfc,你經(jīng)常使用哪些mfc的類,那么為什么很多人不主張使用mfc
1.什么是頭文件依賴,你注意過這個問題嗎,你注意過編譯時間嗎,你怎么改進編譯時間
1.什么是面向?qū)ο螅阍谀姆矫嬗眠^面向?qū)ο螅瑤砹耸裁春锰帲钟惺裁幢撞?br>1.什么是接口編程,com,他帶來了什么好處,適用于什么地方
1.什么是設(shè)計模式,使用設(shè)計模式有什么好處,列舉你使用過的設(shè)計模式
編程規(guī)范就是為了便于自己和他人閱讀理解源程序,而制定的一個規(guī)范
編程規(guī)范只是一個規(guī)范,也可以不遵守,但是要做一個有良好編程風(fēng)格的程序員,
就一定要遵守編程規(guī)范,不僅方便自己以后的閱讀,也方便與其他程序員的交流
個人現(xiàn)在喜歡這種,如函數(shù)接口,動賓結(jié)構(gòu)的postMessage()動詞第一個小寫,名詞第一個大寫
MFC(Microsoft Foundation Class)
主要使用類:CWnd,CDialog,CView,CDC,CGdiObject,CList,CStringList,
CPoint,CRect,CSize,CString,CTime
很多人不主張使用MFC,因為里面的很多方法是Microsoft自己實現(xiàn),有些不是使用標準
庫,效率比較低
頭文件依賴問題,在*.h文件中使用前向聲明(如class A;),盡量不要把其它頭文件包含
在使用的頭中,可以把它放在CPP文件上面.這樣可以加快編譯時間
面向?qū)ο笫侵福覀兛紤]問題時,以對象為單位,考慮它的屬性及方法
面向過程是指,我們考慮問題時,以一個具體的流程(事務(wù)過程)為單位,考慮它的實現(xiàn)
設(shè)計模式就是解決某一類問題的方法論。把解決某類問題的方法總結(jié)歸納到理論高度,
那就是設(shè)計模式模式
因為模式是一種指導(dǎo),在一個良好的指導(dǎo)下,有助于你完成任務(wù),
有助于你作出一個優(yōu)良的設(shè)計方案,達到事半功倍的效果。
而且會得到解決問題的最佳辦法。
自己曾經(jīng)使用過Factory工廠模式,Singleton單件模式,Prototype原型模式