发表于2024-12-24
《程序员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 电子书很好很满意,产品不错,十分值得购买,质量挺好,
评分学习学习,每年都买
评分内容很全,阿居家旅行必备良刊
评分搞活动买的,还是挺好等的
评分我有时候肩膀酸,一抽还要深我有时候肩膀酸,一抽还要深
评分我想知道这是什么情况????
评分其实也不知道为什么,和以前看的感觉不同了
评分刚买来,今年的阅读计划内容之一。
评分一如既往的精彩,程序员必buy,it人事士必buy。
程序员2016精华本 mobi epub pdf txt 电子书 格式下载 2024