這是系列文的第一篇,首先讓我們釐清相關的專有名詞開始。 模組 (module) 從維基百科上面的定義,我們可以條列出幾個重點: 模組是由數個「基礎功能元件」組...
管理模組化的原始碼的兩種策略 Monorepo 和 Polyrepo Monorepo Monorepo 是指在一個 repo 中,管理多個模組。 截至...
Javascript 並不像其他程式語言有內建命名空間 (namespace) 的概念,也沒有 private 和 public 語法,但你還是可以透過結構化的...
- bin / script - doc - example - src / lib - dist / build - test bin 目錄 集中放一些執...
在前面的篇幅,我們有提到如果希望能再不公開前,讓子模組互相使用到最新的更動,可以透過 npm link 的方式,將子模組彼此之前連結起來。 但是如果模組很多的話...
對一個模組而言,好的 API 設計是非常重要的,需要考慮到很多細節,例如: API 的一致性 當你公開 release 你的模組後,你就得考量向後相容的問題,你...
開始之前先送上菜雞的code 這是我第一次實作RWD的網頁,又因為最近同步在看Bootstrap。所以起初覺得很簡單,畢竟Bootstrap打一下md或lg,好...
上次文章終於迎來續集 我的第一個RWD網頁 這次的網頁練習跟上次的網頁是同系列的,不過這次可是有記起上次的教訓。也第一次使用了SCSS和GitHub。(這部分之...
當你要打照自己的模組時,除了要注意設計自己的模組之外,一定也會使用到其他外部模組,在選用模組時,需要考量未來使用你設計的模組的使用者執行環境是哪裡。 如果你的執...
模組一開始怎麼界定模組範圍是最困難的,最簡單的方式就是先盡可能切出最小介面,能不公開的就先都不要公開,等到有確定的需求後,再開出新的 API。 以小模組來說,模...
ESM 全名叫 EcmaScript Module,提供了更簡潔的的語法,支援靜態載入模組、有助於靜態檢查、效能優化等等。 目前處於 Plan for New...
Module Loader 通常是指某個函式庫,例如 RequireJS 和 SystemJS,我們可以透過 Module Loader 來加載使用 AMD 或...
CI 執行結果 常見 Open source 的模組,都是使用這兩套 CI 系統。 Travis .travis.yml language: node_js...
前面我們介紹了多種模組格式,那如果格式不同怎麼辦?這時候我們就可以使用,模組打包工具來幫我們轉換。 模組打包工具有非常多種選擇: Webpack https...
雲端可移植性是建立可擴展、有彈性、雲端原生應用程式的策略。談到雲原生,通常也會隱含地考慮到雲的可移植性。雲端原生是一種應用程式開發和部署架構方法,可最大限度地利...
lerna init 初始化,並選擇版號管理模式 fixed 模式 lerna init { "app-api-server": &q...
如果模組越來越大的時候,就必須要開始思考怎麼切割模組了,在切模組的過程中,我們將遇到一些挑戰如下: 那原始碼怎麼辦?repo 也要切開來嗎? 版號管理呢? 切...
就算你的模組最近沒有要先增功能或 Bug 要修,但也要盡量一段時間後,將相依版本更新到最新。一方面是考量可以即使更新到相依模組修復的 bug,另一個考量是避免版...
前一篇我們有提到 koa-router 提供的建構子是可以帶值的,常見用途就是讓使用者可以彈性的覆蓋預設參數,這其實是非常常見的設計,你可以在很多模組都可以看到...
連續寫了好多天的文章,好想放個假出去旅行。開始上網查訂房資訊,查完幾個選項之後貼給同行朋友加權評估一下,最後存進試算表裡就完成!這總沒有資料工程或是程式的戲了...
戰鬥前言 各位到這邊之後已經跨入了工程師的門檻在前面學會的思考模式以後我們暫緩介紹程式碼的荼毒!? 今天會講解的主要式第二周的學習目標: 重點目標1 - 函數...
今日目標 今天會講到模組化的概念我相信如果是開發有一定經歷的工程師一定對Moudle(模組)開發很熟練~ 如果想回顧第二週進階工程師的目標也可以回到這頁喔[D...
在之前的學習中,我們探討了如何優化應用的性能和結構。隨著應用的增大,將所有功能集中在一個組件裡變得不夠靈活,因此,我們將進一步模組化應用功能,讓結構更加清晰,便...
在上一篇文章中,我們介紹了如何通過 SASS 和 react-i18next 結合,實現 React 應用的主題和語言切換功能,讓用戶可以自由切換語言和主題風格...
在前一篇文章中,我們介紹了如何利用 ThemeProvider 和自定義 Hook useTheme 來集中管理應用的主題狀態。隨著應用規模的擴大,我們開始管理...
在上一篇文章中,我們介紹了如何使用模組化設計來簡化應用中的主題切換和語言切換功能。通過將按鈕元件(ThemeButton 和 LangButton )分離,我們...