A. Linux C編程從初學到精通的目 錄
第1部分 基礎篇
第1章 Linux系統概述 1
1.1 什麼是Linux 2
1.2 Linux系統特點及主要功能 2
1.2.1 Linux系統特點 3
1.2.2 Linux系統的主要功能 3
1.3 Linux的內核版本和發行版本 5
1.4 系統的安裝 6
1.4.1 系統安裝前的准備工作 6
1.4.2 從光碟安裝Linux 6
1.4.3 從硬碟安裝Linux 22
1.4.4 在虛擬機下安裝Linux 22
1.5 Shell的使用 27
1.5.1 Shell簡介 27
1.5.2 常見Shell的種類 28
1.5.3 Shell的簡單使用 29
1.5.4 通配符 30
1.5.5 引號 31
1.5.6 注釋符 33
1.6 Linux常用命令 33
1.6.1 與目錄相關的命令 33
1.6.2 與文件相關的命令 34
1.6.3 與網路服務相關的命令 35
1.7 本章小結 35
實戰演練 36
第2章 C語言編程基礎 37
2.1 C語言的歷史背景 38
2.2 C語言的特點 38
2.3 C語言的基本數據類型 39
2.3.1 整型 39
2.3.2 實型 40
2.3.3 字元型 41
2.4 運算符與表達式 43
2.4.1 算術運算符與算術表達式 43
2.4.2 賦值運算符與賦值表達式 44
2.4.3 逗號運算符與逗號表達式 45
2.5 C程序的3種基本結構 46
2.5.1 順序結構 46
2.5.2 選擇結構 47
2.5.3 循環結構 51
2.6 C語言中的數據輸入與輸出 54
2.6.1 字元輸出函數putchar 54
2.6.2 字元輸入函數getchar 54
2.6.3 格式輸出函數printf 54
2.6.4 格式輸入函數scanf 56
2.7 函數 57
2.7.1 函數的定義 57
2.7.2 函數的調用 58
2.7.3 變數的存儲類別 59
2.8 數組 62
2.8.1 一維數組的定義和使用 63
2.8.2 二維數組的定義和使用 64
2.8.3 字元數組和字元串 65
2.8.4 常用字元串處理函數 66
2.9 指針 69
2.9.1 地址和指針 69
2.9.2 指針的定義和使用 70
2.9.3 數組與指針 71
2.9.4 字元串與指針 72
2.9.5 指向函數的指針 72
2.10 結構體和共用體 73
2.10.1 定義和引用結構體 73
2.10.2 結構體數組 74
2.10.3 指向結構體的指針 74
2.10.4 共用體 75
2.10.5 使用typedef定義類型 77
2.11 鏈表 77
2.11.1 鏈表概述 77
2.11.2 建立動態單向鏈表 78
2.11.3 單向鏈表的輸出 80
2.11.4 對單向鏈表的刪除操作 80
2.11.5 對單向鏈表的插入操作 81
2.11.6 循環鏈表 82
2.11.7 雙向鏈表 82
2.12 位運算符和位運算 83
2.12.1 「按位與」運算符(&) 84
2.12.2 「按位或」運算符(|) 84
2.12.3 「取反」運算符(~) 84
2.12.4 「異或」運算符(^) 84
2.12.5 移位運算符(<<和>>) 85
2.12.6 位域 85
2.13 C語言預處理命令 86
2.13.1 宏定義 86
2.13.2 文件包含 87
2.13.3 條件編譯 88
2.13.4 #error等其他常用預處理命令 89
2.14 本章小結 89
實戰演練 89
第3章 vi與Emacs編輯器 91
3.1 vi的使用 92
3.1.1 啟動與退出vi 92
3.1.2 vi的命令行模式 93
3.1.3 vi的插入模式 96
3.1.4 vi的底行模式 96
3.2 vi使用實例 97
3.3 Emacs的使用 100
3.3.1 啟動與退出Emacs 101
3.3.2 Emacs下的基本操作 102
3.4 Emacs使用實例 107
3.5 本章小結 109
實戰演練 109
第4章 gcc編譯器與gdb調試器 110
4.1 gcc編譯器簡介 111
4.2 如何使用gcc 112
4.2.1 gcc編譯初步 112
4.2.2 警告提示功能 114
4.2.3 優化gcc 116
4.2.4 連接庫 119
4.2.5 同時編譯多個源程序 120
4.2.6 管道 120
4.2.7 調試選項 121
4.3 gdb調試器 122
4.3.1 gdb簡介 122
4.3.2 gdb常用命令 123
4.3.3 gdb調試初步 124
4.4 gdb的使用詳解 126
4.4.1 調用gdb 127
4.4.2 使用斷點 127
4.4.3 查看運行時數據 129
4.4.4 查看源程序 133
4.4.5 改變程序的執行 135
4.5 xxgdb調試器簡介 138
4.6 本章小結 139
實戰演練 139
第5章 make的使用和Makefile的編寫 141
5.1 什麼是make 142
5.1.1 make機制概述 142
5.1.2 make與Makefile的關系 144
5.2 Makefile的書寫規則 147
5.2.1 Makefile的基本語法規則 148
5.2.2 在規則中使用通配符 149
5.2.3 偽目標 149
5.2.4 多目標 151
5.2.5 自動生成依賴性 151
5.3 Makefile的命令 152
5.4 變數 154
5.4.1 變數的基礎 154
5.4.2 賦值變數 154
5.4.3 define關鍵字 156
5.4.4 override指示符 156
5.4.5 目標變數和模式變數 157
5.5 常用函數調用 158
5.5.1 字元串處理函數 158
5.5.2 文件名操作函數 162
5.5.3 循環函數 164
5.5.4 條件判斷函數 165
5.5.5 其他常用函數 166
5.6 隱式規則 168
5.6.1 隱式規則舉例 168
5.6.2 隱式規則中的變數 169
5.6.3 使用模式規則 170
5.7 本章小結 173
實戰演練 173
第2部分 提高篇
第6章 文件I/O操作 174
6.1 Linux文件系統簡介 175
6.1.1 Linux的文件系統結構 175
6.1.2 文件類型 176
6.1.3 文件訪問許可權 179
6.2 基於文件描述符的I/O操作 179
6.2.1 文件描述符 180
6.2.2 標准輸入、標准輸出和標准出錯 180
6.2.3 文件重定向 181
6.2.4 文件的創建、打開與關閉 182
6.2.5 文件的定位 186
6.2.6 文件的讀寫 188
6.3 文件的屬性操作 192
6.3.1 改變文件訪問許可權 192
6.3.2 改變文件所有者 193
6.3.3 重命名 193
6.3.4 修改文件長度 194
6.4 文件的其他操作 195
6.4.1 stat、fstat和lstat函數 195
6.4.2 p和p2函數 196
6.4.3 fcntl函數 197
6.4.4 sync和fsync函數 197
6.5 特殊文件的操作 198
6.5.1 目錄文件的操作 198
6.5.2 鏈接文件的操作 201
6.5.3 管道文件的操作 204
6.5.4 設備文件 204
6.6 本章小結 205
實戰演練 205
第7章 基於流的I/O操作 206
7.1 流與緩存 207
7.1.1 流和FILE對象 207
7.1.2 標准輸入、標准輸出和標准出錯 207
7.1.3 緩存 207
7.1.4 對緩存的操作 210
7.2 流的打開與關閉 212
7.2.1 流的打開 212
7.2.2 流的關閉 214
7.2.3 流關閉前的工作 216
7.3 流的讀寫 216
7.3.1 基於字元的I/O 217
7.3.2 基於行的I/O 220
7.3.3 直接I/O 222
7.3.4 格式化I/O 224
7.4 本章小結 226
實戰演練 227
第8章 進程式控制制 228
8.1 進程的基本概念 229
8.1.1 Linux進程簡介 229
8.1.2 進程與作業 230
8.1.3 進程標識 230
8.2 進程式控制制的相關函數 232
8.2.1 fork和vfork函數 232
8.2.2 exec函數 237
8.2.3 exit和_exit函數 242
8.2.4 wait和waitpid函數 245
8.2.5 進程的一生 251
8.2.6 用戶ID和組ID 251
8.2.7 system函數 253
8.3 多個進程間的關系 255
8.3.1 進程組 255
8.3.2 會話期 256
8.3.3 控制終端 257
8.4 本章小結 259
實戰演練 259
第9章 信號 260
9.1 Linux信號簡介 261
9.1.1 信號的基本概念 261
9.1.2 信號處理機制 265
9.2 信號操作的相關函數 267
9.2.1 信號的處理 267
9.2.2 信號的發送 274
9.2.3 信號的阻塞 282
9.2.4 計時器與信號 284
9.3 本章小結 286
實戰演練 287
第10章 進程間通信 288
10.1 進程間通信簡介 289
10.2 管道 290
10.2.1 管道的概念 290
10.2.2 管道的創建與關閉 291
10.2.3 管道的讀寫 292
10.3 命名管道 297
10.3.1 命名管道的概念 297
10.3.2 命名管道的創建 297
10.3.3 命名管道的讀寫 299
10.4 消息隊列 303
10.4.1 消息隊列的概念 303
10.4.2 消息隊列的創建與打開 305
10.4.3 消息隊列的讀寫 306
10.4.4 獲得或設置消息隊列屬性 308
10.5 共享內存 312
10.5.1 共享內存的概念 312
10.5.2 共享內存的相關操作 313
10.6 信號量 318
10.6.1 信號量的概念 319
10.6.2 信號量集的相關操作 320
10.7 本章小結 325
實戰演練 326
第11章 網路編程 327
11.1 網路編程的基礎知識 328
11.1.1 計算機網路體系結構 328
11.1.2 傳輸控制協議TCP 333
11.1.3 用戶數據報協議UDP 335
11.1.4 客戶機/伺服器模式 336
11.2 套介面編程基礎 336
11.2.1 什麼是套介面 337
11.2.2 埠號的概念 338
11.2.3 套介面的數據結構 338
11.2.4 基本函數 340
11.3 TCP套介面編程 343
11.3.1 TCP套介面通信工作流程 343
11.3.2 TCP套介面Client/Server程序實例 356
11.4 UDP套介面編程 360
11.4.1 UDP套介面通信工作流程 360
11.4.2 UDP套介面Client/Server程序實例 362
11.5 原始套介面編程 365
11.5.1 原始套介面的創建 365
11.5.2 原始套介面程序實例 365
11.6 本章小結 376
實戰演練 376
第12章 Linux圖形界面編程 377
12.1 Linux下的圖形界面編程簡介 378
12.1.1 Qt簡介 378
12.1.2 GTK+簡介 378
12.2 界面基本元件 381
12.2.1 一個簡單的例子 381
12.2.2 窗口 383
12.2.3 標簽 385
12.2.4 按鈕 386
12.2.5 文本框 387
12.3 界面布局元件 389
12.3.1 表格 390
12.3.2 框 393
12.3.3 窗格 395
12.4 其他常用元件 398
12.4.1 進度條、微調按鈕、組合框 398
12.4.2 單選按鈕、復選按鈕 402
12.4.3 下拉菜單 404
12.5 信號與回調函數 406
12.6 本章小結 409
實戰演練 409
第3部分 實戰篇
第13章 設計Linux下的計算器 411
13.1 軟體功能分析 412
13.2 程序模塊的劃分 413
13.3 軟體的具體實現 415
13.3.1 頭文件 415
13.3.2 十六進制界面顯示函數 416
13.3.3 十進制界面顯示函數 417
13.3.4 八進制界面顯示函數 418
13.3.5 二進制界面顯示函數 419
13.3.6 進制間轉換函數 420
13.3.7 信號處理模塊 423
13.3.8 主函數 432
13.4 軟體使用效果演示 438
13.5 本章小結 439
第14章 Linux平台下聊天軟體的設計 440
14.1 軟體功能概述 441
14.1.1 伺服器端功能需求 441
14.1.2 客戶端功能需求 442
14.1.3 錯誤處理需求 442
14.2 Glade集成開發工具簡介 443
14.3 軟體功能模塊劃分 444
14.3.1 伺服器功能模塊劃分 444
14.3.2 客戶端功能模塊劃分 445
14.3.3 消息標識的定義 445
14.3.4 消息結構體的設計 446
14.4 伺服器程序的具體實現 447
14.4.1 伺服器消息處理流程 447
14.4.2 伺服器主要函數和變數 448
14.4.3 伺服器消息處理模塊的設計與實現 449
14.4.4 伺服器數據存儲的方法 450
14.4.5 用戶注冊流程 450
14.5 客戶端程序的具體實現 451
14.5.1 客戶端操作流程 451
14.5.2 客戶端發送和接收消息流程 451
14.5.3 客戶端主要函數和變數 452
14.5.4 客戶端功能模塊的設計與實現 453
14.6 聊天軟體使用效果演示 455
14.7 本章小結 459
第15章 Linux遠程管理工具的設計 460
15.1 軟體功能概述 461
15.1.1 Webmin簡介 461
15.1.2 軟體總體設計 461
15.2 伺服器端程序設計 463
15.2.1 伺服器端工作流程 463
15.2.2 系統用戶管理操作 464
15.2.3 系統用戶組的管理操作 466
15.2.4 系統服務啟動管理 468
15.2.5 DNS管理操作 469
15.2.6 Apache服務管理操作 471
15.2.7 FTP服務管理操作 474
15.3 客戶端程序 475
15.3.1 連接界面 475
15.3.2 主界面 477
15.4 本章小結 479
第16章 Linux下簡易防火牆軟體的設計 480
16.1 Netfilter基礎 481
16.1.1 什麼是Netfilter 481
16.1.2 Netfilter的HOOK機制 482
16.1.3 HOOK的調用 485
16.1.4 HOOK的實現 486
16.1.5 IPTables簡介 488
16.1.6 Netfilter可以實現的控制功能 489
16.2 軟體設計概述 491
16.2.1 軟體整體框架 491
16.2.2 管理端的設計 492
16.2.3 控制端的設計 493
16.3 用Netfilter設計控制端功能模塊 495
16.3.1 ICMP管理控制模塊 495
16.3.2 FTP管理控制模塊 497
16.3.3 HTTP管理控制模塊 499
16.3.4 模塊的編譯、載入與卸載 499
16.4 軟體功能測試 501
16.5 本章小結 503
第17章 基於Linux的嵌入式家庭網關遠程交互操作平台的設計 504
17.1 嵌入式技術簡介 505
17.1.1 嵌入式系統的概念 505
17.1.2 嵌入式操作系統 506
17.1.3 嵌入式處理器 507
17.2 家庭網關的概念及其網路體系結構 509
17.2.1 智能家庭網路的概念 509
17.2.2 家庭網關的遠程交互操作技術簡介 510
17.2.3 嵌入式家庭網關的網路體系結構 510
17.3 嵌入式家庭網關的開發平台 511
17.3.1 S3C2410微處理器簡介 511
17.3.2 交叉編譯環境的建立 513
17.4 遠程交互平台的設計 515
17.4.1 應用軟體的開發模式 515
17.4.2 嵌入式Web伺服器 516
17.4.3 通用網關介面CGI 519
17.5 Linux下軟體模塊的具體實現 520
17.5.1 登錄驗證模塊 521
17.5.2 串口通信模塊 521
17.5.3 中央空調控制模塊 522
17.5.4 智能水表數據採集模塊 528
17.5.5 試驗結果 528
17.6 本章小結 529
B. GitHub 上有哪些值得推薦的開源電子書
語言無關類
操作系統
鳥哥的Linux私房菜 (簡體)
Linux 系統高級編程
The Linux Command Line (中英文版)
Linux 設備驅動 (第三版)
深入分析Linux內核源碼
UNIX TOOLBOX
Docker中文指南
Docker —— 從入門到實踐
FreeRADIUS新手入門
Mac 開發配置手冊
FreeBSD 使用手冊
Linux 命令行(中文版)
一步步搭建物聯網系統
Nginx開發從入門到精通 (淘寶團隊出品)
Git教程 (本文由 @廖雪峰 創作,如果覺得本教程對您有幫助,可以去 iTunes 購買)
git – 簡易指南
猴子都能懂的GIT入門
Git 參考手冊
Pro Git
Git Magic
GotGitHub
Git Community Book 中文版
Mercurial 使用教程
HgInit (中文版)
沉浸式學 Git
Git-Cheat-Sheet (感謝 @flyhigher139 翻譯了中文版)
GitHub秘籍
NoSQL資料庫筆談 (PDF)
Redis 設計與實現
Redis 命令參考
帶有詳細注釋的 Redis 3.0 代碼
帶有詳細注釋的 Redis 2.6 代碼
The Little MongoDB Book
The Little Redis Book
Neo4j 簡體中文手冊 v1.8
Neo4j .rb 中文資源
MySQL索引背後的數據結構及演算法原理
持續集成(第二版) (譯言網)
讓開發自動化系列專欄
追求代碼質量
selenium 中文文檔
Joel談軟體
約耳談軟體(Joel on Software)
關於瀏覽器和網路的 20 項須知
前端知識體系
瀏覽器開發工具的秘密
Chrome 開發者工具中文手冊
Chrome擴展開發文檔
Grunt中文文檔
移動Web前端知識庫
正則表達式30分鍾入門教程
前端開發體系建設日記
移動前端開發收藏夾
JSON風格指南
HTTP 介面設計指北
前端資源分享(一)
前端資源分享(二)
前端代碼規范 及 最佳實踐
w3school教程整理
大數據/數據挖掘/推薦系統/機器學習相關資源
程序員編程藝術
每個程序員都應該了解的內存知識(譯)【第一部分】
取悅的工序:如何理解游戲 (豆瓣閱讀,免費書籍)
OpenWrt智能、自動、透明翻牆路由器教程
awk程序設計語言
C++ 並發編程指南 (@傅海平ICT)
Linux C編程一站式學習 (宋勁杉, 北京亞嵌教育研究中心)
CGDB中文手冊
100個gdb小技巧
100個gcc小技巧
ZMQ 指南
How to Think Like a Computer Scientist (中英文版)
跟我一起寫Makefile(PDF)
GNU make中文手冊
GNU make 指南
Google C++ 風格指南
C/C++ Primer (by @andycai)
簡單易懂的C魔法
Cmake 實踐 (PDF版)
C++ FAQ LITE(中文版)
C++ Primer 5th Answers
學習CSS布局
通用 CSS 筆記、建議與指導
CSS參考手冊
Emmet 文檔
前端代碼規范 (騰訊alloyteam團隊)
Dart 語言導覽
Fortran77和90/95編程入門
實時 Java 系列
Apache Shiro 用戶指南
使用 Eclipse 和 Java SE 6 創建獨立 Web Services 應用程序
第 1 部分: Web Services 服務端應用程序
第 2 部分: Web 服務客戶端應用程序
JavaServer Faces 1.2 入門
第 1 部分: 構建基本應用程序
第 2 部分: JSF 生命周期、轉換、檢驗和階段監聽器
用 Eclipse Europa 進行 Web 開發
第 1 部分: Eclipse Java EE
第 2 部分: PHP 開發工具
第 3 部分: Ruby Development Toolkit 和 RadRails
使用 JavaServer Faces 構建 Apache Geronimo 應用程序
第 1 部分: 使用 Eclipse 和 Apache MyFaces Core 構建基本的應用程序
第 2 部分: 在 JavaServer Faces 中使用 Tomahawk
第 3 部分: 使用 ajax4jsf 添加 Ajax 功能
第 4 部分: 使用 Apache Trinidad 組件擴展 JSF
第 5 部分: 將 JSF 應用程序與 Spring 集成
Apache Geronimo 和 Spring 框架
第 1 部分: 開發方法學
第 2 部分: 構建第一個應用程序
第 3 部分: 集成 DAO 與 ORM
第 4 部分: 混合使用 Spring AOP 和 Spring Web Flow
第 5 部分: Spring MVC
第 6 部分: Spring MVC:使用 Web 視圖技術
終極 mashup —— Web 服務和語義 Web
第 1 部分: 使用與組合 Web 服務
第 2 部分: 管理 Mashup 數據緩存
第 3 部分: 理解 RDF 和 RDFs
第 4 部分: 創建本體
第 5 部分: 切換 Web 服務
Jersey 2.x 用戶指南
MyBatis中文文檔
Google JavaScript 代碼風格指南
Airbnb JavaScript 規范
JavaScript 標准參考教程(alpha)
Javascript編程指南 (源碼)
javascript 的 12 個怪癖
JavaScript 秘密花園
JavaScript核心概念及實踐 (PDF) (此書已由人民郵電出版社出版發行,但作者依然免費提供PDF版本,希望開發者們去購買,支持作者)
《JavaScript 模式》翻譯,此書中文版有售,但是紙質書翻譯的還沒有這個版本翻譯的好
命名函數表達式探秘 (注:原文由為之漫筆翻譯,原始地址無法打開,所以此處地址為我博客上的備份)
學用 JavaScript 設計模式 (開源中國)
深入理解JavaScript系列
ECMAScript 6 入門 (作者:阮一峰)
jQuery
jQuery 解構
簡單易懂的JQuery魔法
How to write jQuery plugin
Node.js
Node入門
七天學會NodeJS
Nodejs Wiki Book (繁體中文)
express.js 中文文檔
koa 中文文檔
使用 Express + MongoDB 搭建多人博客
Express框架
nodejs文檔
Node.js 包教不包會
Learn You The Node.js For Much Win! (中文版)
Node debug 三法三例
underscore.js
Underscore.js中文文檔
backbone.js
backbone.js入門教程 (PDF)
Backbone.js入門教程第二版
Developing Backbone.js Applications(中文版)
AngularJS
AngularJS最佳實踐和風格指南
AngularJS中譯本
AngularJS入門教程
構建自己的AngularJS
在Windows環境下用Yeoman構建AngularJS項目
zepto 簡明中文手冊
Sea.js
Hello Sea.js
CoffeeScript
CoffeeScript Cookbook
The Little Book on CoffeeScript中文版
ExtJS
Ext4.1.0 中文文檔
Chrome擴展及應用開發
JavaScript入門教程
PHP調試技術手冊(PDF)
XDebug 2中文手冊(譯) (CHM)
PHP之道
PHP 最佳實踐
PHP安全最佳實踐
深入理解PHP內核
PHP擴展開發及內核應用
CodeIgniter 用戶指南
Laravel4 中文文檔
Laravel 入門
Symfony2中文文檔 (未譯完)
Phalcon中文文檔(翻譯進行中)
YiiBook幾本Yii框架的在線教程
簡單易懂的PHP魔法
swoole文檔及入門教程
iOS開發60分鍾入門
iOS7人機界面指南
Google Objective-C Style Guide 中文版
iPhone 6 屏幕揭秘
Apple Watch開發初探
馬上著手開發 iOS 應用程序
網易斯坦福大學公開課:iOS 7應用開發字幕文件
Android Design(中文版)
Google Android官方培訓課程中文版
Android學習之路
小白的Python教程
簡明Python教程
零基礎學Python
Python 2.7 官方教程中文版
Python 3.3 官方教程中文版
深入 Python 3
PEP8 Python代碼風格規范
Google Python 風格指南 中文版
Python入門教程 (PDF)
Python的神奇方法指南
笨辦法學 Python (PDF版下載)
Django 文檔中文版
Django 最佳實踐
The Django Book 中文版
web.py 0.3 新手指南
Web.py Cookbook 簡體中文版
Dive Into Python 中文版
Bottle 文檔中文版 (需翻牆)
Flask 文檔中文版
Jinja2 文檔中文版
Werkzeug 文檔中文版
Flask之旅
Introction to Tornado 中文翻譯
Python自然語言處理中文版 (感謝陳濤同學的翻譯,也謝謝 @shwley 聯系了作者)
Python 繪圖庫 matplotlib 官方指南中文翻譯
Scrapy 0.25 文檔
ThinkPython
Ruby 風格指南
Rails 風格指南
笨方法學 Ruby
Ruby on Rails 指南
Ruby on Rails 實戰聖經
Ruby on Rails Tutorial 原書第 2 版 (本書網頁版免費提供,電子版以 PDF、EPub 和 Mobi 格式提供購買,僅售 9.9 美元)
編寫Ruby的C拓展
Ruby 源碼解讀
Shell腳本編程30分鍾入門
Go編程基礎
Go入門指南
學習Go語言 (PDF)
Go Web 編程 (此書已經出版,希望開發者們去購買,支持作者的創作)
Go實戰開發 (當我收錄此項目時,作者已經寫完第三章,如果讀完前面章節覺得有幫助,可以給作者捐贈,以鼓勵作者的繼續創作)
Network programming with Go 中文翻譯版本
實戰 Groovy 系列
一份其實很短的 LaTeX 入門文檔
一份不太簡短的 LATEX 2ε 介紹 (PDF版)
ANSI Common Lisp 中文翻譯版
Lua編程入門
Real World Haskell 中文版
R語言忍者秘笈
Scala課堂 (Twitter的Scala中文教程)
Effective Scala(Twitter的Scala最佳實踐的中文翻譯)
Scala指南
The Swift Programming Language 中文版
Modern Perl 中文版
Perl 程序員應該知道的事
笨辦法學Prolog
Vim中文文檔
笨方法學Vimscript 中譯本
Vim中文文檔
編譯原理(紫龍書)中文第2版習題答案
把《編程珠璣》讀薄
Effective C++讀書筆記
Golang 學習筆記、Python 學習筆記、C 學習筆記 (PDF)
Jsoup 學習筆記
學習筆記: Vim、Python、memcached
圖靈開放書翻譯計劃–C++、Python、Java等
蒂姆·奧萊利隨筆 (由譯言網翻譯,電子版免費)
Octave 入門 (PDF版)
SICP 解題集
精彩博客集合
正則表達式簡明參考