???????
需求調(diào)研、總體設(shè)計、開發(fā)過程、代碼結(jié)果、運(yùn)行效率,也許這些是作為程序開發(fā)的我們所關(guān)注的問題。其實就這個過程中的每一步而言,都有向優(yōu)雅方向努力的需要,也許最終會形成一個優(yōu)雅的軟件項目工作方式。呵呵。。扯遠(yuǎn)了,其實作為開發(fā)人員我們最為關(guān)心的也許就是優(yōu)雅的系統(tǒng)框架以及代碼過程。優(yōu)雅二字,說起來很
easy
,每個人隨口就可以說出來,但是真正的要去做到這兩個字實在是需要我們投入相當(dāng)?shù)牡臅r間與精力去做這件事情。
??????
做開發(fā)已經(jīng)好幾年了,自己也有很多的想法。雖然自己在過去的一年半時間里面離
開發(fā)逐漸遠(yuǎn)去,但是回過頭來我依然覺得自己需要、也希望能投入到一線的開發(fā)過程當(dāng)中。所以這段時間也在研究一些自己感興趣的內(nèi)容,也是希望這些內(nèi)容以后能與小組中其他人的興趣進(jìn)行一些結(jié)合,碰撞出更多更絢麗的火花來。談到開發(fā),談到優(yōu)雅開發(fā),我最近也是在琢磨“優(yōu)雅”這兩個字
?????
。。。怎樣才能讓我們真正的向這個方向發(fā)展呢?我覺得有那么幾點內(nèi)容是我們需要首先做到的:(裝次文人,所以用兩句古語來進(jìn)行評點好了)
????
所有得軟件系統(tǒng)在設(shè)計系統(tǒng)框架得時候都必須能將未來做出更加充分得預(yù)測,同時需要在系統(tǒng)框架上做更多得工作使得系統(tǒng)得兼容性更好。說的很是空洞,其實簡單來看就是在系統(tǒng)框架設(shè)計上必須要符合一種靈活部署同時盡可能多的去滿足已知的軟件標(biāo)準(zhǔn)。確實,我們無法預(yù)知技術(shù)在
5
年,
10
年后會是什么樣子,甚至
3
年后會是個什么樣子我們都無法預(yù)測。
Ajax
基礎(chǔ)從
05
年年底開始橫掃互聯(lián)網(wǎng),但是到了
06
年
12
月就開始出現(xiàn)“
Ajax
只是一種瘦客戶端向胖客戶端發(fā)展過程中的一個過渡技術(shù)”的聲音(對此,本人不置可否)。我不是大師,所以我無法知道這種過渡技術(shù)會有多久的生命力,但是我一直認(rèn)為軟件系統(tǒng)中表示層技術(shù)更新的周期應(yīng)該就是
3
年左右。所以我們仔考慮軟件核心系統(tǒng)的時候就必須去考慮如何讓軟件架構(gòu)更為合理,讓軟件可以有更為優(yōu)秀的生命力。
為了讓軟件能有更加強(qiáng)大的生命力,同時有更加良好的兼容性(永遠(yuǎn)不要忘記,這是
一個合作的年代,沒有人說可以一個人獨霸武林的),我們在整個軟件系統(tǒng)的框架設(shè)計上就必須提供更加靈活的方式。這些要求我們的系統(tǒng)必須采用標(biāo)準(zhǔn)的信息、數(shù)據(jù)交換技術(shù)來實現(xiàn),而不能僅僅只是支持我們自己的技術(shù)規(guī)范,我們需要支持的是一種標(biāo)準(zhǔn)的軟件規(guī)范。對于這些要求,我個人覺得軟件行業(yè)一直提倡的“構(gòu)件”這個概念比較優(yōu)越。按軟件構(gòu)件提出的設(shè)想,我們最終的軟件就應(yīng)該和
Windows
一樣的玩法:所有符合規(guī)范的軟件系統(tǒng)都能在一個平臺上進(jìn)行簡單的安裝、配置然后完成其具體應(yīng)用的實現(xiàn)。構(gòu)件技術(shù)的使用可以有效降低重復(fù)投資率,抽取相關(guān)應(yīng)用的共同點(肯定會有,沒有就繼續(xù)找,沒有共同點憑什么叫做“相關(guān)應(yīng)用”?),建立基礎(chǔ)構(gòu)建安裝管理平臺,然后在平臺上真正的實現(xiàn)軟件的即插即用,甚至是新的標(biāo)準(zhǔn)的兼容協(xié)議的即插即用。。。
?????
其實就支持標(biāo)準(zhǔn)規(guī)范這一點而言,我個人以前意識很弱,甚至說根本沒有這么去做,所以今天寫這文字的時候很是汗顏呀。。。
???
?
作為軟件系統(tǒng),從本質(zhì)而言,都是出于草根滴。如果在這種背景下你無法去做到一步一個腳印,做到博觀約取利用多方面的資源,踏踏實實,這個軟件系統(tǒng)最終很難成功。也正式這一點就對我們提出一個核心問題:堅持一下,再挖一米就是油:)
????
作為
java
程序員,很多人都會郁悶,郁悶的是
java
的開源社區(qū)太過于活躍了,總是不停的有新的內(nèi)容需要你去學(xué)習(xí),總有一些新的想法讓你感到震撼(震撼的結(jié)果就是--去學(xué))。但是就是因為開源社區(qū)的活躍實際上給我們提供了更好的一種開發(fā)模式,讓我們不需要去重復(fù)的創(chuàng)作一些已經(jīng)存在的解決方式,讓我們能夠以最大限度的來進(jìn)行根據(jù)需要開發(fā)還沒有實現(xiàn)的內(nèi)容,或者是進(jìn)行應(yīng)用的整合達(dá)到目的。做到這些,我們需要不斷的更新自己的知識庫,不斷的再
java
社區(qū)攝取能量。(當(dāng)然,社區(qū)也需要我們不斷的貢獻(xiàn)才能獲取其生命力)多看,多了解,也許很多東西你現(xiàn)在用不上,但就像技術(shù)趨勢一樣你無法預(yù)知今后你是否會用上,只有你有了一個容納很多概念的索引庫,才能在你想要實現(xiàn)應(yīng)用時將這些概念融入到你的工作,捏開發(fā)之中。。。正所謂:磨刀不誤砍柴功是也
?????
所以,作為程序員,作為
java
程序員,你就必須要做到“博觀約取,厚積薄發(fā)”!這是你的工作對你的要求。
?
?
???? “
優(yōu)雅”很難,但是我們都可以盡力去完成自己能做到的那一步。結(jié)合標(biāo)準(zhǔn)以及已有技術(shù)(框架、功能等),我們能再提高自己的代碼效率的同時讓自己的軟件變得更加生動。程序員只有再軟件讓自己感到滿足的時候這個軟件才是最好的,永遠(yuǎn)都要想著怎么把需求引導(dǎo)到自己感興趣的內(nèi)容之上!