內容提要
《程式設計師2016精華本》為你記錄這一年計算機技術發展,不只關注時下流行技術,也整理行業的歷史與思考,不只在今天有意義,也希望對明天的你有價值。
2016技術關鍵字:人工智慧、深度學習、VR(虛擬現實)、無人駕駛、視頻直播、移動架構、開源大數據、物聯網開發、容器技術……《程式設計師2016精華本》用更廣的視野、更審慎的態度精心講述這些技術的現狀與歷史。
假如你入行不久,這本書將讓你身臨其境,感受行業中真實的一面。如果你已是摸爬滾打多年的老手,這本書不但能讓你學到有效具體的技術方案,還能重現資深從業者的思考方式——讓你領略如果站在作者的角度上,會如何思考,怎樣判斷。
目錄
對話大師
我們需要一次解決所有問題
—訪wiki 創造者Ward Cunningham 1
CaffeOnSpark解決了三大問題
—對話雅虎機器學習平台負責人 2
務實至上:“PHP之父”Rasmus Lerdorf訪談錄 4
科研的秘訣
—對話微軟研究院負責人Peter Lee 5
無人機的背後
賓夕法尼亞大學工程學院院長Vijay Kumar 專訪 6
Alan Kay和他的浪漫願景 10
Alan Kay談OO和FP 12
Alan Kay談讀書 14
百問Alan Kay 17
Peter Norvig:人工智慧將是軟體工程的重要部分 28
MINIX 30年之經驗教訓談 31
2016技術盤點
盤點2016 年的移動Web 發展 36
2016 年人工智慧技術進展大盤點 38
2016資料庫技術盤點 44
2016年OpenStack總結 49
VR 技術這一年的發展要點與未來展望 51
2016年遊戲行業年終盤點
—逃離還是守望?市場破局的一年 54
網際網路套用面面觀
小米網技術架構變遷實踐 57
途牛網站無線架構變遷實踐 59
搜狗商業平台基礎架構演化實踐 62
58同城高性能移動Push推送平台架構演進之路 66
QQ 會員活動運營平台的架構設計實踐 70
基於Spark的百度圖搜變現系統架構 73
快的打車架構實踐 78
餓了么移動App的架構演進 80
宅米網性能最佳化實踐
—初創網際網路公司的野蠻成長 82
深入理解自動化測試架構 85
電商系統的高並發設計和挑戰 88
淘寶大秒系統設計思路 92
百度分散式互動查詢平台
—PINGO 架構疊代 95
高並發金融套用架構最佳化與平台創新 98
閱文集團分散式檔案系統的設計與實現 101
從0到1,一號店通用推薦平台的搭建 105
先進的銀行反欺詐架構設計 107
高可用性系統在大眾點評的實踐與經驗 109
VIPServer:阿里智慧型地址映射及環境管理
系統詳解 112
小米異步訊息系統實踐 116
Motan:支撐微博千億調用的輕量級RPC框架 118
360雲查殺服務從零到千億級PV的核心架構
變遷 120
樂視商城搶購系統深度實踐 125
攜程移動端架構演進與最佳化之路 126
技術解析開源大數據構造
群雄逐鹿,看2015 開源大數據框架疊代 133
Jaguar,一種基於YARN 的長時服務自動
擴展架構 134
HDFS EC:將糾刪碼技術融入HDFS 136
基於SQL on Hadoop的數據倉庫技術 140
Spark 多數據源計算實踐及其在GrowingIO 的
實踐 144
Impala的信息倉庫:解讀TQueryExecRequest
結構 147
Spark Streaming實踐和最佳化 152
分散式資料庫挑戰與分析 154
Apache Eagle :分散式實時大數據性能和安全
監控平台 157
大數據驅動下的微博社會化推薦 161
物聯網開發初探
風口的物聯網技術 165
物聯網開發中意想不到的那些“坑” 166
無人機的GPS欺騙及防護措施 169
11個熱門物聯網開發平台的比較 172
物聯網大數據平台TIZA STAR架構解析 174
Spark核心技術與實踐
Spark 學習指南 177
Streaming DataFrame:無限增長的表格 178
層次化存儲:以高性價比終結Spark的I/O瓶頸 179
Spark在美團的實踐 181
向Spark開炮:1.6版本問題總結與趟坑 185
Spark在蘑菇街的實踐 187
Spark MLlib 2.0前瞻 190
科大訊飛基於Spark的用戶留存運營
分析及技術實現 192
Spark Streaming與Kafka集成分析 195
Spark Streaming在獵豹移動的實踐 198
Spark Streaming構建有狀態的可靠流式處理
套用 200
Spark Streaming在騰訊廣點通的套用 204
Spark Streaming + ES構建美團App 異常監控
平台 210
基於Spark一棧式開發的通信運營商社交網路 212
基於Spark 的公安大數據實時運維技術實踐 218
在Apache Spark 2.0中使用
DataFrames 和SQL 的第一步 221
在Apache Spark 2.0 中使用
—DataFrames 和SQL 的第二步 226
走進VR開發世界
VR 開發從何入手 229
VR硬體演進與其遊戲開發注意事項 229
VR語境下的人機互動 233
使用Cocos開發
—一款簡單的3D VR 抓錢遊戲 235
製作3A級VR遊戲的難點
—專訪焰火工坊CTO 王明楊 237
並非只有遊戲才是VR
—專訪VR 製作人、導演董宇輝 239
走進VR遊戲開發的世界 240
敘事、畫面和音效:解析VR遊戲設計要點 245
VR 和AR 需要什麼樣的自然表達? 248
使用Unity開發HoloLens套用 249
VR套用設計的8個建議 252
用虛幻4開發搭積木的VR遊戲 255
人工智慧60年,後深度學習
時代關鍵技術進展
語音識別系統及科大訊飛最新實踐 259
使用深度學習打造智慧型聊天機器人 261
無人駕駛:人工智慧三大套用造就“ 老司機” 265
知人知面需知心
—論人工智慧技術在推薦系統中的套用 269
流動的推薦系統
—興趣Feed 技術架構與實現 272
SLAM剛剛開始的未來 277
運用增強學習算法提升推薦效果 279
以性別預測為例談數據挖掘分類問題 282
FPGA:下一代機器人感知處理器 285
Google AlphaGo 技術解讀
—MCTS+DCNN 289
基於Spark的異構分散式深度學習平台 294
拓撲數據分析在機器學習中的套用 298
揭秘深度強化學習 300
“無中生有”計算機視覺探奇 302
知識圖譜如何讓智慧型金融“變魔術” 305
機器碼農:深度學習自動編程 308
圖計算系統進展和展望 311
ICML 2016精選論文 315
SIGIR 2016精選論文 317
KDD 2016精選論文 318
NIPS 2016精選論文 320
容器技術經驗談
Docker 的“謊言” 323
Kubernetes微服務架構套用實踐 324
使用Docker實現絲般順滑的持續集成 327
Mesos高可用解決方案剖析 330
新型資源管理工具Myriad 使用初探 334
基於OpenStack和Kubernetes構建組合雲平台
—網路集成方案綜述 335
超融合架構與容器超融合 339
容器集群管理技術對比 342
現實中的容器技術運用案例 343
展望Docker 1.10鏡像新面貌 346
談談Unikernel 348
關於Docker你不知道的事
—Docker Machine 350
再談容器與虛擬機的那點事 351
容器的性能監控和日誌管理 353
Swarm和Mesos集成指南
—資源利用率最佳化實踐 356
容器化技術在證券交易系統的套用
—廣發證券OpenTrading 證券交易雲 360
DC/OS服務開發指南 363
傳統套用的Docker 化遷移 365
Docker技術商業落地的思考 366
企業級Docker鏡像倉庫的管理和運維 368
基於Mesos和Docker構建企業級SaaS套用
—Elasticsearch as a Service 370
Kubernetes從部署到運維詳解 375
雲計算與大數據
開源大數據引擎:
—Greenplum 資料庫架構分析 378
深入理解Apache Flink核心技術 381
數據驅動精準化行銷在大眾點評的實踐 386
鏈家網大數據平台樞紐—工具鏈 389
Apache Beam:下一代的數據處理標準 392
從套用到平台,雲服務架構的演進過程 394
如何構建高質量MongoDB 雲服務 398
OpenStack資料庫服務Trove解析與實踐 399
OpenStack能複製Red Hat的成功嗎? 402
OpenStack雲端的資源調度和最佳化剖析 405
雲計算ZStack分散式集群部署 408
移動開發新技術探索
Swift 性能探索和最佳化分析 412
ENJOY的Apple Pay套用內支付接入實踐 414
iOS 動態更新方案JSPatch 與React Native 的
對比 417
iOS開發下的函式回響式編程
—美團函式回響式開發實踐 418
從iOS視角解密React Native中的執行緒 424
WWDC 2016 技術賞析
—SiriKit 初探 428
是時候適配Swift 3了嗎?
—專訪LINE iOS 開發工程師王巍 435
Android 平台的崩潰捕獲機制及實現 437
深入淺出Android打包 439
Android 自定義控制項:如何使View 動起來? 443
揭秘Android N新的編譯工具JACK&JILL 446
如何編寫基於編譯時註解的Android項目 449
人人車Android路由機制解析 452
App架構經驗總結 456
高效、穩定、可復用
—手機淘寶主會場框架詳解 459
攜程移動端性能最佳化 462
IM技術在多套用場景下的實現及性能
調優:iOS視角 468
Cocos2d-x性能最佳化技巧及原理總結 473
遊戲開發中的程式生成技術 475
以架構和工具鏈最佳化Unity3D遊戲開發流水線 477
汽車之家移動主App服務端架構變遷 480
React Native:下一代移動開發框架? 483
微信終端跨平台組件mars 系列
—信令傳輸網路模組之信令逾時 486
當微軟牛津計畫遇到微信APP
—微信實現部分 488
當微軟牛津計畫遇到微信App
—服務實現部分 493
基礎技術
2016 年,C 語言該怎樣寫 498
2016 年,我們為什麼要學習C++ ?
—CSDN 知識庫系列 503
現代C++函式式編程 504
現代C++實現萬能函式容器 509
新型計算機離我們還有多遠 512
美團酒店Node全棧開發實踐
—CSDN 知識庫系列 513
使用Express.js構建Node.js REST API服務 515
在調試器里看百度雲管家 520
PHP學習指南
—CSDN 知識庫系列 523
PHP並發I/O編程之路
—CSDN 知識庫系列 526
開發者,速度遠比你以為的重要 530
七年阿里老人談新人成長 531
資料庫華山論劍
打造金融行業私有雲資料庫
—寧波銀行的分散式資料庫探索 534
騰訊金融級分散式資料庫TDSQL的前世今生 538
京東金融分散式數據中間件CDS 541
網易分庫分表資料庫DDB 545
阿里巴巴分散式資料庫服務DRDS研發歷程 549
MySQL 資料庫讀寫分離中間件Atlas 553
高一致分散式資料庫Galera Cluster 555
微信紅包訂單存儲架構變遷的最佳實踐 557
分散式資料庫中間件TiDB過去現在和未來 559
MySQL從庫擴展探索 561
解讀分庫分表中間件Sharding-JDB 563
做好資料庫運維
—DBA 崗位分析及實踐經驗分享 566
高性能資料庫中間件MyCAT 568
阿里巴巴雲時代的資料庫管理 570
無人駕駛技術解析
光學雷達(LiDAR)
—在無人駕駛技術中的套用 573
基於ROS的無人駕駛系統 575
基於計算機視覺的無人駕駛感知系統 578
基於Spark與ROS分散式無人駕駛模擬平台 582
GPS及慣性感測器在無人駕駛中的套用 584
增強學習在無人駕駛中的套用 587
高精地圖在無人駕駛中的套用 592
CNN在無人駕駛中的套用 595
視頻直播技術實踐
聚光燈下的熊貓TV 技術架構演進 599
直播連麥技術解析 603
手機遊戲直播:悟空TV客戶端設計與技術難點 604
紅點直播架構設計及技術難點 607