Author Image

Michael Chen 的技術文件

程式設計、開放原始碼、技術雜談

Cover image

若物件有進行封裝,除了透過公開介面外,我們無法更動該物件內部的狀態。C 語言不強調封裝的概念,所以我們要重新思考封裝在程式碼中的意義。封裝的目的是資訊隱藏,也就是說,只提供最少量的必要資訊,其他的部分則不開放給外部程式。 繼續閱讀

Cover image

藉由語音合成技術,就不需要為每段文字預錄語音檔案,可透過電腦運算即時發聲。由於語音合成算是相對困難的技術,通常都是透過付費 API 來取得這項特性,隨使用量付費。現在瀏覽器也內建這項技術了,本文會介紹如何使用網頁語音合成 API。 繼續閱讀

Cover image

運算子可執行一些基本的運算,會透過符號而非函式呼叫來使用。一般來說,運算子無法再拆分成更細的項目,所以視為程式語言的基本指令。本文介紹 Perl 的運算子。 繼續閱讀

Cover image

真正的物件,要有狀態和行為間的連動。狀態以資料的形式儲存在物件的屬性上,行為則是透過函式來實作。C 語言並沒有真正的物件,只能撰寫在精神上貼近物件的函式。在本文中,我們會以平面座標中的點為例,展示兩種物件的寫法。 繼續閱讀

Cover image

現在 jQuery 已經不是網頁前端必備的函式庫了,為了使用 Bootstrap 就掛著 jQuery 其實是在浪費網頁頻寬。在本文中,我們介紹把 jQuery 移出 Bootstrap,但 Bootstrap 仍可繼續運作的方式。 繼續閱讀

Cover image

藉由迭代控制結構,程式設計者可以有效率地重覆執行特定程式碼,不需要重覆撰寫相同的代碼。本文介紹 Pascal 的迭代控制結構。 繼續閱讀

Cover image

雖然 C 語言沒有直接支援物件導向程式的語法,但我們可以在一些真實世界的專案看到具有物件導向思維的 C 程式碼。本文介紹以 C 語言撰寫具有物件導向思維的程式碼。 繼續閱讀

Cover image

在本文中,我們介紹 Deno 程式設計的基本概念。 繼續閱讀

Cover image

利用選擇控制結構,程式設計者可以改變程式運行的順序,決定特定程式碼區塊是否要執行。本文介紹 Pascal 中可用的選擇控制結構。 繼續閱讀

Cover image

寫 Lisp 還是 Emacs 最對味。雖然現在使用 Emacs 的程式設計者逐漸變少,SLIME 在 Common Lisp 開發工具中算是整合得不錯的。許多 Common Lisp 的教學資源還是會提到 SLIME,所以筆者特地寫了一篇文章來介紹這個開發工具。 繼續閱讀