很多時(shí)候我們無(wú)法掌握一項(xiàng)技術(shù)打却,最根本的原因是因?yàn)槲覀儾恢涝摷夹g(shù)要解決的是什么問(wèn)題释簿。這看起來(lái)有點(diǎn)不可思議蕉斜,但卻普遍存在椿争。不信你試著回答一下幾個(gè)問(wèn)題:
- DOS操作系統(tǒng)解決了什么問(wèn)題怕膛?用它有什么好處?Windows操作系統(tǒng)比DOS操作系統(tǒng)好在哪里秦踪?
- 為什么要有CSS這種東西嘉竟?用最簡(jiǎn)單的HTML不是更簡(jiǎn)單嗎?還能少學(xué)一個(gè)東西。
- GO語(yǔ)言為什么會(huì)出現(xiàn)舍扰,它解決的是什么問(wèn)題倦蚪?
你當(dāng)然可以用搜索引擎去找答案,但是如果沒(méi)有切身體會(huì)边苹,自然舉不出實(shí)例陵且。不由得想起我學(xué)數(shù)學(xué)的經(jīng)歷。因?yàn)椴恢栏叩葦?shù)學(xué)有什么用个束,老師大部分只知道照本宣科慕购,我又不想死記硬背公式,所以學(xué)得很差茬底。最重要的原因就是因?yàn)椴恢罃?shù)學(xué)要解決的是什么問(wèn)題沪悲。
要了解一項(xiàng)技術(shù),我覺(jué)得有以下一些問(wèn)題需要回答:
要解決的問(wèn)題是什么阱表?(What)為什么會(huì)出現(xiàn)這些問(wèn)題殿如?(Why)
能給出一些問(wèn)題的例子嗎?它是如何解決的最爬?或者說(shuō)最重要的內(nèi)容是什么涉馁?(How)
能給出一些利用該技術(shù)的例子嗎?如何評(píng)估這項(xiàng)技術(shù)的效果爱致?什么情況下這些技術(shù)無(wú)用烤送?使用這項(xiàng)技術(shù)需要付出什么成本?如何降低使用成本糠悯?
以我最近工作相關(guān)的內(nèi)容為例帮坚,我需要回答:
- 為什么要統(tǒng)一編碼風(fēng)格?
- 為什么要做Code Review互艾?
- 為什么要TDD(測(cè)試驅(qū)動(dòng)開(kāi)發(fā))叶沛?
- 為什么要敏捷開(kāi)發(fā)?
- 為什么要重構(gòu)忘朝?