<rt id="bn8ez"></rt>
<label id="bn8ez"></label>

  • <span id="bn8ez"></span>

    <label id="bn8ez"><meter id="bn8ez"></meter></label>

    對于軟件工程師來說,工作也許意味著許多東西 -- 穩(wěn)定的收入、做自己感興趣的項目、找一份更好工作的跳板,或者你只是喜歡與其他程序員共事。但說到“效率”,強調的是在一定時間內按質完成項目的能力。Phil Chu根據(jù)自己的經(jīng)驗提出了高效程序員應該養(yǎng)成的七個習慣。建議去看看作者的原文(可能需要代理才能正常訪問)。

      理解你的需求

      成為一個有效率的程序員首先要知道如何正確的支配自己的時間。對時間最大的浪費莫過于去做那些沒有用處或者永遠不會上線的項目。而導致這種結果的根源往往是對需求理解的偏差。
    要最大程度避免這種情況的發(fā)生,最好的辦法是快速建模,盡可能讓演示系統(tǒng)早點出來。對于客戶來說,只有看得到摸得著的產(chǎn)品擺在面前,他們才會有興趣去試用觀察,才會在實際的操作中發(fā)現(xiàn)供需雙方在需求理解上的偏差。否則即使你寫上幾百頁的需求分析文檔也只能是自己的一面之詞,客戶可沒耐心去檢查這些文檔寫的是否準確。

      另一方面,你應該讓每一個階段的開發(fā)成果都能夠盡早的提交給客戶。讓他們以完全不考慮操作合理性和業(yè)務邏輯性的傻瓜級操作來發(fā)現(xiàn)程序員編程中的固有思維局限。尤其必須讓QA盡早的介入到項目開發(fā)中來。如果能夠每天提交一份測試版本給QA自然是最理想的了,但大多數(shù)項目開發(fā)做不到這樣的粒度,那么就爭取每周提交一份可測試版本。重要的是應該讓QA和開發(fā)能夠保持交錯并行狀態(tài)。只有這樣,才能讓QA盡早發(fā)現(xiàn)bug,降低每個bug的修復成本,同時縮減獨立測試周期的跨度。

      程序員往往不愿意把半成品代碼交付給測試人員,相反他們更喜歡在所有代碼都完工,達到自己滿意的程度之后再讓別人來測試。因為在這之前的代碼往往存在很多程序員自己知道需要修改(或者故意留待后續(xù)補全)的流程缺失和Bug,測試人員并不知道哪些是真正的Bug,哪些只是臨時性的運行錯誤,每次都會一股腦兒作為Bug反饋給程序員。這往往讓程序員們心煩。同時測試人員有時候也不喜歡測試這種很多分支都走不通的中間版本。

      但不管喜不喜歡,測試并發(fā)現(xiàn)問題是測試人員的工作;程序員則應該認識到,Bug反饋得越早就越是件好事情。QA和開發(fā)之間的關系往往很敵對,可實際上雙方的目標是一致的。“忠言逆耳”古訓有之,對于程序員來說就應該“有則改之,無則加勉”。總好過項目完成之后才發(fā)現(xiàn)一堆的問題,到那時候再要做修改,基本上都會牽一發(fā)而動全身,痛苦的還是程序員自己。

      保持真實性

      盡可能讓你的系統(tǒng)運行在最接近真實環(huán)境配置下面,使用有實際意義的數(shù)據(jù)和真實的編譯版本,并經(jīng)常性進行模塊整合。如果你的測試環(huán)境使用的數(shù)據(jù)都是些胡亂添加的東西,那么將來和測試數(shù)據(jù)大相徑庭的真實數(shù)據(jù)這塊大冰山早晚會撞沉你的程序。另一方面如果你只在開發(fā)環(huán)境來編譯運行測試,會發(fā)現(xiàn)正式發(fā)布之后有各種各樣莫名其妙的問題產(chǎn)生,到最后原來都是因為環(huán)境配置與開發(fā)環(huán)境有些不起眼的差異所導致。把所有模塊整合進行編譯聯(lián)調,看上去應該是最后作的一項附加工作,但實際上這是一項需要在開發(fā)過程中經(jīng)常性進行的工作。只有這樣QA才能有最完整的東西拿來測試,得到更多的Bug反饋,同時降低模塊整合的難度。

      理解你的代碼

      書寫規(guī)范的代碼,并保持代碼的整潔。Coding是一門藝術。正如寫作一樣,同樣的文字在文豪的筆下就能夠熠熠生輝,讀起來賞心悅目;在普通人的筆下大概就只是詞能達意的效果了;在某些人的筆下或許就需要研究半天才能猜出個大概來。當然不可能人人都成為藝術家,但至少你可以學會欣賞藝術、學習藝術。書寫漂亮的代碼是對自己工作的尊重,也是對其他程序員的尊重。如果你的代碼中間充斥著大段過時的注釋、可讀性差的變量/函數(shù),怎么去要求別人或者自己以后能夠理解它們?

      最優(yōu)編程

      把你的時間花在代碼的功能上, 而不是去把現(xiàn)有的代碼改得對自己胃口(尤其對于那些copy/paste過來的代碼);要找到系統(tǒng)的瓶頸進行優(yōu)化,而不是對那些無益于系統(tǒng)整體性能提高的地方做無用功。

      管理好你自己

      也許有人會說計劃和進度控制是PM的事情,但一個好的程序員應該比PM更了解自己目前工作的進度。不論上頭給的進度計劃是否合理,你都應該有自己的原則和概念,清楚知道每天該做什么怎么去做。

      持續(xù)教育

      只有不斷的學習、實踐、犯錯誤,你才會真正有所提高。在我看來,對于程序員來說最好的老師不在學校,而在書本、網(wǎng)絡、社區(qū)。學會自我學習才能保持與時俱進。

      R-E-S-P-E-C-T

      互相尊重是一切的基礎。

    Feedback

    # re: 高效程序員應該養(yǎng)成的七個習慣  回復  更多評論   

    2006-02-26 19:13 by shaofan
    很奇怪閱讀1800多次,居然沒有評論?

    # re: 高效程序員應該養(yǎng)成的七個習慣  回復  更多評論   

    2006-03-05 22:09 by
    說說感受,第一條最重要!
    我們公司很多人都是不能很快的理解需求,才導致項目延緩和質量低下的!

    # re: 高效程序員應該養(yǎng)成的七個習慣  回復  更多評論   

    2008-07-06 11:17 by 寫得太好了,別人都不知道怎么評論
    寫得太好了,別人都不知道怎么評論

    只有注冊用戶登錄后才能發(fā)表評論。


    網(wǎng)站導航:
     

    posts - 19, comments - 31, trackbacks - 0, articles - 2

    Copyright © JavaXP

    主站蜘蛛池模板: 四虎影视无码永久免费| 成人a毛片视频免费看| 午夜爽爽爽男女免费观看影院| 国产成人毛片亚洲精品| 香蕉视频亚洲一级| 成年丰满熟妇午夜免费视频 | yy6080亚洲一级理论| 亚洲国产AV一区二区三区四区| 好吊妞788免费视频播放| 亚洲欧洲AV无码专区| 日韩高清免费在线观看| 在线亚洲v日韩v| 亚洲国产精品狼友中文久久久| 五月天国产成人AV免费观看| 亚洲一本大道无码av天堂| 亚洲一级片免费看| 亚洲国产精品VA在线观看麻豆| 在线观看特色大片免费网站| 久久夜色精品国产亚洲AV动态图 | 看成年女人免费午夜视频| 四虎精品亚洲一区二区三区| 精品国产免费一区二区三区| 亚洲AV无码成人专区片在线观看| 91老湿机福利免费体验| 日本亚洲精品色婷婷在线影院 | 日韩免费在线中文字幕| 亚洲色婷婷综合久久| 2015日韩永久免费视频播放| 亚洲视频在线观看2018| 免费一级毛片在线播放不收费| 国产99久久久国产精免费 | 亚洲国产精华液网站w| 7x7x7x免费在线观看| 亚洲综合无码一区二区痴汉| 亚洲国产综合久久天堂| 无码AV片在线观看免费| 亚洲欧美日韩中文二区| 亚洲色欲色欲www在线丝 | 特级av毛片免费观看| 亚洲va久久久噜噜噜久久| 久久精品无码一区二区三区免费|