位元詩人 [Windows] 程式設計教學

本系列文章介紹 Windows 平台上的程式設計相關議題。

本文的出發點並不是單純介紹微軟官方的開發方式,而是從一般程式設計與系統開發的觀點來理解 Windows 的設計與工具鏈。部分內容也會與 Unix 系統進行比較,讓讀者能從不同角度理解 Windows 程式設計的環境與特色。

本系列的內容源於作者在 Windows 上重新建立開發環境的過程。為了讓開發流程更接近常見的開源軟體生態,文中會介紹一些常見的開發工具,例如 MSYS2、Cygwin、WSL、vcpkg 等。

透過這些工具,可以在 Windows 上建立較為完整的開發環境,同時也能讓程式設計者在不同作業系統之間切換時,保有相對一致的開發流程。

Windows 雖然是封閉原始碼的系統,但作為目前最普遍的桌面平台之一,程式設計者在實務上往往仍需要與其互動。因此,本系列也會整理與 Windows 平台相關的程式設計知識與工具。

[Windows] 程式設計教學:用 vcpkg 安裝 C 或 C++ 函式庫

當時我把 vcpkg 當作「Windows 上的套件管理工具」,但後來回頭看,這樣的理解其實不太完整。 vcpkg 不只是套件管理器,而是 繼續閱讀

[Windows] 程式設計教學:以 MinGW 和 MSYS2 建置 C 和 C++ 開發環境

MinGW + MSYS 是 GCC 在 Windows 上的移植品,而 MSYS2 則是新版本的 MinGW。對於習慣自由軟體的程式設計者來說,MSYS2 是值得考慮的 C 和 C++ 開發環境。 繼續閱讀

[Windows] 程式設計教學:發佈基於 MSYS2 的應用程式

當應用程式寫完後,會將該程式移到異地執行,這時候就牽涉到部署程式的議題。部署程式的方式會因平台而異,本文介紹在 Windows 上部署自 MSYS2 環境編譯出來的執行檔的方式。 繼續閱讀

[Windows] 程式設計教學:使用 Golang 取代 Python 當成腳本語言 (Scripting Language)

雖然 Go 語言是編譯語言,但 Go 語言使用起來卻如同直譯語言般簡單,因此可用來當成另一個自動化日常事務的腳本語言。本文介紹以 Go 語言做為腳本語言的優缺點,並展示一個簡短的例子。 繼續閱讀

[Windows] 程式設計教學:在 Windows 上使用 awk

awk 和 grep 類似,本質上都是過濾文字串流的過濾器。但 awk 具有完整的程式語言且內建處理欄位的能力,而 grep 缺乏這些特性。本文介紹在 Windows 上使用 awk 的方式。 繼續閱讀

[Windows] 程式設計教學:在 Windows 上使用 Perl

相對於如日中天的 Python,Perl 正在式微。所以,本文不會深入地介紹 Perl,而會假定程式設計者在 Windows 上使用 Perl 寫一行程式和簡短的命令稿為目標來學習 Perl。 繼續閱讀