每個程序員都應該看的和想的

 

當我每敲擊一行代碼時,我會想到的(稍微誇張了一些)

2008-08-25 19:18 by MVP-通用權限管理, 594 visits, 收藏, 編輯

  爲什麼我們不會失業?爲什麼以後我們的前途會越來越好?爲什麼我們每天會有做不完的事情?
  未來,對信息化的要求會越來越高,越來越複雜。每個公司都希望將自己的業務,全部實現自動化,徹底用
電腦管理,電腦是不知道疲倦的,不要求加班費,不會跳槽,不會有任何怨言,不知疲倦的可以做重複的勞動。
所以需要開發出N多的軟件系統,製造電腦的成本越來越低,但是人力成本會越來越高。
  一個性能穩定的開發基礎類庫,可以重複利用在10個系統裏,100個系統裏,可以越來越提高重複利用的價值。
  一個功能定位好的軟件,可以用最小的成本複製10份,100份,1000份,10000份。
 
  爲什麼軟件行業,相對來說有前途:
    1。軟件可以複製,人不可以複製。
    2。買了電腦、服務器,沒有配套的軟件,那是廢銅爛鐵一堆。
    3。人力成本會越來越高,電腦硬件成本會越來越低。
    4。電腦軟件,可以代替人的重複勞動,實現商業邏輯,而且不知道疲憊,不要求加班費,不容易出錯,不會頻繁跳槽。

  將來,需要把N多的系統都有效的整合在一起,或者進行升級,那是更加複雜,工作量也更大,技術難度更高,
含金量也更高。以後越來越需要高水平的IT軟件人才,可能需要開發新系統的需求會變得少一些,但是系統整合
的需求會變得更多,系統升級的需求,修改修改業務邏輯的需求,或者從多個系統裏分析業務數據的需求會變得
更多。

  新系統升級需要將原有數據都導入到新系統,還需要無間斷工作,可能還需要新老系統並行工作,那技術上的
要求是比較高的。

  由於我們現在沒有能完美的實現管理系統,爲我們將來創造了的工作機會,創造了更多的改進需求。

=============================================================================================================================================================

  當我們埋頭趕項目時,當你忙忙碌碌寫代碼時,你是否想到了? 當你每敲擊一行代碼時,你最好能想到一下適宜
有不妥之處,請大家指正。

  您若是在程序員崗位,或者從事與程序相關的工作,請你仔細閱讀以下內容。

前提
 01。你是不是在做正確的事情?                        (做這個事情,可能是錯誤的,不是我們需要做的事情,例如你在開發操作系統)
 02。是不是你應該做的事請?                          (可能這件事情已安排給別人已經做好,或者正在做這個事情,你再做這個事情就是重複勞動了)
 03。是不是你最先應該做的事情?                      (平時需要做的事情有很多,應該安排一個先後,優先等級)
 04。你是不是在正確的做這件事情?                    (可能需要用java開發,你卻在用c#在開發)
 05。你是不是講這個功能的整體需求在腦子裏或者圖紙上走了一次流程?  (你可能自己還沒想明白,就開始寫代碼了,越寫越亂,越亂越糟糕,你在圖紙上思考問題,比寫程序更有效)
 06。你這行代媽是否可以不寫?
 07。爲什麼要寫這行代馬的充分理由有幾個?
 08。你寫的代碼,是不是在公司的公用類庫裏已經有這個功能的實現?   (用公司共用的類庫,穩定性好,已經過大家的測試驗證,或者有專門的人在負責維護)


開始寫代碼
 09。你寫的這部分代碼,是否符合需求分析文檔?    (一切應該按設計文檔爲依據,是項目組溝通的基礎,測試的依據,公司積累的財富)
 10。你寫的這部分代碼,是否有嚴謹的數據庫設計?
 11。你這行代碼是否符合公司的編碼規範?
 12。寫這行代碼的功能部分,是否已定義接口?     (有標準接口,方便別人調用,方便理解,有能進行系統集成的餘地)
 13。你是在寫系統中的哪一部份功能?
 14。你這行代碼是滿足否從上到下的順序邏輯?
 15。你這行代碼是滿足從左到右的順序邏輯?
 16。你的代碼是否應該寫在這個位置是最優的嘛?
 17。這行代碼是否應該寫備註?
 18。你的同事同行是否能讀懂你這行代媽?
 19。老外能否讀懂你這行代碼,美國人、日本人、德國人?
 20。你的代碼對你有沒有重複利用的價值,在下一個系統中能重複利用?其他人能重複利用?
 21。你的代碼能否進行自動化測試?不用每次都人工進行測試?寫一個測試腳本就可以每次自動測試?
 22。你這行代碼什麼時候會被程序調用,程序運行是否能覆蓋到這行代碼?
 23。你這行代碼準備讓誰複查?
 24。你這行代碼是不是有改進的餘地,與以前寫的代碼有什麼不同?
 25。網上?參考資料裏?其他同事是否同樣的功能寫得更好更簡潔?
 26。你的代碼或者業務邏輯,能在B/S、C/S、或者分佈式系統裏是否能重複利用?
 27。你若寫的是數據庫操作,能否在支持 Oracle、SqlServer 等多種常用的數據庫?
 28。能實現多語言環境要求?是否有多語言擴展的希望?
 29。你寫的代碼是 Java語言的能跟C#.NET有集成調用的餘地嗎?如何有希望能調用?
 30。你寫的這部分功能,能與其他開發的系統,有機的組成一個大的管理系統嗎?
 31。你寫的這樣代碼,若有變動,會不會影響其他人?
 32。這行代馬修改了,會不會引起其他的連鎖的錯誤,是否可以在編譯階段發現錯誤?

 

額外要求
 30。你這行代碼是否會引起系統異常?
 31。你這行代碼是否會導致系統的崩潰?
 32。你哈行代碼是否會引起死循環?
 33。你這行代碼會不會引起併發問題?
 34。你這行代碼是否經得起壓力測試?
 35。你這行代碼函數部分是否能被紀錄在系統操作日誌裏?
 36。你這行代碼函數部分是否有做性能分析?


娛樂一下大家
 37。你每天要是在寫上千行代碼?那就請你停下來,喝點兒茶,發呆休息一下,整理一下思緒,找你同事來檢查一下,或者找你心目中技術上可信任的人,來給你指導一下。
 38。你每天要是在寫2000行代碼,你的項目經理沒發瘋,公司沒開除你,那是有問題了。
 39。你每天要是在寫3000行代碼,你眼睛沒花掉,或者應爲工作勞累沒有暈倒在電腦前,那至少我個人是非常佩服你了。
 40。你每天要是在寫4000行代嗎,中國的軟件行業有希望了,你可能就是中國微軟的創始人,至少我們公司的其他程序員都可以下崗了。
 41。你每天要在在寫5000行代碼,我要跟你拼命了

發佈了9 篇原創文章 · 獲贊 4 · 訪問量 5萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章