iT邦幫忙

模組化設計相關文章
共有 27 則文章
鐵人賽 Software Development DAY 2
模組化設計 系列 第 2

技術 Day02 - 什麼是模組和模組化設計

這是系列文的第一篇,首先讓我們釐清相關的專有名詞開始。 模組 (module) 從維基百科上面的定義,我們可以條列出幾個重點: 模組是由數個「基礎功能元件」組...

鐵人賽 Software Development DAY 16
模組化設計 系列 第 16

技術 Day16 - 管理原始碼的解決方案 Monorepo 和 Polyrepo

管理模組化的原始碼的兩種策略 Monorepo 和 Polyrepo Monorepo Monorepo 是指在一個 repo 中,管理多個模組。 截至...

鐵人賽 Software Development DAY 6
模組化設計 系列 第 6

技術 Day06 - 常見的 JS 模組模式 (Pattern)

Javascript 並不像其他程式語言有內建命名空間 (namespace) 的概念,也沒有 private 和 public 語法,但你還是可以透過結構化的...

鐵人賽 Software Development DAY 23
模組化設計 系列 第 23

技術 Day23 - 模組目錄結構設計

- bin / script - doc - example - src / lib - dist / build - test bin 目錄 集中放一些執...

鐵人賽 Software Development DAY 17
模組化設計 系列 第 17

技術 Day17 - yarn workspace

在前面的篇幅,我們有提到如果希望能再不公開前,讓子模組互相使用到最新的更動,可以透過 npm link 的方式,將子模組彼此之前連結起來。 但是如果模組很多的話...

鐵人賽 Software Development DAY 5
模組化設計 系列 第 5

技術 Day05 - 模組化原則 - API 優先的設計導向

對一個模組而言,好的 API 設計是非常重要的,需要考慮到很多細節,例如: API 的一致性 當你公開 release 你的模組後,你就得考量向後相容的問題,你...

技術 我的第一個RWD網頁

開始之前先送上菜雞的code 這是我第一次實作RWD的網頁,又因為最近同步在看Bootstrap。所以起初覺得很簡單,畢竟Bootstrap打一下md或lg,好...

鐵人賽 Software Development DAY 1
模組化設計 系列 第 1

技術 Day01 - 序

我會想寫這個主題的原因是希望透過 IT 邦幫忙鐵人賽,將當初因議程時間限制而刪減的內容有機會重現天日。 30 篇的文章會分成三大部分 理論基礎 模組與模組化...

技術 我遇到的RWD網頁難題

上次文章終於迎來續集 我的第一個RWD網頁 這次的網頁練習跟上次的網頁是同系列的,不過這次可是有記起上次的教訓。也第一次使用了SCSS和GitHub。(這部分之...

鐵人賽 Software Development DAY 14
模組化設計 系列 第 14

技術 Day14 - 打照自己的模組注意事項

當你要打照自己的模組時,除了要注意設計自己的模組之外,一定也會使用到其他外部模組,在選用模組時,需要考量未來使用你設計的模組的使用者執行環境是哪裡。 如果你的執...

鐵人賽 Software Development DAY 12
模組化設計 系列 第 12

技術 Day12 - 最簡單的起手式

模組一開始怎麼界定模組範圍是最困難的,最簡單的方式就是先盡可能切出最小介面,能不公開的就先都不要公開,等到有確定的需求後,再開出新的 API。 以小模組來說,模...

鐵人賽 Software Development DAY 9
模組化設計 系列 第 9

技術 Day09 - ECMAScript 6 模組規範

ESM 全名叫 EcmaScript Module,提供了更簡潔的的語法,支援靜態載入模組、有助於靜態檢查、效能優化等等。 目前處於 Plan for New...

鐵人賽 Software Development DAY 11
模組化設計 系列 第 11

技術 Day11 - Module Loader

Module Loader 通常是指某個函式庫,例如 RequireJS 和 SystemJS,我們可以透過 Module Loader 來加載使用 AMD 或...

鐵人賽 Software Development DAY 25
模組化設計 系列 第 25

技術 Day25 - 一個好的模組應該要提供的其他資訊

CI 執行結果 常見 Open source 的模組,都是使用這兩套 CI 系統。 Travis .travis.yml language: node_js...

鐵人賽 Software Development DAY 10
模組化設計 系列 第 10

技術 Day10 - Module Bundler

前面我們介紹了多種模組格式,那如果格式不同怎麼辦?這時候我們就可以使用,模組打包工具來幫我們轉換。 模組打包工具有非常多種選擇: Webpack https...

技術 在任何雲端上運行:雲端的可移植性你有考慮過嗎?

雲端可移植性是建立可擴展、有彈性、雲端原生應用程式的策略。談到雲原生,通常也會隱含地考慮到雲的可移植性。雲端原生是一種應用程式開發和部署架構方法,可最大限度地利...

鐵人賽 Software Development DAY 18
模組化設計 系列 第 18

技術 Day18 - lerna.js 基本操作

lerna init 初始化,並選擇版號管理模式 fixed 模式 lerna init { "app-api-server": &q...

鐵人賽 Software Development DAY 15
模組化設計 系列 第 15

技術 Day15 - 切割模組注意事項

如果模組越來越大的時候,就必須要開始思考怎麼切割模組了,在切模組的過程中,我們將遇到一些挑戰如下: 那原始碼怎麼辦?repo 也要切開來嗎? 版號管理呢? 切...

鐵人賽 Software Development DAY 26
模組化設計 系列 第 26

技術 Day26 - 確保你的相依模組安全性

就算你的模組最近沒有要先增功能或 Bug 要修,但也要盡量一段時間後,將相依版本更新到最新。一方面是考量可以即使更新到相依模組修復的 bug,另一個考量是避免版...

鐵人賽 Software Development DAY 13
模組化設計 系列 第 13

技術 Day13 - 模組的預設參數設計

前一篇我們有提到 koa-router 提供的建構子是可以帶值的,常見用途就是讓使用者可以彈性的覆蓋預設參數,這其實是非常常見的設計,你可以在很多模組都可以看到...

鐵人賽 AI/ ML & Data DAY 10

技術 《資料與程式碼的交鋒》Day 10-程式碼模組化

連續寫了好多天的文章,好想放個假出去旅行。開始上網查訂房資訊,查完幾個選項之後貼給同行朋友加權評估一下,最後存進試算表裡就完成!這總沒有資料工程或是程式的戲了...

鐵人賽 Python DAY 9

技術 [Day8] 第二周 - 脫離新手,朝向工程師之路的開端

戰鬥前言 各位到這邊之後已經跨入了工程師的門檻在前面學會的思考模式以後我們暫緩介紹程式碼的荼毒!? 今天會講解的主要式第二周的學習目標: 重點目標1 - 函數...

鐵人賽 Python DAY 11

技術 [Day10] 第二週 - 進階工程師的開端 - 模組化程式設計(Modular programming)

今日目標 今天會講到模組化的概念我相信如果是開發有一定經歷的工程師一定對Moudle(模組)開發很熟練~ 如果想回顧第二週進階工程師的目標也可以回到這頁喔[D...

鐵人賽 JavaScript DAY 11

技術 Day 11: 用 React Router 實現頁面導航

在之前的學習中,我們探討了如何優化應用的性能和結構。隨著應用的增大,將所有功能集中在一個組件裡變得不夠靈活,因此,我們將進一步模組化應用功能,讓結構更加清晰,便...

鐵人賽 JavaScript DAY 6

技術 Day 6:基礎模組化設計優化 React 應用

在上一篇文章中,我們介紹了如何通過 SASS 和 react-i18next 結合,實現 React 應用的主題和語言切換功能,讓用戶可以自由切換語言和主題風格...

鐵人賽 JavaScript DAY 8

技術 Day 8 :優化 Context 重繪,提升 React 性能

在前一篇文章中,我們介紹了如何利用 ThemeProvider 和自定義 Hook useTheme 來集中管理應用的主題狀態。隨著應用規模的擴大,我們開始管理...

鐵人賽 JavaScript DAY 7

技術 Day 7:進階模組化設計之 ThemeProvider 應用

在上一篇文章中,我們介紹了如何使用模組化設計來簡化應用中的主題切換和語言切換功能。通過將按鈕元件(ThemeButton 和 LangButton )分離,我們...