發表於2024-11-30
《程序員2016精華本》為你記錄這一年計算機技術發展,不隻關注時下流行技術,也整理行業的曆史與思考,不隻在今天有意義,也希望對明天的你有價值。
2016技術關鍵詞:人工智能、深度學習、VR(虛擬現實)、無人駕駛、視頻直播、移動架構、開源大數據、物聯網開發、容器技術……《程序員2016精華本》用更廣的視野、更審慎的態度精心講述這些技術的現狀與曆史。
假如你入行不久,這本書將讓你身臨其境,感受行業中真實的一麵。如果你已是摸爬滾打多年的老手,這本書不但能讓你學到有效具體的技術方案,還能重現資深從業者的思考方式——讓你領略如果站在作者的角度上,會如何思考,怎樣判斷。
《程序員2016精華本》是由程序員編輯部精心打造的,是對CSDN的《程序員》雜誌2016年的全部優質內容再次進行瞭優化整閤,內容更加聚焦,為你記錄這一年計算機技術發展,不隻關注時下流行技術,也整理行業的曆史與思考。全書分為16大篇章、210篇文章,講述成功産品背後的技術、人和事,聚焦技術實踐、關注前沿熱點、開發者年度必備。
程序員編輯部,是CSDN《程序員》的策劃和編輯者,《程序員》是國內針對開發人員的專業技術*威刊物,一直秉承服務中國IT人員的思想積極發展,在中國開發人員中擁有較高的知名度。是廣大開發者瞭解技術發展趨勢、學習與提高的重要參考資料。
對話大師
我們需要一次解決所有問題
――訪wiki創造者 Ward Cunningham 1
CaffeOnSpark解決瞭三大問題
――對話雅虎機器學習平颱負責人 2
務實至上:“PHP之父”Rasmus Lerdorf訪談錄 4
科研的秘訣
――對話微軟研究院負責人 Peter Lee 5
無人機的背後
賓夕法尼亞大學工程學院院長VijayKumar專訪 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
直播技術架構探索與優化 ――CSDN 知識庫係列 609
呱呱視頻技術難點分享:遇到和填上的那些坑 610
移動直播連麥實現思路:整體篇 613
移動直播連麥實現 ――Server 端閤成 616
移動直播連麥實現 ――A 端閤成 621
信息無障礙
Android 無障礙寶典 626
信息無障礙的發展和技術實踐
――CSDN 知識庫係列 629
iOS平颱無障礙化利器――VoiceOver
――CSDN 知識庫係列 631
支付寶無障礙體驗之路 633
手機遊戲無障礙設計 ――猜地鼠之 Android 篇 635
Google AlphaGo 技術解讀 —MCTS+DCNN
文 / 李理
2016 年 1 月,Google DeepMind 的文章在《自然》雜誌發錶, AlphaGo擊敗歐洲圍棋冠軍樊麾並且將要在3月份挑戰李世石。 圍棋和深度學習再次大規模高熱度地齣現在世人眼前。
圍棋的估值函數極不平滑,差一個子局麵就可能大不相同, 同時狀態空間大,也沒有全局的結構。這使得計算機隻能采用 窮舉法並且因此進展緩慢。Google 的 AlphaGo 通過 MCTS 和深度 學習的結閤實現瞭圍棋人工智能的突破,已經擊敗人類職業選 手。本文分析這兩種技術在圍棋 AI 的應用以及 AlphaGo 的創新。
MCTS
MCTS(Monte Carlo Tree Search)和 UC T(Upper Con?dence Bound for Trees)
MCTS 算法就是從根節點(當前待評估局麵)開始不斷構建 搜索樹的過程。具體可以分成 4 個步驟,如圖 1 所示。(略)
■ Selection
使用一種Policy從根節點開始,選擇一個最“緊急”(urgent) 的需要展開(expand)可展開(expandable)的節點。可展開的 節點是非葉子節點(非遊戲結束局麵),而且至少還有一個孩 子沒有搜索過。比如圖1展示的選擇過程,最終選擇到的節點 不一定是葉子節點(隻要它還有未搜索過的孩子就行)。
■ Expansion
選中節點的一個或者多個孩子展開並加入搜索樹,圖1的 Expansion 部分展示瞭展開一個孩子並加入搜索樹的過程。
■ Simulation
從這個展開的孩子開始模擬對局到結束,模擬使用的策略 叫 Default Policy。
■遊戲結束有個得分(勝負),這個得分從展開的孩子往 上迴溯到根節點,更新這些節點的統計量,這些統計量會影響 下一次迭代算法的 Selection 和 Expansion。
經過足夠多次迭代之後(或者時間用完),我們根據某種 策略選擇根節點最好的一個孩子(比如訪問次數最多,得分最 高等)。
上麵的算法有兩個 Policy:Tree Policy 和 Default Policy。 Tree Policy 決定怎麼選擇節點以及展開;而 Default Policy 用於 Simulation(也有文獻叫 playout,就是玩下去直到遊戲結束)。
MCTS 著重搜索更 urgent 的孩子,當然偶爾也要看看那些不那·麼 promising 的孩子,說不定是潛力股。這其實就是 exploit 和 explore 平衡的問題。另外,MCTS 直接 Simulation 到對局結束, “迴避”瞭局麵評估的難題。
既然是 exploit 和 explore 的 問 題, 把 UCB 用 到 MCTS 就 是 UCT 算法(MCTS 是一族算法的統稱,不同的 Tree Policy 和 Default Policy 就是不同的 MCTS 算法)。
UCT 算法
Selection 和 Expansion 的公式如上,和 UCB 很類似,隻是 多瞭一個常量 Cp,用來平衡 exploit 和 explore。
每個節點v都有兩個值, N(v)和Q(v),代錶v訪問過的次數(每 次迭代都是從 root 到結 程序員2016精華本 下載 mobi epub pdf txt 電子書 格式
程序員2016精華本 下載 mobi pdf epub txt 電子書 格式 2024
程序員2016精華本 下載 mobi epub pdf 電子書不錯的文章,值得認真研讀
評分去年沒訂,買個閤計看看
評分好書,程序員必讀。
評分挺好的一本書,做介紹得不錯,值得擁有
評分程序員的東西還是比較多的,對程序員還是有幫助的,此程序員非彼程序員。
評分內容很多,很全麵,是個沒事的時候翻翻。
評分學習學習,每年都買
評分搞活動時候買的,非常劃算。
評分趕上活動買的,優惠力度很大
程序員2016精華本 mobi epub pdf txt 電子書 格式下載 2024