程序員修煉之道

Care About Your Craft. 關(guān)心你的技藝

Think!About Your Work. 思考孽亲!你的工作


1.A Pragmatic Philosophy 注重實(shí)效的哲學(xué)

Provide Options,Don't Make Lame Excuses. 提供各種選擇,不要找撇腳的借口

Don't Live with Broken Windows. 不要容忍破窗戶

Be a Catalyst for Change. 做變化的催化劑

Remember the Big Picture. 記住大圖景

Make Quality a Requirements Issue. 使質(zhì)量成為需求問(wèn)題

Invest Reqularly in Your KnowLedge Portfolio. 定期為你的知識(shí)資產(chǎn)投資

Critically Analyze What You Read and Hear. 批判地分析你讀到的和聽到的

It's Both What You Say and the Way You Say It. 你說(shuō)什么和你怎么說(shuō)同樣重要


2.A Pragmatic Approach 注重實(shí)效的途徑

DRY - Don't Repeat Yourself. 不要重復(fù)你自己

Make It Easy to Reuse. 讓復(fù)用變得容易

Eliminate Effects Between Unrelated Things. 消除無(wú)關(guān)事物之間的影響

There Are No Final Decisions. 不存在最終決策

Use Tracer Bullets to Find the Target. 用曳光彈找到目標(biāo)

Prototype to Learn. 為了學(xué)習(xí)而制作原型

Program Close to the Problem domain. 靠近問(wèn)題領(lǐng)域編程

Estimate to Avoid Surprises. 估算,以避免發(fā)生意外

Iterate the Schedule with the Code. 通過(guò)代碼對(duì)進(jìn)度表進(jìn)行迭代


3.The Basic Tools 基本工具

Keep Knowledge in Plain Text. 用純文本保存知識(shí)

Use the Power of Command Shells. 利用命令shell的力量

Use a Single Editor Well. 用好一種編輯器

Always Use Source Code Control. 總是使用源碼控制

Fix the Problem, Not the Blame. 要修正問(wèn)題衔蹲,而不是發(fā)出職責(zé)

Don't Panic. 不用恐慌

"Select" Isn't Broken. “Select”沒(méi)有問(wèn)題

Don't Assume it - Prove it. 不要假定赤惊,要證明

Learn a Text Manipulation Language. ?學(xué)習(xí)一種文本操縱語(yǔ)言

Write Code That Writes Code. 編寫能編寫代碼的代碼


4.Pragmatic Paranoia 注重實(shí)效的偏執(zhí)

You Can't Write Perfect Software. 你不可能寫出完美的軟件

Design with Contracts. 通過(guò)合約進(jìn)行設(shè)計(jì)

Crash Early. 早崩潰

If It Can't Happen, Use Assertions to Ensure That It Won't. 如果它不可能發(fā)生事富,用斷言確保它不會(huì)發(fā)生

Use Exceptions for Exceptional Problems. 將異常用于異常的問(wèn)題

Finish What You Start. 要有始有終


5.Bend,or Break 彎曲,或折斷

Minimize Coupling Between Modules. 使模塊之間的耦合減至最少

Configure,Don't Integrate. 要配置鸣驱,不要集成

Put Abstractions in Code, Details in Metadata. 將抽象放進(jìn)代碼,細(xì)節(jié)放進(jìn)元數(shù)據(jù)

Analyze Workflow to Improve Concurrency. 分析工作流蝠咆,以改善并發(fā)性

Design Using Services. 用服務(wù)進(jìn)行設(shè)計(jì)

Always Design for Concurrency. 總是為并發(fā)進(jìn)行設(shè)計(jì)

Separate Views from Models. 使視圖與模型分離

Use Blackboards to Coordinate Workflow. 用黑板協(xié)調(diào)工作流


6.While You Are Coding 當(dāng)你編碼時(shí)

Don't Program by Coincidence. 不要靠巧合編程

Estimate the Order of Your Algorithms. 估算你的算法的階

Test Your Estimates. 測(cè)試你的估算

Refactor Early,Refactor Often. 早重構(gòu)踊东,常重構(gòu)

Design to Test. 為測(cè)試而設(shè)計(jì)

Test Your Software,or Your Users Will. 測(cè)試你的軟件,否則你的用戶就得測(cè)試

Don't Use Wizard Code You Don't Understand. 不要使用你不理解的向?qū)Тa


7.Before The Project 在項(xiàng)目開始之前

Don't Gather Requirements - Dig for Them. 不要搜集需求——挖掘他們

Work with a User to Think Like a User. 與用戶一同工作,以像用戶一樣思考

Abstractions Live Longer than Details. 抽象比細(xì)節(jié)活得更長(zhǎng)久

Use a Project Glossary. 使用項(xiàng)目詞匯表

Don't Think Outside the Box - Find the Box. 不要在盒子外面思考——要找到盒子

Listen to Nagging Doubts - Start When You're Ready. 傾聽反復(fù)出現(xiàn)的疑慮——等你準(zhǔn)備好再開始

Some Things Are Better Done than Described. 對(duì)有些事情“做”勝于“描述”

Don't Be a Slave to Formal Methods. 不要做形式方法的奴隸

Expensive Tools Do Not Produce Better Designs. 昂貴的工具不一定能制作出更好的設(shè)計(jì)


8.Pragmatic Projects 注重實(shí)效的項(xiàng)目

Organize Around Functionality, Not Job Functions. 圍繞功能递胧,而不是工作職務(wù)進(jìn)行組織

Don't Use Manual Procedures. 不要使用手工流程

Test Early.Test Often.Test AutoMatically. 早測(cè)試碑韵,常測(cè)試,自動(dòng)測(cè)試

Coding Ain't Done Til All the Tests Run. 要到通過(guò)全部測(cè)試缎脾,編碼才算完成

Use Saboteurs to Test Your Testing. 通過(guò)“蓄意破壞”測(cè)試你的測(cè)試

Test State Coverage,Not Code Coverage. 測(cè)試狀態(tài)覆蓋祝闻,而不是代碼覆蓋

Find Bugs Once. 一個(gè)bug只抓一次

Treat English as Just Another Programming Language. 把英語(yǔ)當(dāng)作又一種編程語(yǔ)言

Build Documentation In, Don't Bolt It On. 把文檔建在里面,不要拴在外面

Gently Exceed Your Users' Expectations. 溫和地超出用戶的期望

Sign Your Work. 在你的作品上簽名

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
  • 序言:七十年代末遗菠,一起剝皮案震驚了整個(gè)濱河市联喘,隨后出現(xiàn)的幾起案子,更是在濱河造成了極大的恐慌辙纬,老刑警劉巖豁遭,帶你破解...
    沈念sama閱讀 218,525評(píng)論 6 507
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件,死亡現(xiàn)場(chǎng)離奇詭異贺拣,居然都是意外死亡蓖谢,警方通過(guò)查閱死者的電腦和手機(jī),發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,203評(píng)論 3 395
  • 文/潘曉璐 我一進(jìn)店門譬涡,熙熙樓的掌柜王于貴愁眉苦臉地迎上來(lái)闪幽,“玉大人,你說(shuō)我怎么就攤上這事涡匀《㈦纾” “怎么了?”我有些...
    開封第一講書人閱讀 164,862評(píng)論 0 354
  • 文/不壞的土叔 我叫張陵陨瘩,是天一觀的道長(zhǎng)腕够。 經(jīng)常有香客問(wèn)我,道長(zhǎng)舌劳,這世上最難降的妖魔是什么帚湘? 我笑而不...
    開封第一講書人閱讀 58,728評(píng)論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮蒿囤,結(jié)果婚禮上客们,老公的妹妹穿的比我還像新娘。我一直安慰自己材诽,他們只是感情好底挫,可當(dāng)我...
    茶點(diǎn)故事閱讀 67,743評(píng)論 6 392
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著脸侥,像睡著了一般建邓。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上睁枕,一...
    開封第一講書人閱讀 51,590評(píng)論 1 305
  • 那天官边,我揣著相機(jī)與錄音沸手,去河邊找鬼。 笑死注簿,一個(gè)胖子當(dāng)著我的面吹牛契吉,可吹牛的內(nèi)容都是我干的。 我是一名探鬼主播诡渴,決...
    沈念sama閱讀 40,330評(píng)論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼捐晶,長(zhǎng)吁一口氣:“原來(lái)是場(chǎng)噩夢(mèng)啊……” “哼!你這毒婦竟也來(lái)了妄辩?” 一聲冷哼從身側(cè)響起惑灵,我...
    開封第一講書人閱讀 39,244評(píng)論 0 276
  • 序言:老撾萬(wàn)榮一對(duì)情侶失蹤,失蹤者是張志新(化名)和其女友劉穎眼耀,沒(méi)想到半個(gè)月后英支,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體,經(jīng)...
    沈念sama閱讀 45,693評(píng)論 1 314
  • 正文 獨(dú)居荒郊野嶺守林人離奇死亡哮伟,尸身上長(zhǎng)有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點(diǎn)故事閱讀 37,885評(píng)論 3 336
  • 正文 我和宋清朗相戀三年干花,在試婚紗的時(shí)候發(fā)現(xiàn)自己被綠了。 大學(xué)時(shí)的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片澈吨。...
    茶點(diǎn)故事閱讀 40,001評(píng)論 1 348
  • 序言:一個(gè)原本活蹦亂跳的男人離奇死亡把敢,死狀恐怖,靈堂內(nèi)的尸體忽然破棺而出谅辣,到底是詐尸還是另有隱情,我是刑警寧澤婶恼,帶...
    沈念sama閱讀 35,723評(píng)論 5 346
  • 正文 年R本政府宣布桑阶,位于F島的核電站,受9級(jí)特大地震影響勾邦,放射性物質(zhì)發(fā)生泄漏蚣录。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點(diǎn)故事閱讀 41,343評(píng)論 3 330
  • 文/蒙蒙 一眷篇、第九天 我趴在偏房一處隱蔽的房頂上張望萎河。 院中可真熱鬧,春花似錦蕉饼、人聲如沸虐杯。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,919評(píng)論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽(yáng)擎椰。三九已至,卻和暖如春创肥,著一層夾襖步出監(jiān)牢的瞬間达舒,已是汗流浹背值朋。 一陣腳步聲響...
    開封第一講書人閱讀 33,042評(píng)論 1 270
  • 我被黑心中介騙來(lái)泰國(guó)打工, 沒(méi)想到剛下飛機(jī)就差點(diǎn)兒被人妖公主榨干…… 1. 我叫王不留巩搏,地道東北人昨登。 一個(gè)月前我還...
    沈念sama閱讀 48,191評(píng)論 3 370
  • 正文 我出身青樓,卻偏偏與公主長(zhǎng)得像贯底,于是被迫代替她去往敵國(guó)和親丰辣。 傳聞我的和親對(duì)象是個(gè)殘疾皇子,可洞房花燭夜當(dāng)晚...
    茶點(diǎn)故事閱讀 44,955評(píng)論 2 355

推薦閱讀更多精彩內(nèi)容