-
現代 C 語言程式設計電子書
試讀本書 如果讀者想試讀本書,可在以下連結下載試讀本: PDF 試讀本:適用於 Acrobat Reader 等電子書閱讀軟體 ePub 試讀本:適用於 Kobo eReader、mooInk eReader 等電 -
[C 語言] 程式設計教學:多型 (Polymorphism),使用函式指標
在物件導向設計中,多型 (polymorphism) 是將同一個界面套用在不用的類別上。有以下數種實踐方式: Ad hoc polymorphism:在許多程式中使用函式重載 (function overloading) 來實 -
[Common Lisp] 網頁程式設計教學:Parenscript 入門
前言 Parenscript 是一個基於 Common Lisp 的轉換器 (translator) 和領域專用語言 (domain-specific language),可將 Common Lisp 程式碼 (註) 轉為等效的 JavaScript 程式碼。Parenscript 的目的是為了 -
多平台 Objective-C 程式設計電子書
試讀本書 如果讀者想試讀本書,可在以下連結下載試讀本: PDF 試讀本:適用於 Acrobat Reader 等電子書閱讀軟體 ePub 試讀本:適用於 Kobo eReader、mooInk eReader 等電 -
[Perl] 程式設計教學:隨語境 (Context) 改變程式的行為
前言 Perl 程式會根據程式執行時當下的語境來決定其行為,這算是一種 Perl 程式的內隱規則。在這些語境中,比較重要的是純量語境和串列語境,其他的稍微知道一 -
[Windows] 程式設計教學:基本概念
前言 當我們在談論 Windows 程式設計時,可能是把 Windows 當成執行程式的運行環境,也有可能是把 Windows 當成撰寫程式的開發環境。 本文會側重後者的介紹,因為程式設計學習 -
[Perl] 程式設計教學:陣列 (Array) 和串列 (List)
前言 Perl 的陣列 (array) 是一種線性的容器,以數字做為索引,可儲存異質資料。串列則是一序列的資料。這兩者有一些關連,本文介紹 Perl 陣列和串列。 陣列 (Array) vs 串列 (List) -
[Common Lisp] 程式設計教學:相關的開發工具
前言 對於撰寫程式來說,編譯器 (compiler) 和編輯器 (editor) 算是最基本的開發工具。一開始先熟悉這兩種工具就可以開始學習程式設計。 除此之外,各式各樣的開發工具在不 -
[Objective-C] 程式設計教學:用 KDevelop 管理 Objective-C 專案
前言 正規的 Objective-C 開發環境圍繞在蘋果平台上,在非蘋果的平台上能用的開發工具甚少。雖然可以用 VSCode 寫 Objective-C 程式,VSCode 畢竟是編輯器而非 IDE。本文介紹 -
[技術雜談] 在 Windows 上編譯及執行 Swift 程式
前言 Swift 長期定位為蘋果平台專用語言,但現在也可以在 Windows 和一些 GNU/Linux 發行版上使用了。本文介紹在 Windows 上編譯及執行 Swift 程式的方式。 系統需求 Windows 10 Visual C++ v14.25 以上 Windows Universal C -
[Objective-C] 程式設計教學:以 Docker 容器編譯並執行 Objective-C 程式
前言 由於 Objective-C 在非蘋果平台上不是主流語言,不一定每個 GNU/Linux 發行版都會有預編好的 Objective-C 編譯器和 GNUstep 函式庫。編譯 Objective-C 編譯器 (GCC 或 Clang) 和 GNUstep 都是複雜且耗時的任務,難以自 -
[Objective-C] 程式設計教學:具有型別安全的多型
前言 由於 Objective-C 有萬用物件型別 id,而且訊息也是在程式執行期才動態 binding,即使不用多型的手法,也可以自然地讓 Objective-C 程式具有多型的特性。 但在預設 -
[C 語言] 程式設計教學:如何在終端機中使用 Visual C++
前言 Visual Studio 內部的 C 編譯器為 cl.exe,微軟網站有 cl.exe 參數等相關資料 (像是這裡)。 在大部分情形下,程式設計者會透過 Visual Studio 間接使用此編譯器,甚少直接 -
[C 語言] 程式設計教學:在 Windows 上建立 C 語言開發環境
前言 比起 Unix 或類 Unix 系統,Windows 對於 C 語言的原生支援較薄弱,缺乏單一最佳方案。目前來說,有以下四種方案: Visual C++ Cygwin WSL (Windows Subsystem for Linux) (Windows 10 限定) MinGW + MSYS -