iT邦幫忙

第 11 屆 iThome 鐵人賽

DAY 7
1
Software Development

模組化設計系列 第 7

Day07 - 與模組模式的第一次相遇

  • 分享至 

  • xImage
  •  

在我大學畢業後的第一份工作,被派駐到某新竹園區大廠工作時,那是我第一次與模組模式 (Module Pattern) 相遇,當我並不知道它有名字。

當時我們整個專案使用的前端框架是 Ext.js 2.x 版,當時的 Javascript 不像現在這麼被重視,Component 的觀念也還不是潛規則,而且老實說我當時的技術等級,大概也只能看看 sample code 套用並微調而已,壓根沒想過要怎麼比較好的組織程式碼。

直到有一天,我遇到一個 bug 一直解不掉,至於是什麼 bug 我也想不起來了,只依稀記得好像是 this 語法使用上的問題。他讓我看了一段他的程式碼,跟我解釋我遇到的問題是什麼,我彷彿看到了新世界。哇,他也是寫 Ext.js 為什麼那份程式碼,跟我的程式碼長得那麼不一樣,好有結構化,邏輯什麼的都清清楚楚。在我離職後換到第二份工作,我又見到它一次。

因為 NodeJS 的流行,NodeJS 是使用 CommonJS 風格的模組,目前熱門的模組幾乎都是使用 CommonJS 格式,但我偶而還是可以在一些小的 plugin 看到模組模式的身影。

ps. 我剛剛花了 20 分鐘在 Github 上找了一下哪一個模組是用這個風格來撰寫的,但我還沒找到,如果之後我找到了再把網址貼上來。

CommonJS 風格

greeting.js

function greeting(name) {
  return `Hi, ${name}`
}

module.exports = greeting

app.js

const greeting = require('./greeting')
console.log(greeting('ALin'))

上一篇
Day06 - 常見的 JS 模組模式 (Pattern)
下一篇
Day08 - ECMAScript 5 模組規範
系列文
模組化設計30
圖片
  直播研討會
圖片
{{ item.channelVendor }} {{ item.webinarstarted }} |
{{ formatDate(item.duration) }}
直播中

尚未有邦友留言

立即登入留言