做者:Artem Sapegin <br/>
編譯:鬍子大哈 javascript
翻譯原文:http://huziketang.com/blog/posts/detail?postId=58aaa33bfc5b7f63e8c23f68 <br/>
英文原文:2017 is the year that front-end developers should go back and master the basicshtml
轉載請註明出處,保留原文連接以及做者信息前端
在咱們所生活的這個快節奏的世界裏,人們都傾向於把本身的時間用在進行一些新的創造上,而後再互聯網上討論它們。java
我並非說不應這樣作,而是我認爲咱們應該適當的慢一點,把注意力也放在一些不會改變世界那麼大的事情上。這不只會提升咱們的工做效率、提高咱們傳遞的價值,並且也會使咱們學習那些新工具、新方法更快。react
這篇文章結合了個人的經驗和個人新年祝福,也很是但願可以獲得讀者的建議和反饋。git
咱們大部分的工做並不在於寫新的代碼,而是在於維護已經存在的代碼。這意味着你會更常常地讀代碼而不是寫代碼,所以,你須要爲了下一個閱讀你代碼開發者優化你的代碼,而不是爲了編譯器優化你的代碼。程序員
我推薦下面三本Amazing的書,按這個順序來,從短到長。github
Dustin Boswell 的 《編寫可讀代碼的藝術》,英文原版在這裏 The Art of Readable Code。若是對印刷要求不高,這裏也有 影印版。web
Robert C. Martin 的 《代碼整潔之道》,英文原版 Clean Code: A Handbook of Agile Software Craftsmanship sql
Steve McConnell 的 《代碼大全》,英文原版 Code Complete: A Practical Handbook of Software Construction
當有一個新的 JavaScript 框架,而這個框架又比以往的任何框架都優秀的時候,咱們很容易陷入一種狀態——學習該框架,而不是學習語言自己。若是你正在使用一個框架,可是不理解他是如何工做的,那麼請停下來,開始學習這門語言,知道你理解了你所使用的這個框架的工做原理。
做爲起始讀物,Kyle Simpson 的系列圖書《你不知道的JavaScript》是一個很好的選擇,你能夠購買,也能夠免費 在線閱讀。
Eric Elliott在 2017 JavaScript的學習主題 中給出了一個長長的學習列表。
Henrique Alves 列出了一些在 學習React以前應該知道的事情 (其實是任何框架)。
Mike Pennisi 的博文 JavaScript Developers: Watch Your Language。——理解在新 ECMAScript 特徵中的 TC-39 過程。
多年以來,咱們但願在 JavaScript 中使用類。如今終於能夠了,可是咱們不再想用它們了。咱們要的是函數!甚至在寫 HTML 的時候,也使用函數(JSX)。
Kyle Simpson 的 Functional-Light JavaScript。
Frisby 教授的函數式編程電子書 《JavaScript 函數式編程》,英文版:Mostly adequate guide 。還有他的 免費在線視頻教程。
做爲前端開發人員,咱們在團隊中是離用戶最近的,甚至比設計師還近。若是你須要設計師來檢查你放到屏幕上的每一個像素,那麼必定是你出了什麼問題。
David Kadavy 的 《黑客與設計:剖析設計之美的祕密》,英文原版在這裏 Design for Hackers: Reverse Engineering Beauty》,還有一套 免費教程。
Tracy Osborn 的視頻教程 Design for Non-Designers
Nathan Barry 的 Design of Web Applications。
Jason Santa Maria 的 On Web Typography,亞馬遜上也能夠買到,連接在這裏。
Alan Cooper 的 The Inmates Are Running the Asylum: Why High Tech Products Drive Us Crazy and How to Restore the Sanity
這裏還有幾篇關於 UI 動畫的文章: How to Use Animation to Improve UX,Transitional Interfaces。
咱們之中的一些人選擇編程是相比於同人打交道,更喜歡同電腦打交道。可是不幸的是,這並非工做之道。
咱們並非在隔離的環境下工做,一般要和其餘開發者、設計師、項目經理溝通,甚至有時候還須要和用戶溝通,這顯得很是困難。可是若是你想要知道你在作什麼事情以及爲何作這件事情,溝通是很是重要的。而你所作的事情,正是你的價值體現所在。
John Sonmez 的《軟技能:代碼以外的生存指南》,英文原版在 這裏。
Robert C. Martin 的 《代碼整潔之道:程序員的職業素養》,英文原版:The Clean Coder: A Code of Conduct for Professional Programmers
Jim Camp 的 Start with No: The Negotiating Tools that the Pros Don't Want You to Know
咱們與同事或者其餘人溝通的很大一部分都是經過文字來的。任務描述,任務註釋,代碼註釋,git 提交,聊天信息,郵件,博客,微博等等。
想象一下人們須要花多少時間在閱讀和理解這些信息上。若是每一個人能經過本身清晰簡潔的表達來節省他人理解的時間,那工做環境和效率將會獲得很大的改善。
William Zinsser 的 On Writing Well: The Classic Guide to Writing Nonfiction
Orwell 的 Rules on writing。
俄語版很讚的 Glavred課程。
前端開發不只僅是作酷炫的動畫下拉菜單,它比之前更加複雜。臭名昭著的「JavaScript 疲勞」一部分就源於咱們要解決的問題複雜性的增長。
這也意味着,做爲前端工程師也是時候學習這些通過了幾十年發展演變的非前端知識了。同時,這也是我但願從大家那裏獲得一些建議的地方,大家以爲前端工程師,從以往的計算機科學中應該學習哪些知識呢?
這裏列出我本身的一些建議資源:
Coursera 上的 像一個計算機科學家同樣思考問題。
DHH的 五本對我影響最大的編程書。
你想推薦給我什麼呢?2017年,你將要學習什麼呢?但願你也能分享你的計劃出來。
我最近正在寫一本《React.js 小書》,對 React.js 感興趣的童鞋,歡迎指點。