乡下人产国偷v产偷v自拍,国产午夜片在线观看,婷婷成人亚洲综合国产麻豆,久久综合给合久久狠狠狠9

  • <output id="e9wm2"></output>
    <s id="e9wm2"><nobr id="e9wm2"><ins id="e9wm2"></ins></nobr></s>

    • 分享

      優(yōu)秀程序員的素質(zhì):(上篇)懶惰、沒耐心和驕傲

       ymh 2005-11-21

      看到“優(yōu)秀程序員的兩大要素:懶 + 笨”一文,  是比較有趣的,剛好在上月我的“KISS原則”文中也引用了Larry Wall(Perl的創(chuàng)造者)的經(jīng)典語錄:

      “We will encourage you to develop the three great virtues of a programmer: laziness, impatience and hubris.”

      就是:“好的程序員要有3個寶貴品德:懶惰、沒耐心和驕傲”。那篇文章主要談KISS原則,沒有深入展開,只是簡單說:

    • 懶惰: KISS, 討厭復雜的; 寧可加班加點、承擔風險也要尋求“偷懶”的捷徑;
    • 沒耐心:討厭重復勞動,不重復自己(DRY原則: Don‘t Repeat Yourself); KISS, 沒耐心搞“復雜繁瑣”的東西;
    • 驕傲: 相信自己能寫出一流的軟件,相信自己可以做出最棒的設(shè)計;
    • 這篇“優(yōu)秀程序員的兩大要素:懶 + 笨”基本闡述類似觀點。 其實我覺得一個好的程序員光“懶惰、沒耐心和驕傲”還不夠, 他(她)還必須同時“勤奮、耐心和謙虛”。

      因此準備湊成兩篇來寫:

      • 優(yōu)秀程序員的素質(zhì):(上篇)懶惰、沒耐心和驕傲
      • 優(yōu)秀程序員的素質(zhì):(下篇)勤奮、耐心和謙虛

      本篇主要寫“懶惰、沒耐心和驕傲”的素質(zhì)。

      懶惰

        這個素質(zhì)在“優(yōu)秀程序員的兩大要素:懶 + 笨”一文已經(jīng)比較詳細指出了:

      只有懶惰的程序員才會去編寫那些可以最終代替自己工作的自動化工具,才不會成天為了實現(xiàn)相似的功能去編寫大段大段冗余重復的代碼 - 這種代碼往往是軟件后期維護和重構(gòu)的天敵。通常來說,由于惰性的驅(qū)使所產(chǎn)生出來的工具和程序?qū)⒆罱K極大的提高生產(chǎn)開發(fā)的速度

      一個勤奮的,但是水平拙劣的程序員可能給項目帶來的損失更大! 所謂勤奮的差程序員 就是不搞清楚如何編程序就野蠻開工的, 他們不厭其煩地堆砌垃圾代碼, 使用最熟練的按鍵組合是CTRL+C/CTRL+V(和網(wǎng)站編輯們相似), 他們可能會產(chǎn)生驚人的代碼量,如果這些代碼能幸運地運行起來, 只能嘆服他們的debug的水平和耐心。  這些人與其叫作程序員,不如叫作代碼民工。

      不幸的是,目前市面上相當數(shù)量自稱程序員的人可能就屬于這一類。 在UUZone我們采用筆試的方法來作為招聘的第一關(guān), 一些最最基礎(chǔ)的試題往往難倒了大部分人, 超過95%的筆試者直接被淘汰。

      優(yōu)秀程序員絕對不會愿意去浪費時間做重復勞動, 他們寧可尋求捷徑,寧可花更多時間去磨刀, 也要在砍柴的時候最省力,最偷懶。

      正如“優(yōu)秀程序員的兩大要素:懶 + 笨”一文說的:

      光光具備懶惰這個要素還是不夠的。在享受懶惰之前,他必須以最大的熱情和最高的效率去研究解放自己的途徑,比如:找到最有助于開發(fā)的工具,最能體現(xiàn)“一次編寫,多次復用”精神的代碼架構(gòu)的設(shè)計。只有在這些必要的工作之后,才可能真正享受輕松編程的樂趣。

      所以“懶”的精髓用一句老話來描述,那就是磨刀不誤砍柴功。如果你不想辦法磨亮手中的柴刀,就算一天二十四小時都在砍柴,效果也不如拿把鋒利的斧頭一天只砍一小時。

      沒耐心

         和懶的作風類似, 好的程序員沒有耐心,尤其是重復自己的工作。他們往往痛恨copy paste, 認為copy paste是帶來代碼維護性差,容易出錯的重要因素。

         好程序員甚至發(fā)明了DRY原則來為自己的美耐心開脫。 所謂DRY就是Don‘t Repeat Yourself原則。 為了能滿足自己的沒耐心的需求, 優(yōu)秀程序員們設(shè)計出各種可以讓自己省心或者偷懶的工具, 比如代碼生成器、各種程序框架,各種重用庫等,這樣“一次編寫,多次復用”可以真正得到推行。

         好的程序員不喜歡重新發(fā)明輪子、更不喜歡重新制造輪子, 遇到一項任務(wù)即時如何實現(xiàn)已經(jīng)是一目了然,他們也寧可耗費一些時間去求證有沒有可以重用的東西,也不愿意拉起來就自己做,即使這樣可以騙到工資或者項目經(jīng)費 -- 因為他們絕對沒有耐心浪費自己的時間去重復別人已經(jīng)完成的工作。

         為了不重復發(fā)明輪子, 好的程序員會試圖讓每一次的工作都盡可能成為下一次工作偷懶的工具和沒有耐心的替代品, 哪怕這一次為了達成這些目的需要耗費一些耐心和額外的工作量。

         好的程序員沒有耐心老去調(diào)試程序,由于編程不調(diào)試是不可能的, 所以這些家伙就弄出各種方法來讓bug不容易產(chǎn)生,他們稱為write  solid code. 其實無論code多么solid, bug還是有,調(diào)試還是不可避免。但優(yōu)秀的程序員們通過各種方法從設(shè)計的時候,編碼開始的時候,就試圖讓bug和調(diào)試的量減少,因為他們實在沒有耐心那么干。

         相反,差的程序員喜歡什么都動手自己來搞, 他們寧可耐心地copy paste代碼, 非常耐心地調(diào)試, 耗費大量的時間,填寫加班單, 每日每夜地干活。 我見過一些人專門喜歡對著書抄襲其中的代碼,還很有成就感,我只能抱歉地說,他們因為太有耐心, 所以成為了差的程序員。

      驕傲

       你是世界上最優(yōu)秀的程序員嗎? 我是, 你是不是呢?如果你的回答不是,而你干著程序員的工作, 那么你要小心, 你缺乏了一個能成為優(yōu)秀的程序員的重要素質(zhì)!

        優(yōu)秀的程序員的驕傲并不是表現(xiàn)在傲慢上,更不是表現(xiàn)在對別人的輕視和對項目的心不在焉, 而是表現(xiàn)在他們的骨子里和心里。他們對自己的能力充滿自信,他們不相信所謂權(quán)威, 他們敢于懷疑一切, 他們敢說出讓別人以為他是瘋子的話來。

        優(yōu)秀的程序員從來不在討論中告訴你“不可能”或者“做不到”,他們最常說的是“我去嘗試一下”。 優(yōu)秀的程序員從來不會自行慚暉地說,那是高手才能作到的,我做不到。他們相信別人能作到的,我一定也行,甚至可以做的更好。

        優(yōu)秀的程序員有時甚至會過度高估自己的能力,尤其是時間和工作量上, 他們很少會故意把工期估計得充分 -- 把工期估計充分應(yīng)該是項目經(jīng)理們做的事情。 所以優(yōu)秀的程序員經(jīng)常心甘情愿地加班加點-- 因為他們太驕傲了,必需證明自己的能力。

      ---

      如果你具備了“懶惰、沒耐心和驕傲”這3個優(yōu)點,恭喜你! 你有了成為優(yōu)秀程序員的素質(zhì)! 但是不要著急, 你還必須同時具備“勤奮、耐心和謙虛”的素質(zhì), 你才能真正修成正果! 而這些素質(zhì),有待我下blog分解!

      • 本站是提供個人知識管理的網(wǎng)絡(luò)存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權(quán)內(nèi)容,請點擊一鍵舉報。
        轉(zhuǎn)藏 分享 獻花(0

        0條評論

        發(fā)表

        請遵守用戶 評論公約

        類似文章 更多