Koa 與 Express 的核心差異
前言:
最近在公司被分派一個 Koa backend 的功能開發任務,雖然我平時多數時間主要負責前端相關的工作,不過因為學生時期有稍微接觸過一點 Express,它與 Koa 都是 Node.js 知名 web 框架,所以閱讀程式碼時並不會太陌生。這兩者雖然有不少相似之處,但實際使用後發現,它們在設計理念和使用體驗上有很大的不同。
前言:
最近在公司被分派一個 Koa backend 的功能開發任務,雖然我平時多數時間主要負責前端相關的工作,不過因為學生時期有稍微接觸過一點 Express,它與 Koa 都是 Node.js 知名 web 框架,所以閱讀程式碼時並不會太陌生。這兩者雖然有不少相似之處,但實際使用後發現,它們在設計理念和使用體驗上有很大的不同。
前言:
最近我在更新公司內部的前端 Codebase,其中一項任務是為應用加入多國語系(i18n)的支持。雖然在舊專案上一直有在使用 i18n 的功能,但這是我第一次接觸 i18n 的配置,正好藉此機會把學習過程和實作細節記錄下來。
在過去,當我們談論到 JavaScript 前端開發環境時,很難不提到 Webpack
。這款在 2012 年誕生的強大工具,在過去的 10 年內一直是最主流的前端打包工具 。然而,在 2020 年一個名為 Vite
的新興工具迅速崛起,挑戰著 Webpack 的霸主地位。根據 2023 年 State of JavaScript 網站所統計的資料顯示,Vite 僅花了短短三年就成為使 用規模第二大的 Build Tools,如果單看 Interest 或 Positivity 指標的話,甚至都穩坐第一名的位置。
前情提要:
近期在幫公司開發一個提供內部 前端成員使用的 npm package。在開發的過程中有一個比較麻煩的點是,我過去從來沒有開發過 npm package 的經驗,對於如何設置開發環境、打包、發布、維護可說是完全從零開始研究。再加上公司不希望這個 package 開源給外部使用,也沒有計劃要付費使用 npm Orgs 的私人 npm 功能。因此,除了研究如何開發 npm package 之外,同時還得研究是否有免費且適合我們公司的私人 npm library 的解決方案。
初學 JavaScript 時,偶爾會在教學文或討論區中看到這樣的說法:
「在 JavaScript 中,萬物皆為物件。」
便在潛意識中埋下一個 JS 中所有變數都是物件的種子。如今因為工作上大量使用 JS 這個語言,對 JS 這個語言有比較深一點的了解後,便想要回來探討這個議題。
先講結論,這個說法是不正確的。
但是,我相信正在看這篇文章的你應該也跟我一樣,會想要了解為什麼訪間會有 「JavaScript 萬物皆為物件」 的說法,以及這個說法背後的論點是什麼?反對這個說法的論點是什麼?本篇文章將帶大家探討這個議題,挖掘正反兩方的論點,並釐清一些 JS 的觀念。
最近拿到了公司配的 macbook pro 13(2022) 工作機,趁這個機會整理一下我常使用的軟題和工具,順便記錄一下一台新 mac 安裝各種工具的過程中遇到的小問題以及我做了哪些配置。