這幾天參與了一個c語言和c 語言是不是應該算一種語言的討論,引發(fā)了寫沒寫過大項目的質疑。我先自我介紹一下,我03年參加工作,畢業(yè)后就進入了當時可能是最火的電信軟件開發(fā)行業(yè),開始寫c語言,unix下c語言。當時中國移動是最有錢的甲方了吧,主機都是IBM 小機,hp的也用,但是沒有IBM的數量多。aix、hp-ux都用過,直到linux。我當時做賬務處理,主要就是算月租,把話單變成賬單,對賬單做優(yōu)惠,收用戶的手機費。
有人說計費系統不算大項目,但是就我從業(yè)的這么多年看,至少不是小項目。我也沒再參與過更大的項目了。
轉回到軟件開發(fā),一個軟件項目,是由很多功能模塊構成的,有前臺,有中間件,有后臺,有接口,有主機監(jiān)控,有統計分析報表等等。每個大類里面,還要細分更多的子模塊,子功能等等。我想任何一個項目經理、系統架構師,都不可能把這樣的項目寫到一個main里面,代碼寫幾百萬行吧?按照項目管理的理論要求,項目要進行分解,形成wbs,切分成最長2周的工作任務包,那么我們肯定會把模塊細化,切分成細小的功能點,按照原來的軟件工程理論,這可能叫解耦吧?再按照中國軟件工程師的特點,獨立個體都是龍,捏合到一起往往1 1不一定大于2,所以拆分功能模塊,最合適的就是拆分到一個模塊一個人負責,與其他模塊交互,架構師或項目經理參與,雙方談好接口,這樣既保證了軟件的可靠性,又提高了工作效率,工程師離職后也不會對整個系統有大的影響。
寫具體的一個程序也是,因為我只會c語言,我就拿c語言舉例。寫一個程序,不是一個函數從頭寫到尾,寫幾萬行,那樣不叫程序,也不是一個成熟的有水平的程序員干的事。一個程序,也是由多個模塊、多個函數構成,每個函數最好不要超過1000行,一些功能關聯性高的,組成一個lib庫文件,lib庫可以有層級,平級直接沒有調用關系,高層級可以調用低層級,層級也不易太多,5級足以。這樣開發(fā),主程序中按照事物或數據的處理流程,調用相關的函數即可。編譯也方便,代碼復用率也高,出了問題也好查。
總之每個人寫程序的習慣都不一樣,選擇適合自己的就好。至于大項目,我真的覺得你可能就是參與了其中一塊而已,如果真有人純手擼500萬行代碼,請收下我的膝蓋,我對您頂禮膜拜,您永遠是我的神!
版權聲明:本文內容由互聯網用戶自發(fā)貢獻,該文觀點僅代表作者本人。本站僅提供信息存儲空間服務,不擁有所有權,不承擔相關法律責任。如發(fā)現本站有涉嫌抄襲侵權/違法違規(guī)的內容, 請發(fā)送郵件至 舉報,一經查實,本站將立刻刪除。