今天下午正在碼代碼的時候,一個朋友微信給我推了一篇發表在掘金的譯文 中止學習框架前端
一看標題,就以爲是標題黨,原本只是以爲文章誤人子弟,可是一看閱讀量太大,截止寫這篇文章爲止,閱讀量已經達到3K,因此以爲仍是有必要專門駁斥一下的。程序員
首先聲明觀點,文章的前半部分是贊同的,可是後半部分徹底是不負責任的誤人子弟。算法
發完文章以後就去寫代碼了,剛剛發現挺多人對本文有疑問,方老師也在文章上說不認爲有什麼好駁的,多是我一直沒寫文章,詞不達意吧,因此就更新一下個人核心觀點,以避免本文被人誤解。設計模式
一、個人態度bash
我對方老師那篇譯文是持有3個觀點的。
一是贊同原文做者的前半部分關於不要只顧着學習框架而丟掉基礎建設。
二是對於書單的反駁。
三是對於方老師最後的觀點的反駁
下面就來詳細說明以上觀點
複製代碼
二、關於原文做者的前半部分微信
原文做者前半部分以對話的形式傳達給讀者 `不要只專一框架,重點應該放在基礎建設`
對這個觀點我是持同意態度的
複製代碼
三、關於原文做者的書單部分網絡
有一點要聲明的是,我並非說那些書很差,而是認爲不該該放在此處,
或者說不該該全是方法論的書,原文做者說明了問題,而且提出瞭解決方案
可是卻在實際操做中無心的漏掉了最核心的部分,這部分是什麼?是關於如
何提高寫代碼這一核心競爭力的部分,核心競爭力不是經過讀幾本方法論的
書就能夠提升的,須要的是經過大量的實踐以及正確的道路指引,很遺憾,
個人觀點,書單中的書都不夠資格承擔起道路指引這一價值。因此我要反駁的
是書單的書不夠核心,從而致使無心中會使得讀者產生讀幾本方法論的書就
能夠提升核心能力的錯覺。
複製代碼
四、關於反駁方老師的部分數據結構
方老師在譯文最後給出了2類人,在我看來,都是不符合實際的,沒有哪個
真正的程序員會只知A框架而不知基礎,也不會有哪個真正的程序員
只知基礎而不知框架。方老師翻譯國外文章的本意是好的,可是最忽略了
文章自己的問題,而且在最後提出了本身的觀點,可是這個觀點倒是有問題的
我不知道方老師是處於什麼想法而提出這個觀點,可是卻容易給讀者形成錯誤
的認知。
複製代碼
五、其餘框架
有幾個須要闡述的觀點是
一、關於寫文章,我對寫文章的態度是很是嚴謹的,我至今歷來沒有在社區中寫過什麼文章,由於我自覺
個人能力還不足夠支撐我給文章的讀者以正確的、有價值的知識輸入。但願社區的大V不要將文章做爲賺
點擊的手段,而是真正做爲技術圈中幫助你們解決問題、提高能力的手段
二、關於原文的態度我覺的仍是有必要着重闡述一下核心觀點
原文做者的提出的問題沒有問題,解決問題的方法也沒有問題,可是有問題的是最後解決問題的
書單中缺乏了最核心的部分,只有方法論,而沒有正確的,對提高寫代碼有實際幫助的書,相似SICP、
CSAPP等。真正讀過這些書的讀者會很清楚的認知到,相比SICP,原文書單中的書只能算是課外讀物。
原文書單中書的價值概括來自於成熟的軟件工程實踐,可是這部分在閱讀SICP的同時會潛移默化的灌輸
到讀者的腦殼中。
三、對方老師的態度
方老師在更新中說 "本文已經翻譯了「正反雙方的觀點」,不知有什麼好駁的哦"
基於這個觀點,我只能產生2種認識,一、方老師沒有看到文章中的不足。
二、方老師由於某種緣由刻意不指出這一點。無論是哪一種緣由,我都不但願社區中此類文章大行其道,
這纔是我寫這篇文章的本意。
另外本文單純的就事論事,不但願掀起罵戰,我只是但願方老師類的人能承擔好一個社區大V應該有的責任,
不要只會割韭菜,這也算是對如今社區烏煙瘴氣的環境的一種抨擊,但願社區中傳播的都是有價值的東西,
而不要爲了區區點擊量將讀者帶到溝裏面,初出茅廬的人不多有能清楚的認知本身的道路的,每個做者
都有責任避免本身文章坑到讀者
複製代碼
導師:艾德,你在作什麼?
我(自豪地說):我在讀一本關於如何使用 GWT 構建現代 Java 應用的書呢。
導師:你讀它作什麼?
我:做爲一名 Java 開發者,我須要跟上潮流。GWT 就是如今的潮流。
導師:你在讀這本書以前還讀過什麼書?
我:我讀了一本關於 Apache Tapestry 的書,那本書有 500 頁。Apache Tapestry 是以前的潮流。
導師:Apache Tapestry 如今仍是潮流嗎?
我:不是了,GWT 纔是。
導師:你以前從 Tapestry 學到的技能如今還能用嗎?
我:不能用了呀。
導師:Tapestry 能幫助你更好地理解 GWT 嗎?
我:不能。不過二者都用到了一些設計模式。
導師:那就是設計模式了,設計模式能幫你解決你遇到的問題嗎?
我:能夠,並且幫助很大。
導師:新事物來了又走,其實有不少共同點。你應該學你該學的。你應該把你 80% 的學習時間用在學習基礎上,剩下 20% 的時間纔是用來學習框架、庫和工具的。
我:哦……只留 20% 的時間學習框架、庫和工具?
導師:是的。你在工做中解決問題時天然就會學會框架、庫和工具。
我:謝謝指導。
導師:你以後還會謝個人。
複製代碼
這部分的觀點我是同意的,做爲一個程序員,專一基礎建設纔是正確的。ide
我買了一些不會過期的書,並用 80% 的學習時間來讀這些書:
程序員修煉之道 The Pragmatic Programmer
代碼整潔之道 Clean Code
程序員的職業素養 The Clean Code
領域驅動設計和實踐 Domain-Driven Design
測試驅動的面向對象軟件開發 Growing Object-Oriented Software, Guided by Tests
持續交付 Continuous Delivery
複製代碼
這些書,有些的確是可讀的,可是不該該放在這個地方,與框架對應的是什麼?是設計模式嗎?是程序員的素養嗎?仍是其餘各類方法學?
我認爲都不是,與之對應的應該是計算機基礎,是什麼?是操做系統、組成原理、數據結構與算法等基礎。此處能夠說是譯文的第一個誤人子弟的地方,明擺着會給讀者灌輸一種不須要學框架,只須要學各類方法學就行了的觀點。其結果可想而知。
另外一方面,我認爲不須要刻意的去讀書單中的這些書,咱們須要學習的是如何去寫程序,可是如今網絡上大量充斥着一些垃圾文章,致使大部分程序員對如何提高寫代碼這核心一能力十分迷惑。在提高核心能力面前,我只會推薦SICP、CSAPP等幾本書,而不是各類方法論,這其實應該也算是中國大學的一種特點,很差好教學生寫代碼,反而去研究一些方法論,咱們必需要明白,方法論都是從實際操做中得出來的,很差好提高核心能力,而去學習各類方法論,只會讓本身成爲一個空心木頭。
假設你面前有兩個應聘者,一個對框架特別熟,可是對基礎知識一點都不懂;另外一個對框架一點都不熟,可是基礎知識特別懂。你會僱傭誰?
小公司僱傭前者,能用就行。大公司僱傭後者,能堪重任。
複製代碼
這一段,會很明顯的告訴讀者,哪怕是不會基礎,只要會API,學過框架,就會要公司要,哪怕不是大公司。可是我要說的是,這根本就是天方夜譚,做爲過來人,能夠很明確的告訴大家,若是你對基礎一點都不懂,根本不會有真正的公司要你。哪怕是再小的公司,並且,越是小公司,越會要求你基礎紮實的同時還要熟悉框架。由於:
越是小公司越是珍惜來之不易的業務,不會將一個一點基礎不會的定時炸彈放在身邊,真正有經驗的招聘者都明白,基礎越差,招進來後會須要越多的額外的人手去幫助,得不償失。
複製代碼
我原本是從不在社區中發聲的,由於一旦發聲,一定會有不少SB攻擊,無論出於什麼緣由。
可是今天必須說的是,可能正是由於持有個人這種觀點的人太多,致使如今社區中有太多半桶水都在發文賺點擊,給許多初出茅廬的程序員灌各類垃圾。前段時間在知乎一直看到一個問題,爲何靠譜的高級前端這麼難找?緣由就是由於社區太多這些垃圾信息,致使不多有人明確進步的方向,可以提高成爲高級前端。僧多粥少的環境下,固然難找。
另外,對譯者,以及相似譯者的人,給大家一句忠告,但願大家發文的時候不是這麼隨便的寫一些毫無養分甚至誤人子弟的話,不要覺得寫文章是一件這麼簡單的事情。