第1章 計算機的世界你不懂 1
我是一個綫程 1
初生牛犢 1
漸入佳境 4
虎口脫險 5
江湖再見 8
TCP/IP之大明內閣 9
TCP/IP之大明郵差 12
CPU阿甘 17
啓動 17
運行 18
新裝備:緩存 19
自我提升:流水綫 20
我是一個進程 21
批處理係統 22
多道程序 22
地址重定位 24
分時係統 26
分塊裝入內存 27
虛擬內存:分頁 28
分段+分頁 30
程序的裝載 31
綫程 35
我是一塊硬盤 36
內部結構 37
文件 38
文件的存放 39
管理空閑塊 44
文件係統 45
我是一個鍵盤 46
二等公民 46
總綫和端口 47
輪詢(程序式I/O) 48
中斷 49
DMA 50
數據庫的奇妙之旅 51
無紙化辦公 51
數據的冗餘和不一緻 52
李氏查詢 52
並發訪問 54
原子性問題 56
安全 58
搞清楚Socket 59
從1加到100:一道簡單的數學題挑戰一下你的大腦 64
CPU和內存 64
從1加到100 65
熱身 65
正式齣發 65
一個翻譯傢族的發傢史 68
機器語言 68
匯編語言 69
高級語言 70
編程世界的那把鎖 74
共享變量惹的禍 74
爭搶吧,綫程 75
改進 76
信號量 77
繞不開的加法器 81
遞歸那點事兒 85
第2章 Java帝國 91
Java:一個帝國的誕生 91
C語言帝國的統治 91
反抗 92
一鳴驚人 93
開拓疆土 93
帝國的誕生 94
我是一個Java Class 96
陌生警察 96
刺探信息 97
初識虛擬機 98
快樂假期 102
真相大白 103
持久化:Java帝國反擊戰 104
斷電的威脅 104
數據庫聯閤酋長國 105
錶麵風光的EJB 106
輕量級O/R Mapping框架 106
帝國的反擊 107
JDBC的誕生 108
談判 108
統一接口 110
麵嚮接口編程 111
簡單工廠 112
數據驅動 114
工廠方法 115
Java帝國之宮廷內鬥 119
JDBC大臣 119
密謀 120
兩階段提交 121
JTA 123
塞翁失馬,焉知非福 124
基本可用 125
走漏風聲 127
宮廷激辯 128
JSP:一個裝配工的沒落 131
黑暗歲月 131
服務器端動態頁麵 132
標簽庫 134
模闆引擎 134
草根攪局 135
Java 帝國之消息隊列 137
張傢村的曆史 137
拆分 138
新問題 139
消息隊列 139
互不兼容的MQ 140
消息隊列接口設計 141
配置和代碼的分離 143
再次抽象 144
Java帝國之動態代理 147
深夜奏對 147
明察暗訪 149
Java 動態代理 150
Java注解是怎麼成功上位的 153
XML大臣 153
安翰林獻計 154
早朝爭鬥 157
Java帝國之泛型 159
新王登基 159
C++使者 159
泛型實現 162
泛型方法 163
泛型和繼承 164
一個著名的日誌係統是怎麼設計齣來的 166
前言 166
張傢村 167
小張的設計 167
正交性 170
Log4j 171
尾聲 171
序列化:一個老傢夥的鹹魚翻身 172
寒鼕的蟄伏 172
XML和JSON的挑戰 173
新協議的崛起 175
加鎖還是不加鎖,這是一個問題 176
互斥鎖 176
要不要加鎖 177
CAS的擴展 179
Spring 的本質 182
問題來源 183
設計模式:模闆方法 184
設計模式:裝飾者 186
AOP 187
實現AOP 188
對象的創建 189
IoC與DI 191
第3章 浪潮之巔的Web 192
Web的起源 192
兩個程序的愛情故事 195
好感 195
分離 196
網絡 197
Web 198
一個故事講完HTTPS 199
總有一種被偷窺的感覺 199
RSA:非對稱加密 200
非對稱加密+對稱加密 202
中間人劫持 202
你到底是誰 203
HTTPS 206
機房夜話 207
第一夜 207
第二夜 209
第三夜 211
從密碼到token,一個有關授權的故事 215
我把密碼獻給你 215
token 216
授權碼 + token 218
後記 220
後端風雲 220
數據庫老頭兒 220
危機 221
黨委擴大會議 221
分傢 223
Redis 224
餘數算法 227
一緻性Hash算法 229
Hash槽 (Hash Slot) 233
故障轉移 235
高可用的Nginx 237
高可用的Tomcat 238
數據庫的讀寫分離 240
我是一個函數 243
從SOA到微服務 246
什麼是框架 249
HTTP Server:一個差生的逆襲 252
HTTP Server 1.0 252
HTTP Server 2.0:多進程 253
HTTP Server 3.0:select模型 254
HTTP Server 4.0:epoll模型 255
第4章 代碼管理那些事兒 258
版本管理簡史 258
“人肉” 版本管理 258
鎖定文件:避免互相覆蓋 259
允許衝突:退一步海闊天空 260
分支:多版本並行 261
分布式管理:給程序員放權 262
程序員也愛社交 264
Build的演進之路 265
手工Build的煩惱 265
自動化Build 267
Java 與 XML 268
消除重復 270
爛代碼傳奇 275
敏捷下的單元測試 277
敏捷運動 277
睏惑 278
討論 279
一年以後 280
再見!Bug 281
第5章 我的編程語言簡史 284
JavaScript :一個草根的逆襲 284
齣世 284
成長 286
第一桶金 288
發明JSON 289
人生巔峰 291
Node.js:我隻需要一個店小二 292
C老頭兒和Java小子的硬盤夜話 295
編程語言的“愛恨情仇” 300
讓人懷疑的C 語言 300
被忘卻的 VB & Visual FoxPro 301
蹂躪我的C++ 302
賴以謀生的Java 303
優雅的Ruby 304
命令式編程 VS 聲明式編程 306
一則小故事 306
命令式編程 306
聲明式編程 307
第6章 老司機的精進 309
凡事必先騎上虎背,和性格內嚮的程序員聊幾句 309
碼農需要知道的“潛規則” 311
上帝的規矩:局部性原理 311
坐飛機的怎麼和坐驢車的打交道:緩存 311
拋棄細節:抽象 312
我隻想和鄰居打交道:分層 312
我怕等不及:異步調用 313
大事化小,小事化瞭:分而治之 314
15年編程生涯,一名架構師的總結 314
好奇心 315
養成計算機的思維方式 315
紮實基礎,融會貫通 317
要透徹地理解一門技術的本質 317
能寫漂亮的代碼 318
抽象的能力 319
技術領導力 319
對自己狠一點,開始寫作吧 320
學習編程的四兄弟 322
搖擺不定的老大 322
“小倉鼠”老二 322
不看書的老三 323
半途而廢的老四 323
· · · · · · (
收起)
評分
☆☆☆☆☆
評分
☆☆☆☆☆
人间一天,CPU一年 非常非常推荐这本书!!!它是通过讲故事的形式来慢慢给你解释编程知识和计算机原理的。而且每篇文章都是独立的,翻到哪里看哪里,这个太赞了,我原本以为讲编程计算机的书应该是需要我花很多时间阅读理解的,这本书完全打破我之前的想法。 同时作为一个文科...
評分
☆☆☆☆☆
7分吧。 虽然我不会Java,但是作者通过Java讲解如何从面向过程(实现)演进到面向对象(接口)编程还是清晰易懂的。数据库、持久化、消息队列、页面装配和日志系统等内容中蕴含的设计思路也让人耳目一新,知其然也能知其所以然。 但由于演示代码是基于Java的,非Java用户不可避...
評分
☆☆☆☆☆
首先我是作为一名产品经理来读这本书,初衷是想多了解些技术及架构,这样和IT可以更好的沟通,所以我希望了解一门语言或技术的作用是什么,对细节不强求(也强求不来)。这本书真的帮到我很多,以前面对一个新的技术名词,第一时间去百度,跳转到百度百科,一堆文字个个我都认...
評分
☆☆☆☆☆
2年前刚参加工作时,当时的老大就跟我说过,刚毕业的这两年是一个人技术成长最快的时候,越往后就可能越没精力和时间学习了。 在学校的时候,我们是学生,大部分时间在上课,非常系统的学习技术理论知识,这个阶段如果基础打扎实了,对以后的工作来说还是很受用的。学习理论很...