新書推薦:
《
股市长线法宝(第6版)
》
售價:NT$
640.0
《
中文版SOLIDWORKS 2024机械设计从入门到精通(实战案例版)
》
售價:NT$
450.0
《
纯数学教程
》
售價:NT$
390.0
《
威尔士史:历史与身份的演进
》
售價:NT$
490.0
《
黄金、石油和牛油果:16件商品中的拉丁美洲发展历程
》
售價:NT$
395.0
《
母亲的选择:看不见的移民保姆与女性工作
》
售價:NT$
340.0
《
城邦政治与灵魂政治——柏拉图《理想国》中的政治哲学研究
》
售價:NT$
590.0
《
3分钟漫画墨菲定律:十万个为什么科普百科思维方式心理学 胜天半子人定胜天做事与成事的权衡博弈之道
》
售價:NT$
249.0
|
編輯推薦: |
适读人群 :立志向系统架构师转型的广大开发人员
本书包含作者基于自身在传统以及互联网行业多年的技术与管理工作经历展开论述,结合方法论和工程实践,具有较强的针对性和适用性,能帮助读者了解并掌握迈向架构师所需的各种知识体系和实践技巧。
本书在介绍技术以及过程管理的内容时,采用思路方法论工程实践的三段式模型,不光告诉读者可以怎么做,更重要的是提供了对问题的分析以及解决思路和方法论,并辅以相应的工程实践和案例分析。
本书从向架构师转型的角度出发,关注于转型这个特定主题给出了作者自身的一些思考和总结,从内容上填补了市场上的这一空白。
|
內容簡介: |
本书主要包含软件开发普通程序员如何向系统架构师进行转型的一些思路、方法和工程实践。全书共分为四大篇幅内容,包括:
1. 程序员向架构师转型篇,剖析架构师角色,提供架构师的视图视角,以及程序员如何向架构师成功转型的思路。
2. 系统架构设计知识领域篇,介绍软件架构体系结构、领域驱动设计、分布式系统架构、技术知识体系等架构师所应具备的主要技术体系内容。
3. 软件开发系统工程篇,介绍软件工程学、业务架构设计、敏捷方法与实践、软件交付模型等架构师所应具备的系统方法论和相关工程实践。
4. 架构师软能力篇,包括架构师与外部环境、自身团队和转型所需的意识形态。
|
關於作者: |
郑天民,网名天涯兰,日本足利工业大学信息管理学硕士,10年左右软件行业从业经验,在医疗、安防和电商行业都有所涉及,主持和参与过多个大型企业级应用和移动互联网系统的开发和管理工作,先后担任系统分析架构师、部门经理、技术总监等职务,目前就职于一家业界领先的电商独角兽企业。北风网特邀讲师,讲授系统架构与技术管理相关课程。善于提炼和抽象核心内容,善于知识分享和技术人员培养,对系统架构设计和技术管理有丰富的经验和较深的理解。
|
目錄:
|
第一篇 程序员向架构师转型概述
第1章 程序员向架构师转型 2
1.1 架构设计基本概念 2
1.1.1 架构的基本定义 2
1.1.2 架构演进理论 4
1.1.3 架构设计与系统工程 7
1.2 剖析架构师角色 8
1.2.1 架构师角色 8
1.2.2 当程序员遇到架构师 10
1.3 架构师的视图和视角 11
1.3.1 架构师的视图 12
1.3.2 架构师的视角 16
1.3.3 视图视角与系统工程 18
1.4 程序员如何向架构师成功转型 19
1.4.1 转型成功的三段式模型 19
1.4.2 转型思维导图 20
1.4.3 作为架构师开展工作 21
1.5 本章小结 22
第二篇 软件架构设计知识体系
第2章 软件架构体系结构 24
2.1 软件体系结构 24
2.2 架构风格 25
2.2.1 分布式 25
2.2.2 事件驱动 28
2.2.3 系统结构 31
2.2.4 消息总线 32
2.2.5 适配与扩展 33
2.3 架构模式 35
2.3.1 数据访问 35
2.3.2 服务定位 36
2.3.3 异步化 38
2.3.4 资源管理 39
2.3.5 依赖管理 41
2.4 架构模型 44
2.5 本章小结 45
第3章 领域驱动设计 46
3.1 面向领域思想 46
3.1.1 架构设计与领域驱动 46
3.1.2 领域驱动设计核心概念 47
3.1.3 案例介绍 47
3.2 面向领域的策略设计 48
3.2.1 通用语言 48
3.2.2 领域与上下文 48
3.2.3 领域驱动的架构风格 51
3.2.4 案例策略设计 54
3.3 面向领域的技术设计 56
3.3.1 实体与值对象 56
3.3.2 领域服务 59
3.3.3 领域事件 60
3.3.4 聚合 62
3.3.5 资源库 64
3.3.6 集成界限上下文 65
3.3.7 应用程序 67
3.3.8 案例技术设计 67
3.4 案例实现 69
3.5 本章小结 70
第4章 分布式系统架构设计 72
4.1 分布式系统 73
4.2 RPC架构 74
4.2.1 网络通信 75
4.2.2 序列化 76
4.2.3 传输协议 77
4.2.4 服务调用 78
4.3 分布式服务架构 81
4.3.1 负载均衡与集群容错 81
4.3.2 服务路由 83
4.3.3 服务注册中心 84
4.3.4 服务发布与调用 88
4.3.5 服务监控与治理 90
4.4 分布式服务框架Dubbo剖析 91
4.4.1 Dubbo核心功能 91
4.4.2 Dubbo原理分析 94
4.5 微服务架构 102
4.5.1 微服务实现策略 103
4.5.2 微服务实现技术 104
4.5.3 微服务实现案例 108
4.6 本章小结 109
第5章 架构实现技术体系 110
5.1 缓存与性能优化 111
5.1.1 性能概述 111
5.1.2 Memcached 112
5.1.3 Redis 116
5.1.4 Nginx 120
5.2 消息传递系统 122
5.2.1 消息中间件需求 122
5.2.2 JMS 123
5.2.3 AMQP 126
5.2.4 Kafka 129
5.3 企业服务总线 130
5.3.1 服务总线解决方案 130
5.3.2 集成化端点 136
5.4 数据分析处理 140
5.4.1 轻量级批处理 140
5.4.2 Spring Batch 142
5.5 安全性 147
5.5.1 安全性概述 147
5.5.2 安全性实现技术 148
5.6 本章小结 151
第三篇 软件架构设计系统工程
第6章 软件工程学 154
6.1 软件工程学概述 154
6.2 软件实现 155
6.2.1 需求工程 155
6.2.2 系统建模与案例分析 157
6.2.3 软件实现与架构师 165
6.3 项目管理 166
6.3.1 项目管理体系 167
6.3.2 项目研发过程的透明化管理 173
6.3.3 项目管理与架构师 178
6.4 过程改进 179
6.4.1 软件过程模型 179
6.4.2 软件过程改进 181
6.4.3 过程改进与架构师 182
6.5 本章小结 183
第7章 敏捷方法与实践 184
7.1 敏捷方法论概述 184
7.2 极限编程与工程实践 186
7.2.1 极限编程方法 186
7.2.2 极限编程工程实践 186
7.3 Scrum与过程管理 191
7.3.1 Scrum简介 191
7.3.2 Scrum框架 192
7.3.3 如何进行敏捷回顾案例分析 194
7.4 敏捷方法论与架构师 198
7.4.1 敏捷开发中架构师的角色 198
7.4.2 识别和消除研发过程浪费 199
7.5 本章小结 204
第8章 软件交付模型 205
8.1 软件交付模型概述 205
8.2 配置管理 206
8.2.1 配置管理概述 206
8.2.2 配置管理模式与实践 209
8.2.3 SVN GIT基本应用与实践 210
8.2.4 系统版本控制策略案例分析 214
8.3 持续集成 217
8.3.1 持续集成理念 217
8.3.2 Jenkins应用 219
8.4 交付工作流 219
8.5 本章小结 220
第四篇 架构师软技能
第9章 架构师必备软技能 222
9.1 架构师与外部环境 222
9.1.1 政治与协商 223
9.1.2 沟通 224
9.1.3 邮件 227
9.2 架构师与自身团队 231
9.2.1 领导力 231
9.2.2 知识管理 232
9.2.3 人员管理 235
9.2.4 绩效管理 237
9.3 架构师与意识形态 240
9.3.1 思维模式 241
9.3.2 引入变化 241
9.4 本章小结 245
参考文献 246
|
內容試閱:
|
软件行业技术开发从业人员众多,但具备若干年开发经验的普通的开发人员往往面临个人发展的瓶颈,即如何从普通开发人员转型成高层次的系统架构师和技术管理人员。想成为一名架构师,应当具备全面的知识体系,需要进行系统的学习和实践,很多开发人员有往架构师转型的强烈意愿,但苦于找不到好的方法和路径。本书针对程序员想架构师转型这一切入点,提供架构师所需的各方面技能和相应的学习方法,包含针对转型的一些思路、方法和工程实践,以及可能会碰到的问题和解决方法。本书从架构师的定位以及如何成为一名架构师的角度出发,除了技术和设计之外,还会介绍各项系统工程方法论和软能力,旨在为广大开发人员提供一套系统的、全面的转型指南。
本书从向架构师转型的角度出发,结合作者基于自身在传统以及互联网行业多年的技术与管理工作经历展开论述,结合方法论和工程实践,具有较强的针对性和适用性。架构师是一种非常综合的工种,本书整体上是技术结合过程的行文思路,具备一定深度的同时也提供了更广的知识领域和体系,更加适合于往架构师转型过程中的各种技能需求。同时,本书在介绍技术以及过程管理的内容时,采用思路方法论工程实践的三段式模型,不光告诉读者可以怎么做,更重要的是提供了对问题的分析以及解决思路和方法论,并辅以相应的工程实践和案例分析。对架构师而言,具体的技术和工具并不是重点,解决问题的思路和方法论才是本质,本书会在这些方面提供一定的抽象和总结。
本书面向立志于转型成为架构师的后端服务开发人员,读者不需要有很深的技术水平,也不限于特定的开发语言,但熟悉Java EE常见技术并掌握一定系统设计基本概念有助于更好的理解书中的内容。通过本书的系统学习,读者将在普通开发人员的基础上向前跨出一大步,在思想、方法论、实践能力和综合素质等各个方面往一名合格的架构师方向发展,为后续的工作和学习铺平道路。
|
|