2024-08

作業系統

macOS中如何掛戴Linux, Windows硬碟

各種作業系統都有自已的檔案資料表 (File System),每個硬碟都必須要建立一個資料表才能存取資料。例如大家熟知的 Windows98/DOS 的 FAT16/FAT32 (File Allocation Table),已使用了好幾十......
程式設計

Jest 中 jest.fn() 與 jest.spyOn() 的差別

依照下方原文的說明,簡而言之,spyOn 是針對既存的 Object,fn 是針對一般的 funtion 做 mock 假資料。且使用 spyOn 可以去追蹤該物件的函數被呼叫的次數。比較原始設計的最大不同處,是「目的」與「使用對象」spy......
程式設計

VueJS MVVM 模型與 Pure HTML5 的比較

Vue.js 與 Native HTML5 的不同點現在有很多方法和框架可以建立網頁前端系統,例如 React、AngularJS、Vue.js 等等。使用原生的 HTML5 與 JavaScript 絕對可以建立一個系統,但通常使用一個好......
程式設計

比較 JavaScript 傳統函式 function 與箭頭函式 arrow function

箭頭函式 arrow function 是 ES6 標準中新加入的語法,不單單只是語法上的不同,內部結構也是不一樣的。目的是要解決一些傳統函式在實務的問題,其屬於 Function 物件。傳統函式 functionfunction myFu......
程式設計

TypeScript Type Safety 型別安全 – as unknown as MyType 與型別檢查 is MyType 是什麼意思 What is Type Safety and Type Guard in TypeScript

TypeScript 是 JavaScript 的前置語言,使用時可以像強型態替 JavaScript 變數指定型態並於 build 後轉成現代 JavaScript 程式碼 (例如 ES6)。因為 TypeScript 的 Type Sa......
程式設計

Jest TypeScript mock funtion 假函式 以 mysql pool.query 為例

對象函式例如要測試的對象函式為 db-access.ts 裡的 myFetch(),其內部利用 mysql 套件的 pool.query 函式 // db-access.tsimport { MysqlError, Pool } from ......
程式設計

Jest TypeScript常用的 jest.config.js 設定

下列是筆者使用 Jest + TypeScript 時常用的設定檔 <rootDir>/jest.config.js屬性中若路徑只寫到目錄而沒有檔案的話,例如 testPathIgnorePatterns: , 表示 /fake 目錄裡所有......
程式設計

從零開始 Nuxt 3 – nuxt.js

有別於 Vue 3 (vue.js),Nuxt 是另一個包裝 vue.js 的一個框架,除了保有 vue.js 的各種方便功能還可以自動引入 components 元件、整合 server-side rendering (後端繪圖) 等讓開......
程式設計

JavaScript 的先鋒者們 – Netscape NodeJS

JavaScript 1.0JavaScript 1.0 是由 Netscape 公司的 Brendan Eich 在 1995 年時為著名的瀏覽器 Netscape 所發明的。Java 是那個時代非常流行的語言,所以 Netscape 當......
程式設計

Jest TypeScript catch 例外錯誤的測試

使用 Jest 測試類別裡的函式時,假設對象函式內有另一個函式呼叫時會產生錯誤,測試時就必須要包含到這個情境。並合乎 Mock, Give, 與 Expect 三個階段邏輯。class usecase { constructor() { c......
程式設計

VueJS Components 元件間溝通傳遞值的方法

VueJS中,可以想成每一個 .vue 檔案都是一個物件,負責 UI 畫面上的一個大區塊與小區塊,物件之間彼此有父子層級的階層性。這邊以 Vue2 與 Vue3 做說明。語法糖標準的 Vue 元件傳值是採用一進一出的方式,傳入子元件用 :p......
程式設計

開始使用 VueJS – MVVM 架構

有兩種方式可以使用 VueJs 框架在 VueJS 的 EcoSystem 中,有非常多的外掛、套件與開發應用可以自行安裝,我們使用最為便利的 @vue/cli 套件,因為它已經結合 webpack, minitify 這類打包與壓縮等開發......
程式設計

Jest for TypeScript 基本型與迴圈測試

利用 Jest 替後台專案寫單元測試時,其實常有固定的模式。下面將分享 TypeScript server 架起來的專案常用到的測試模式基礎型為了做單元測試,在寫物件導向程式時,若兩個類別有依賴關係通常就會使用 class injectio......