所有文章

選擇標籤

選擇標籤的過濾邏輯

選擇排序

策略模式 (Strategy Pattern)

發布日期: July 22, 2024

最後更新: August 2, 2024

閱讀時間: ~ 8 min

Strategy Pattern
GoF
Behavioral Pattern
Design Pattern
TypeScript

此文章透過計算機運算的例子來介紹策略模式 (Strategy Pattern) 的概念和實作方式,並提供了用 Class 和 Function 兩種方式來實現策略模式,還介紹了如何使用 Lookup Table 管理策略行為,最後則是使用策略模式封裝表單驗證的 Vue 3 Composable 實作方式。

工廠模式 (Factory Pattern)

發布日期: July 17, 2024

最後更新: August 2, 2024

閱讀時間: ~ 10 min

Factory Pattern
Simple Factory Pattern
Factory Method Pattern
Abstract Factory Pattern
GoF
Creational Pattern
Design Pattern
TypeScript

此篇文章用故事的方式介紹了三種工廠模式:簡單工廠模式 (Simple Factory Pattern)、工廠方法模式 (Factory Method Pattern) 和抽象工廠模式 (Abstract Factory Pattern),並透過 TypeScript 實作,希望能幫助讀者更好的理解工廠模式。

單例模式 (Singleton Pattern)

發布日期: July 12, 2024

最後更新: August 2, 2024

閱讀時間: ~ 5 min

Singleton Pattern
Proxy Pattern
GoF
Creational Pattern
Design Pattern
JavaScript

此篇文章介紹了單例模式在 JavaScript 中的實作方式,包含了一般的單例模式、惰性單例模式、ES6 Module 單例模式、用代理模式 (Proxy Pattern) 封裝單例模式等。

使用 VitePress 開發部落格的心得 2 - SEO 篇

發布日期: July 11, 2024

最後更新: July 22, 2024

閱讀時間: ~ 8 min

Blog
VitePress
Vue
SEO
Frontend

在上一篇文章中,我們介紹了如何使用 VitePress 快速建立一個部落格。這篇文章則是分享有關 SEO 的部分,添加了 Title、Description、Sitemap、Canonical URL、OG meta、Twitter cards meta、RSS、Structured data 等等,透過這些方法來提升部落格在搜尋引擎中的排名。

在 Nuxt3 SSR 遇到 Memory leak 的問題與解決方法

發布日期: July 9, 2024

最後更新: July 17, 2024

閱讀時間: ~ 5 min

Nuxt
SSR
Memory leak
i18n
Frontend

前陣子在開發一個 Nuxt3 SSR 的專案,部署後發現伺服器記憶體使用量一直在上升,最後導致伺服器記憶體耗盡,得知問題的當下很納悶,因為專案裡沒有用什麼大量複雜的運算,也沒有用到什麼特別大的資料,而且我們沒有在 Nuxt 內寫後端的程式碼,所以可以確定是前端的問題,但到底是什麼原因造成的呢?這篇文章就是來分享並記錄一下遇到的問題和解決過程。

LeetCode 44. Wailcard Matching

發布日期: March 28, 2024

最後更新: March 28, 2024

閱讀時間: ~ 3 min

LeetCode
Hard
String
Dynamic Programming
Greedy
Recursion
44. Wailcard Matching

LeetCode 44. Wailcard Matching 解題思路分享。

LeetCode 42. Trapping Rain Water

發布日期: March 27, 2024

最後更新: March 27, 2024

閱讀時間: ~ 5 min

LeetCode
Hard
Array
Two Pointers
Dynamic Programming
Stack
Monotonic Stack
42. Trapping Rain Water

LeetCode 42. Trapping Rain Water 解題思路分享。

LeetCode 32. Longest Valid Parentheses

發布日期: March 23, 2024

最後更新: March 23, 2024

閱讀時間: ~ 5 min

LeetCode
Hard
String
Dynamic Programming
Stack
32. Longest Valid Parentheses

LeetCode 32. Longest Valid Parentheses 解題思路分享。

LeetCode 72. Edit Distance

發布日期: March 20, 2024

最後更新: March 23, 2024

閱讀時間: ~ 5 min

LeetCode
Medium
String
Dynamic Programming
72. Edit Distance

LeetCode 72. Edit Distance 解題思路分享。

使用 VitePress 開發部落格的心得 1 - 頁面開發篇

發布日期: March 2, 2024

最後更新: July 11, 2024

閱讀時間: ~ 10 min

Blog
VitePress
Vue
Frontend

學生時期就曾經想過要做一個自己的部落格,但那時被「口試」和「論文」這兩座大山壓著,所以沒什麼心力去實踐。畢業後行程也被我安排的很滿,工作、接案、學習、開發 Open Source 等等,直到去年底離職後才有比較空閒的時間。這段時間我查了一些資料,發現一篇文章叫做「[用 Nuxt Content 重寫我的部落格