前端開發(fā)必備工具箱

前端開發(fā)是一個相當復雜的方向,至少就大項目而言锁摔,你很難僅用瀏覽器和編輯器完成工作廓旬。這里列出了我在開發(fā)過程中用到的工具。我希望這個列表能幫助其他人發(fā)現(xiàn)一些可以用在工作流程中的好工具谐腰。

必備工具

這些是我日常使用的工具孕豹,缺了它們我很難高效工作。

VS Code?—— 我選擇的編輯器是微軟出品的 VS Code十气。免費励背、輕量(和 WebStorm 之類的 IDE 相比),大量開箱即用的特性砸西,豐富的擴展叶眉。

瀏覽器 —— 我的默認瀏覽器是 Firefox址儒,有時切換到 Chrome 進行開發(fā)。我也安裝了其他瀏覽器衅疙,以供測試之用莲趣。

DevDocs?—— 這個網頁應用匯聚了各種項目的文檔,還支持離線使用饱溢。當我需要查詢文檔時喧伞,一般會訪問這個站點。我主要用它查詢 JS 和 DOM/瀏覽器方面的文檔绩郎。我真沒找到什么能和它媲美的工具(詳盡而易于搜索)潘鲫。你應該看一看。

Google?—— 沒錯嗽上,我經常上網搜索次舌。關于某個 bug 的信息,如何做某件事(有時會是很基礎的事情)兽愤,軟件包和軟件庫的示例代碼和文檔(如果 DevDocs 沒收錄)彼念,我都會上網搜一搜。

MDN?—— 對任何 web 開發(fā)者來說這都是非常棒的資源浅萧。這個站點的部分內容可以在之前提到的 DevDocs 上找到逐沙,不過有些頁面只有 MDN 上有。我主要用它查詢一些關于可訪問性的內容洼畅,上面有不少討論這一主題的文章吩案。

StackOverflow?—— 經常 google 到上面的內容。如果有問題帝簇,多半能在上面找到答案徘郭。

GitHub?—— 某個軟件包我有疑問,或者想知道關于它的更多信息丧肴,我會到它的 GitHub 倉庫去翻 issue 和代碼残揉,通常能找到問題的答案,就像 StackOverflow芋浮。據(jù)我個人的經驗抱环,如果有關于某個特定軟件包的問題,在 GitHub 上翻到相關 issue 的幾率要高于在 StackOverflow 上找到相關問題(像 React 這類特別流行的庫例外)纸巷。當然镇草,我也使用 GitHub 的版本控制功能。

CSS

CSS-Tricks?—— 你能在上面找到大量有趣的文章和竅門瘤旨。這個網站上也有一個指南(Guides)欄目梯啤,包含關于特定 HTML、CSS裆站、JS 概念的深入講解条辟。我常常訪問這個站點更新關于網格布局的知識黔夭。不過其他指南也非常棒。這個站點絕對值得一看羽嫡。

CSS Reference?—— 如果需要更新 CSS 知識或者查下不熟悉本姥、不常用的屬性,我會訪問這個站點杭棵。上面對每個 CSS 屬性的講解很深入婚惫,給出的示例也很清楚,便于你理解這些屬性并應用于自己的項目魂爪。站點的作者是?Sara Soudain先舷。

Can I Use?—— 如果你在意瀏覽器兼容性,希望負責任地使用前沿特性(漸進增強)滓侍,那么這是不可或缺的工具蒋川。


性能優(yōu)化

SVGOMG?—— 從設計師那里收到一份為 web 優(yōu)化的 SVG 文件,這種事情實在太罕見撩笆。所以我會用 SVGOMG 優(yōu)化 SVG捺球,效果十分驚人。這是?SVGO?的網頁版夕冲,所以你也可以使用相應的命令行工具壓縮 SVG氮兵。

Shrinkme.app?—— 使用這個網頁應用優(yōu)化圖像文件十分快捷方便。開箱即用歹鱼,支持批量上傳泣栈,效果相當不錯。

Sqoosh?—— 需要將圖片壓縮到極致弥姻,或者創(chuàng)建 webp 格式的圖像文件的時候南片,我會使用這個網站。你可以用它提供的大量選項調出滿意的效果庭敦。你也可以用它縮放圖像或是轉換圖像格式铃绒。它用了很多前沿技術(當初 Google Chrome 團隊做這個工具是為了演示現(xiàn)代瀏覽器的功能),所以你需要使用 Chrome 或基于 Chromium 的瀏覽器(Opera螺捐、Brave 等)。我上次試過矮燎,在 Firefox 下這個站點并不能正常工作定血。

Icomoon app?—— 我需要創(chuàng)建定制圖標集時會用這個工具〉猓可以選擇現(xiàn)有圖標(免費圖標和付費圖標)澜沟,也可以上傳自己的圖標。接著就可以生成相應的圖標字體或 SVG 圖標文件(今時今日峡谊,后者是一個更好的選擇)茫虽。

Google Fonts?—— 需要創(chuàng)建定制 web 字體時刊苍,我會首先訪問 Google Fonts。我通常會下載所需文件濒析,然后自行托管正什,這樣性能更好。Google Fonts 有一個很棒的特性号杏,允許只編碼需要用到的字符婴氮。

Glyphhanger?—— 減少文件大小是提升網站性能的最佳途徑之一。Web 字體經常包含很多我們不需要的字形盾致,所以我會用?Glyphhanger?子集化字體主经。你可以指定需要的 Unicode 區(qū)段和字符,Glyphanger 會創(chuàng)建一個只包含相應字符的字體文件庭惜。它也可以將?.ttf?文件轉為其他更適合 web 的格式罩驻,比如?.woff?和?.woff2。需要花一點功夫正確使用這個工具护赊,不過我覺得存在字體性能問題時惠遏,這是一個值得考慮的選項。

Lighthouse?—— 我在發(fā)布網頁前會進行測試,Chrome 瀏覽器的 Lighthouse 是最常用的工具之一。它會檢查各方面的常見問題并給出評分昌罩,也會給出改進提示暇检。這是一個非常好的工具,可以初步檢查我在開發(fā)時是否遺漏了一些問題庭再。

Font style matcher?—— 定制字體加載后會切換字體,如果你希望這個切換不容易察覺,那么可以使用這個字體風格匹配器找到和定制字體類似的默認字體渺贤。

可訪問性

VoiceOver —— macOS 的默認屏幕閱讀器。需要花一點時間熟悉這個工具(我推薦這篇介紹文章)请毛,不過我努力在開發(fā)過程中時不時用下 VoiceOver志鞍。多虧這一點,我的項目中 aria 屬性和面向屏幕閱讀器的文本使用量大增方仿。使用 VoiceOver 后你會驚訝地發(fā)現(xiàn)一些日常使用的網頁組件為屏幕閱讀器用戶提供的上下文信息少得可憐固棚。

a11y guidelines?—— 通常我會盡量去找可訪問性良好的解決方案,不過有的時候還是不得不自己動手仙蚜,這時我會參考這個頁面此洲。這篇可訪問性指導原則詳細解釋了什么是可訪問性,為什么可訪問性很重要委粉,如何實現(xiàn)呜师。很多情況下,復制其中的示例代碼略作調整后即可應用于實際項目贾节。

WAI-ARIA specification?—— 我并不經常閱讀規(guī)范汁汗。如果我在讀規(guī)范衷畦,那么往往是在讀這一篇。其中包含大量關于如何使用 aria 角色和屬性的有價值信息知牌。要我說祈争,任何嚴肅對待可訪問性的開發(fā)者,都需要讀下這篇規(guī)范送爸。

值得一提

最后列下個人覺得挺好用但又沒那么常用的工具铛嘱。

Responsive breakpoints generator?—— 手動創(chuàng)建響應式圖像的多種變體很痛苦。用這個工具就很方便袭厂。

HTML Arrows?—— 各種符號的 Unicode 碼墨吓、HTML 十六進制編碼、HTML 實體編碼纹磺、HTML 實體帖烘。

Char reference?—— 類似上一個工具,但顯示的信息更少橄杨,主要顯示 HTML 實體秘症。

Typography cheatsheet?—— 講解常用的字體排印規(guī)則和問題。

Modular scale?—— 設計網頁時我通常使用這個工具選擇模塊化的縮放方案式矫。如有興趣了解更多關于這個主題的內容乡摹,請參考?A List Appart 上的這篇文章?和?Tim Brown 在 Build Conf 2010 上的演講

CSS gradient generetor?—— 創(chuàng)建漸變背景的在線工具采转。

Smooth shadow generator?—— 為網站添加美觀的陰影聪廉。

Bezier curve generator?—— 定制 CSS 的立方貝塞爾曲線定時函數(shù)。

Easing functions?—— 各種緩動函數(shù)故慈,可用于 CSS 動畫和變換板熊。

ngrok?—— 需要向別人展示作品或者測試不同設備上的效果時,我會使用 ngrok察绷。ngrok 可以將本地運行的服務暴露到公網上干签。不過有的時候配合 Browserstack 的 localhost 擴展時不能工作。

sharing buttons?—— 如果你只需要一個簡單的分享按鈕拆撼,不想用 JS容劳,不想折騰追蹤用戶的復雜邏輯,那么這個工具特別好用闸度。

Unix timestamp converter?—— unix 時間戳轉換器鸭蛙。

CSS to JS converter?—— 可以將 CSS 轉成 JS,也可以將 JS 轉回 CSS筋岛。基于 CSS-in-JS 庫開發(fā)時這個工具十分方便晒哄。

Browser default styles?—— 常見瀏覽器的默認樣式睁宰。


結語

以上就是我在工作中使用的提高效率的工具肪获,希望能幫你發(fā)現(xiàn)一些有用的工具。歡迎在?Twitter?上向我反饋柒傻,包括推薦其他好用的工具孝赫。

如果你依然在編程的世界里迷茫,不知道自己的未來規(guī)劃红符,可以加入前端學習交流q-u-n-:545667817?在里面可以與大神一起交流并走出迷茫青柄。新手、進階预侯≈驴可進群免費領取學習資料,看看前輩們是如何在編程的世界里傲然前行萎馅。

?著作權歸作者所有,轉載或內容合作請聯(lián)系作者
  • 序言:七十年代末双戳,一起剝皮案震驚了整個濱河市,隨后出現(xiàn)的幾起案子糜芳,更是在濱河造成了極大的恐慌飒货,老刑警劉巖,帶你破解...
    沈念sama閱讀 211,042評論 6 490
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件峭竣,死亡現(xiàn)場離奇詭異塘辅,居然都是意外死亡,警方通過查閱死者的電腦和手機皆撩,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 89,996評論 2 384
  • 文/潘曉璐 我一進店門扣墩,熙熙樓的掌柜王于貴愁眉苦臉地迎上來,“玉大人毅访,你說我怎么就攤上這事沮榜。” “怎么了喻粹?”我有些...
    開封第一講書人閱讀 156,674評論 0 345
  • 文/不壞的土叔 我叫張陵蟆融,是天一觀的道長。 經常有香客問我守呜,道長型酥,這世上最難降的妖魔是什么? 我笑而不...
    開封第一講書人閱讀 56,340評論 1 283
  • 正文 為了忘掉前任查乒,我火速辦了婚禮弥喉,結果婚禮上,老公的妹妹穿的比我還像新娘玛迄。我一直安慰自己由境,他們只是感情好,可當我...
    茶點故事閱讀 65,404評論 5 384
  • 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著虏杰,像睡著了一般讥蟆。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上纺阔,一...
    開封第一講書人閱讀 49,749評論 1 289
  • 那天瘸彤,我揣著相機與錄音,去河邊找鬼笛钝。 笑死质况,一個胖子當著我的面吹牛,可吹牛的內容都是我干的玻靡。 我是一名探鬼主播结榄,決...
    沈念sama閱讀 38,902評論 3 405
  • 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼啃奴!你這毒婦竟也來了潭陪?” 一聲冷哼從身側響起,我...
    開封第一講書人閱讀 37,662評論 0 266
  • 序言:老撾萬榮一對情侶失蹤最蕾,失蹤者是張志新(化名)和其女友劉穎依溯,沒想到半個月后,有當?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體瘟则,經...
    沈念sama閱讀 44,110評論 1 303
  • 正文 獨居荒郊野嶺守林人離奇死亡黎炉,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內容為張勛視角 年9月15日...
    茶點故事閱讀 36,451評論 2 325
  • 正文 我和宋清朗相戀三年,在試婚紗的時候發(fā)現(xiàn)自己被綠了醋拧。 大學時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片慷嗜。...
    茶點故事閱讀 38,577評論 1 340
  • 序言:一個原本活蹦亂跳的男人離奇死亡,死狀恐怖丹壕,靈堂內的尸體忽然破棺而出庆械,到底是詐尸還是另有隱情,我是刑警寧澤菌赖,帶...
    沈念sama閱讀 34,258評論 4 328
  • 正文 年R本政府宣布缭乘,位于F島的核電站,受9級特大地震影響琉用,放射性物質發(fā)生泄漏堕绩。R本人自食惡果不足惜,卻給世界環(huán)境...
    茶點故事閱讀 39,848評論 3 312
  • 文/蒙蒙 一邑时、第九天 我趴在偏房一處隱蔽的房頂上張望奴紧。 院中可真熱鬧,春花似錦晶丘、人聲如沸黍氮。這莊子的主人今日做“春日...
    開封第一講書人閱讀 30,726評論 0 21
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽沫浆。三九已至觉壶,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間件缸,已是汗流浹背。 一陣腳步聲響...
    開封第一講書人閱讀 31,952評論 1 264
  • 我被黑心中介騙來泰國打工叔遂, 沒想到剛下飛機就差點兒被人妖公主榨干…… 1. 我叫王不留他炊,地道東北人。 一個月前我還...
    沈念sama閱讀 46,271評論 2 360
  • 正文 我出身青樓已艰,卻偏偏與公主長得像痊末,于是被迫代替她去往敵國和親。 傳聞我的和親對象是個殘疾皇子哩掺,可洞房花燭夜當晚...
    茶點故事閱讀 43,452評論 2 348