程序員一般都有個追求完美的“毛病”。這個問題記得以前也分析過,我就有這個毛病。
這兩天發(fā)現(xiàn)自己又要范這個毛病了,忽然間想到,趕緊坐下來好好想想,提醒一下自己。
具體情況是這樣的。這幾天,答應朋友做一個網(wǎng)站,心里想著做的好一些,忽然間就想到借鑒一下petshop這個范例,于是開始研究起petshop來,這一研究發(fā)現(xiàn),里面的學問大著呢,可不是一天兩天就能搞明白的。但據(jù)說petshop是個很優(yōu)秀的范例,于是心里就在發(fā)狠,非把它搞清楚不可。然而,我的目的是什么?做一個網(wǎng)站。誠然,petshop非常完美,有許多值得學習借鑒之處,但對于我的網(wǎng)站真的就有那么大的作用嗎?或者一定要用它那種模式不可嗎?當然不是,按照我目前的水平開發(fā)出來的產(chǎn)品,無論從設計模式還是架構(gòu)上,與petshop相比,都顯稚嫩,但也并非次品。抽出時間學習先進的技術(shù)、優(yōu)秀的設計模式,這本沒有什么問題,每個程序員都在努力提升自己,以寫出更完美的程序??赡芪覀兡贸霭肽昵暗某绦蛟倏?,常常會厭惡不已:我為什么會寫出這么爛的代碼!恨不得馬上拿過來重構(gòu)。但時間和精力都允許我們這么做,人總是在不斷地進步。
所以,當前的任務是要在一定的時間內(nèi)完成一個網(wǎng)站,這個網(wǎng)站要符合用戶的需求。人的能力總是在不斷提升,追求完美沒有什么錯誤,但當前你的能力已經(jīng)足夠完成這個任務了。當然會有更好的解決方案、更好的算法、更好的設計模式,但目前的情況也沒有那么糟糕,可能會有一些問題,但已經(jīng)足以滿足所有的用戶需求了。事情總不會那么完美,找到一個平衡點似乎才更要緊。
俗語言:瓜無滾圓,白玉微瑕。