共 1818 字亮靴,讀完需 3 分鐘。本周 <a >JSConf China</a> 于上海閉幕于置,掘金和知乎上都有對應(yīng)的<a >實錄</a>和<a >問答</a>茧吊,但會議的 PPT、視頻目前都還沒放出來八毯,有心的同學(xué)如果找到了歡迎分享搓侄。最近公司入職了 3 個實習(xí)同學(xué),本期收錄了關(guān)于實習(xí)同學(xué)如何快速掌握熟練工程師的工作流程话速、開發(fā)套路來自我提升的多條精彩內(nèi)容讶踪。以下是精選內(nèi)容,請享用泊交!
技術(shù)動態(tài)
ES8 發(fā)布及主要特性總覽
ES8 已經(jīng)正式發(fā)布乳讥,這篇文章使用實例對 ES8 中確定的語言特性(比如 Object.values、Object.entries廓俭、String.padStart云石、String.padEnd)做了介紹,基礎(chǔ)好的同學(xué)可以自己去閱讀規(guī)范原文研乒,此外汹忠,掘金翻譯計劃也把文章翻譯成了中文。
文章教程
JS 項目行軍指南
對于相當(dāng)比例的工程師告嘲,尤其是剛?cè)腴T的前端工程師來說错维,開始一個全新的項目就像是在未知領(lǐng)域摸索前行奖地,如果方法不當(dāng)橄唬,維護(hù)老項目更是噩夢,那么推進(jìn)新項目是否有固定的套路可循呢参歹?這篇文章是 Hive 的團(tuán)隊總結(jié)出來的 JS 項目行軍指南仰楚,覆蓋了 Git、依賴犬庇、測試僧界、文件組織、代碼規(guī)范等方面臭挽。
API 安全檢查清單
《清單革命》中提出在醫(yī)學(xué)領(lǐng)域使用檢查清單是保障復(fù)雜手術(shù)成功簡單卻有效的方法捂襟,有人把這種方法論遷移到建筑領(lǐng)域,而軟件工程領(lǐng)域同樣使用欢峰,對于開始接觸 JS 后端開發(fā)的同學(xué)葬荷,如何保障 API 服務(wù)的安全有很多方面需要考慮涨共,如果想讓自己成為思維縝密的工程師,這篇文章及其中提到的概念和技術(shù)宠漩,非常值得學(xué)習(xí)举反。
awesome-guidelines:編碼風(fēng)格指南
高質(zhì)量的代碼會體現(xiàn)在表層和結(jié)構(gòu)兩方面,表層主要指代碼排列扒吁、變量命名等方面火鼻,結(jié)構(gòu)主要體現(xiàn)在容錯、擴展雕崩、調(diào)試等方面魁索,表層的代碼技巧相比結(jié)構(gòu)方面更容易掌握,而通常來說表層很差的代碼盼铁,結(jié)構(gòu)也好不到哪里去蛾默,這篇匯集了很多門語言的編程規(guī)范、最佳實踐捉貌。
每個單元測試都必須回答的 5 個問題
有個難以接受但是殘酷的事實支鸡,大多數(shù)程序員都不知道怎么寫測試,測試不僅能幫助你理清對需求的理解趁窃,還有利于設(shè)計的開展牧挣,更直接的是方便持續(xù)集成為以后的自動化回歸打好基礎(chǔ)。那么該怎么寫測試醒陆?正確的思考都是從提問開始瀑构,每個單元測試都要回答 的問題包括:你在測什么?它是干啥的刨摩?輸入是什么寺晌?輸出是什么?如何重復(fù)測試澡刹?
開發(fā)工具
Release:快速生成倉庫的 Changelog
Zeit 官方發(fā)布的命令行工具呻征,運行之后能自動生成 GitHub Release,并且基于上次發(fā)布之后的提交生成本次 Release 的更新日志罢浇,如果不了解這種發(fā)版流程陆赋,建議去看看 React、React Native 的版本更新機制嚷闭。
Chrome 60 DevTools 新功能預(yù)覽
Chrome 無疑是配備了最好的開發(fā)者工具的瀏覽器攒岛,該視頻通過實際操作講解 Chrome 60 中新發(fā)布的 DevTools 功能,感興趣的可以看看胞锰。
代碼框架
Gifted Chat:React Native 會話式 UI 庫
在 AI 時代灾锯,人機交互的方式也有不少新的變化,具體到前端領(lǐng)域嗅榕,會話式UI(Conversational UI)的崛起尤為顯著顺饮,微信公號上的自動回復(fù)功能也可算作此類色乾,Gifted Chat 是為 React Native 定制的會話式交互組件,在交互細(xì)節(jié)上做了不少的優(yōu)化考量领突,也支持靈活的自定義暖璧,如果你最近想做個類似的 APP,應(yīng)該可以用上君旦。
franc:支持超過 800+ 語言的語種檢測庫
如果你恰巧也需要在工作中處理多國語言澎办,而需要知道數(shù)據(jù)庫中存儲的文本語種,franc 絕對能為你所用金砍,支持超過 800+ 語種局蚀,支持計算某段文本屬于某種語言的概率,長的文本輸入能給你更精確的結(jié)果恕稠。
Markvis:在 Markdown 中輸出圖表
不得不說 Markvis 為 Markdown 帶來了更加豐富的表現(xiàn)力琅绅,支持條形圖、餅圖鹅巍,并且這種需求是剛需千扶,在 Markdown 越來越普及的今天。
找找靈感
Practical Node.js:第2版
Practical Node.js 開始修訂第 2 版了骆捧,預(yù)計年底會完工澎羞,這個倉庫是手稿原文,如果你看過的話是不是也可以參與進(jìn)去呢敛苇?該書的第一版<a >評價還比較不錯</a>妆绞。
VimGameSnake:在 Vim 中玩貪吃蛇
代碼寫累了想在 Vim 里面休閑下?請收下這款游戲吧枫攀,不要跟老板說是前端周刊介紹的括饶,哈哈。當(dāng)然来涨,如果你想在 Vim 中嘗試更多的游戲图焰,可以移步:github.com/jmanoel7/vim-games。
AI 術(shù)語中英文對照表
如果你知道某個領(lǐng)域各種術(shù)語對應(yīng)的英文單詞扫夜,能看懂英文技術(shù)資料就會更容易楞泼,前端為什么要關(guān)注人工智能驰徊?科技發(fā)展的趨勢是擋不住的笤闯,即使不做人工智能的開發(fā),多學(xué)點單詞也能避免不少拼音式變量名吧棍厂。
精彩問答
如何對壓縮混淆后的 JS 代碼做逆向工程颗味?
很多前端同學(xué)在初入門的時候可能都用到了逆向工程的方法,區(qū)別就是逆向的難度大小的問題牺弹,通常 CSS浦马、DOM 再明顯不過了时呀,你對壓縮混淆過的 JS 代碼做過逆向工程么?沒有的話晶默,讀讀這篇長文谨娜,看看 Alex Kras 是如何做到的。
為什么 Reddit 選擇了 TypeScript磺陡?
Reddit 的前端團(tuán)隊在做重構(gòu)的時候重新選擇了 TypeScript 作為基本的開發(fā)語言趴梢,他們調(diào)研了哪些方案?選擇 TypeScript 的理由是什么币他?如果你時間有限就看最后的結(jié)論吧坞靶。
認(rèn)真的 JS 開發(fā)者必須知道的 10 件事?
由一個想提高自己的前端工程師發(fā)布在 Redit 上的問題蝴悉,高票答案總結(jié)的非常不錯彰阴,現(xiàn)在的前端工程師跟五年前的前端工程師已經(jīng)大不相同,如果你想在這個領(lǐng)域立足并成為大牛拍冠,這個答案可以作為基礎(chǔ)技能檢查清單尿这。
One More Thing
本文作者王仕軍,商業(yè)轉(zhuǎn)載請聯(lián)系作者獲得授權(quán)庆杜,非商業(yè)轉(zhuǎn)載請注明出處妻味。如果你覺得本文對你有幫助,請點贊欣福!如果對文中的內(nèi)容有任何疑問责球,歡迎留言討論。想知道我接下來會寫些什么拓劝?歡迎訂閱我的掘金專欄或知乎專欄:《前端周刊:讓你在前端領(lǐng)域跟上時代的腳步》雏逾。
Happy Hacking