建設(shè)工程教育網(wǎng) > 建筑文苑 > 其他相關(guān) > 正文
2006-12-15 16:02 【大 中 小】【打印】【我要糾錯(cuò)】
在項(xiàng)目開發(fā)的過(guò)程中,經(jīng)常會(huì)遇到市場(chǎng)人員急命的催,開發(fā)人員玩命的寫,但還是趕不上進(jìn)度,每個(gè)人都感覺(jué)很累,卻沒(méi)有太大效果。 怎么辦呢?我想這種情況是可以避免的,退一步說(shuō),最起碼應(yīng)該不會(huì)像這個(gè)樣子。這里總結(jié)一下自己的一些心得和體會(huì):
1.經(jīng)常總結(jié)完成模塊中共性的代碼,封裝成方法或組件,方便以后調(diào)用。
比如,數(shù)據(jù)訪問(wèn),XML配置操作,分頁(yè)控件,數(shù)據(jù)校驗(yàn),加密等等我都總結(jié)成一個(gè)個(gè)獨(dú)立的模塊或組件,使用的時(shí)候拿來(lái)調(diào)用就行了,為項(xiàng)目爭(zhēng)取了很多時(shí)間,也留出更多的時(shí)間來(lái)想業(yè)務(wù)邏輯的處理。
2.復(fù)雜業(yè)務(wù)簡(jiǎn)單化
對(duì)一些復(fù)雜的業(yè)務(wù)系統(tǒng),可以通過(guò)抽象的方式,來(lái)簡(jiǎn)單化,把復(fù)雜的問(wèn)題抽象成簡(jiǎn)單的模型,變成人們?nèi)菀桌斫獾臉I(yè)務(wù)模型。能用簡(jiǎn)單的方式解決的問(wèn)題我們?yōu)槭裁匆愕哪敲磸?fù)雜。我們開發(fā)軟件就是來(lái)解決問(wèn)題的,不是來(lái)做秀的。
3.代碼簡(jiǎn)潔,通讀易懂。特別對(duì)團(tuán)隊(duì)開發(fā)很是重要。
我不知道有些程序員怎么了,個(gè)人英雄主義很重,總是把代碼寫的稀奇古怪,這樣好像來(lái)表示自己的不同凡響,技術(shù)水平高。其實(shí),我認(rèn)為作為現(xiàn)在的團(tuán)隊(duì)開發(fā),這樣會(huì)給企業(yè)帶來(lái)很大的隱患。同時(shí)我個(gè)人覺(jué)得這也不是一個(gè)好的編碼習(xí)慣,因?yàn)閷懘a也是人一種表達(dá)思想的方式,用最少的話和最精辟的詞表達(dá)出人們?nèi)菀桌斫獾膯?wèn)題才是最厲害的。就像人穿衣服注意整潔一樣,再高貴的衣服,如果不注意整潔,給人的感覺(jué)一樣很糟糕的。
4.注意高內(nèi)聚和低耦合。
減少模塊間的耦合度,抽離出通用的模塊,每個(gè)模塊就像一塊積木。這樣做一個(gè)系統(tǒng)時(shí),如果能充分利用這些資源,會(huì)起到事半功倍的效果。省時(shí)省力。我總結(jié)的角色權(quán)限管理摸塊就是這樣,用到了很多項(xiàng)目,也確實(shí)為我節(jié)省了不少時(shí)間,也可以說(shuō)為公司創(chuàng)造了不少效益。
5.做好架構(gòu)設(shè)計(jì)。
好的架構(gòu)會(huì)給開發(fā)人員一個(gè)明確的導(dǎo)向,且不會(huì)讓程序員作太多的無(wú)用功和重復(fù)勞動(dòng)和返工。并且好的可擴(kuò)展性設(shè)計(jì)會(huì)對(duì)項(xiàng)目善變的需求有好的應(yīng)對(duì)能力。
6.采用OOP,分層開發(fā)等經(jīng)典的開發(fā)模式,從一定程度上減少重復(fù),增強(qiáng)擴(kuò)展性。
7.盡量采用成熟可靠的技術(shù)。
這句話我想有兩種理解,
一:采用最合適的技術(shù),而不是選擇“最先進(jìn)”的。不能因?yàn)椤坝眉夹g(shù)”而“用技術(shù)”。它給項(xiàng)目帶來(lái)的后果是不可估量的,風(fēng)險(xiǎn)也是很大的,以至甚至延期等等。當(dāng)然學(xué)習(xí)好它還是很好的,但是在做商業(yè)應(yīng)用方面還要考慮好。
二:去用那些已經(jīng)存在的成熟的模式或代碼,不要自己再去“造車”了。一來(lái)縮短開發(fā)周期,二來(lái)降低風(fēng)險(xiǎn)。所以,我們平常開發(fā)時(shí),還是要有一定的“拿來(lái)主義”,這沒(méi)什么不好的,相反,應(yīng)該是一個(gè)明智的選擇。
8.學(xué)會(huì)改變世界。
寫了很久的程序,養(yǎng)成一個(gè)習(xí)慣,就是堅(jiān)持用盡量少的代碼實(shí)現(xiàn)盡量多的事情,所以一般能共用的代碼,我就寫成共用的,這樣基本上就減少了不少的代碼量。另外,通過(guò)一定的抽象過(guò)程,本人已經(jīng)總結(jié)出一定規(guī)律,并成功的開發(fā)出一個(gè).Net(C#)代碼自動(dòng)生成器工具,基本上我嘗試了一下,一個(gè)有二十幾個(gè)表的系統(tǒng),二十分鐘內(nèi),我就完成了三層架構(gòu)的構(gòu)建,生成了80%的代碼,這個(gè)過(guò)程如果純手工的話,我覺(jué)得效率高的也要一兩周吧。人類的進(jìn)步是從使用工具開始的,我們要進(jìn)步也比須制造工具來(lái)替代人工,改變世界,其實(shí)我們的生活可以很精彩。
項(xiàng)目管理網(wǎng)
1、凡本網(wǎng)注明“來(lái)源:建設(shè)工程教育網(wǎng)”的所有作品,版權(quán)均屬建設(shè)工程教育網(wǎng)所有,未經(jīng)本網(wǎng)授權(quán)不得轉(zhuǎn)載、鏈接、轉(zhuǎn)貼或以其他方式使用;已經(jīng)本網(wǎng)授權(quán)的,應(yīng)在授權(quán)范圍內(nèi)使用,且必須注明“來(lái)源:建設(shè)工程教育網(wǎng)”。違反上述聲明者,本網(wǎng)將追究其法律責(zé)任。
2、本網(wǎng)部分資料為網(wǎng)上搜集轉(zhuǎn)載,均盡力標(biāo)明作者和出處。對(duì)于本網(wǎng)刊載作品涉及版權(quán)等問(wèn)題的,請(qǐng)作者與本網(wǎng)站聯(lián)系,本網(wǎng)站核實(shí)確認(rèn)后會(huì)盡快予以處理。
本網(wǎng)轉(zhuǎn)載之作品,并不意味著認(rèn)同該作品的觀點(diǎn)或真實(shí)性。如其他媒體、網(wǎng)站或個(gè)人轉(zhuǎn)載使用,請(qǐng)與著作權(quán)人聯(lián)系,并自負(fù)法律責(zé)任。
3、本網(wǎng)站歡迎積極投稿。