由于快節(jié)奏的生態(tài)系統(tǒng),我們趨向于將時(shí)間花在最新的發(fā)明并且在互聯(lián)網(wǎng)上討論他們。我不是說不應(yīng)該這樣做,但也許我們該放慢一下腳步,看一下那些并沒有什么變化的東西:這樣可以極大地提高我們工作的質(zhì)量和價(jià)值,以及理解那些新的工具。
這篇文章混合了我的經(jīng)驗(yàn)和對新一年的期望。我想聽到你們的建議,也想分享我的一些建議。
學(xué)習(xí)如何編寫可閱讀的代碼
我們的大部分工作不是在于編寫新的代碼,而是修改現(xiàn)有的代碼。這意味著你更經(jīng)常閱讀代碼然后再開始編寫,所以你需要為下一個(gè)開發(fā)者優(yōu)化你的代碼,而不是為了編譯器。
我建議閱讀這三本有趣的書 -- 按照這個(gè)順序,從最短到最長:
- The Art of Readable Code by Dustin Boswell
- Clean Code: A Handbook of Agile Software Craftsmanship by Robert C. Martin
- Code Complete: A Practical Handbook of Software Construction by Steve McConnell
深入學(xué)習(xí)JavaScript
當(dāng)每周我們有一個(gè)比任何舊框架更好的新框架的時(shí)候,這時(shí)會(huì)非常容易花費(fèi)你的大部分時(shí)間去學(xué)習(xí)框架而不是語言本身。假如當(dāng)你正在使用一個(gè)框架,但是并不理解它的工作原理,那就停下來并開始學(xué)習(xí)語言直到理解如何使用工具去工作。
- 一個(gè)好的開始是 Kyle Simpson的系列書 You Don’t Know JavaScript 可以免費(fèi)在線閱讀
- Eric Elliott 列出的清單 JavaScript topics to learn in 2017.
- JavaScript Developers: Watch Your Language by Mike Pennisi?—?理解ECMAScript的新特征
學(xué)習(xí)函數(shù)式編程
多年以來,我們想要在JavaScript中使用類,現(xiàn)在我們終于有了類但是再也不想使用它了:函數(shù)就是我們想要的一切!我們甚至用函數(shù)編寫HTML(JSX)
- Functional-Light JavaScript by Kyle Simpson.
- Professor Frisby的 Mostly adequate guide to functional programming ebook 和 他的課程.
學(xué)習(xí)設(shè)計(jì)基礎(chǔ)
作為一個(gè)前端開發(fā)者,我們比team里任何人都要更接近用戶,可能比設(shè)計(jì)師還更加接近。如果設(shè)計(jì)師必須確認(rèn)你還原在屏幕上的每個(gè)像素,那說明你做錯(cuò)了。
- Design for Hackers: 書 和 免費(fèi)課程.
- 非設(shè)計(jì)師設(shè)計(jì) talk by Tracy Osborn.
- web應(yīng)用設(shè)計(jì) by Nathan Barry.
- web排版 by Jason Santa Maria.
- 為什么高科技產(chǎn)品使我們瘋狂和如何恢復(fù)理智 by Alan Cooper.
- 一些關(guān)于UI動(dòng)畫的文章: How to Use Animation to Improve UX, Transitional Interfaces.
學(xué)習(xí)如何與人合作
出于某些原因,我們選擇編程是因?yàn)槲覀儽绕鸷腿藖碚f更傾向于和電腦打交道。
我們很少孤立地工作:我們必須和其他開發(fā)者溝通,設(shè)計(jì)設(shè)、管理者,有時(shí)甚至用戶。假如你想真正理解你在做什么和為什么要這樣做,這很困難同時(shí)也非常重要,因?yàn)檫@是我們工作的價(jià)值所在。
- Soft Skills: The software developer's life manual by John Sonmez.
- The Clean Coder -- 專業(yè)程序行為準(zhǔn)則 by Robert C. Martin.
- Start with No: The Negotiating Tools that the Pros Don’t Want You to Know by Jim Camp.
學(xué)習(xí)如何為人寫作
我們和同事或者其他人溝通大部分都是通過書面形式:任務(wù)描述、代碼評(píng)論、git commits、聊天信息、email、微博、博客文章等等。
試想一下,人們花費(fèi)了多少時(shí)間在閱讀和理解上?假如你通過更清楚、更簡潔的表達(dá)去減少這些時(shí)間,世界將會(huì)變得更好。
- On Writing Well: The Classic Guide to Writing Nonfiction by William Zinsser.
- The Elements of Style by William Strunk and E. B. White.
- Orwell 寫作規(guī)則.
- In Russian: awesome Glavred course.
學(xué)習(xí)以前的計(jì)算機(jī)科學(xué)知識(shí)
前端開發(fā)不再只是寫一個(gè)動(dòng)畫下拉菜單,而是比以往更加復(fù)雜,而臭名昭著的“JavaScript疲勞”的一部分就來源于我們要解決的問題復(fù)雜度增加。
所以,這意味著是時(shí)候去學(xué)習(xí)非前端開發(fā)者在數(shù)十年以來建立的知識(shí)了。在這里,我最希望得到你的建議。
- 學(xué)會(huì)像計(jì)算機(jī)科學(xué)家一樣思考 course at Coursera.
- 對我影響最大的五本編程書 by David Heinemeier Hansson
你的建議是什么?你打算在2017年學(xué)習(xí)什么?
注:
- 由于譯者水平有限,如有翻譯不當(dāng)?shù)牡胤?,懇請大家指出,我?huì)盡快修改
- 本文版權(quán)歸原作者所有。如需轉(zhuǎn)載譯文,煩請注明出處:)
原文地址:What to learn in 2017 if you’re a frontend developer
作者: Artem Sapegin
譯者:weapon-x