登入帳戶  | 訂單查詢  | 購物車/收銀台( 0 ) | 在線留言板  | 付款方式  | 運費計算  | 聯絡我們  | 幫助中心 |  加入書簽
會員登入 新用戶登記
HOME新書上架暢銷書架好書推介特價區會員書架精選月讀2023年度TOP分類瀏覽雜誌 臺灣用戶
品種:超過100萬種各類書籍/音像和精品,正品正價,放心網購,悭钱省心 服務:香港台灣澳門海外 送貨:速遞郵局服務站

新書上架簡體書 繁體書
暢銷書架簡體書 繁體書
好書推介簡體書 繁體書

四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書
一月出版:大陸書 台灣書
12月出版:大陸書 台灣書
11月出版:大陸書 台灣書
十月出版:大陸書 台灣書
九月出版:大陸書 台灣書
八月出版:大陸書 台灣書
七月出版:大陸書 台灣書
六月出版:大陸書 台灣書
五月出版:大陸書 台灣書
四月出版:大陸書 台灣書
三月出版:大陸書 台灣書
二月出版:大陸書 台灣書

『簡體書』你真的会写代码吗

書城自編碼: 3651674
分類:簡體書→大陸圖書→計算機/網絡程序設計
作者: [意]马尔科·法埃拉[Marco Faella]
國際書號(ISBN): 9787115566348
出版社: 人民邮电出版社
出版日期: 2021-07-01

頁數/字數: /
書度/開本: 16开 釘裝: 平装

售價:HK$ 148.2

我要買

 

** 我創建的書架 **
未登入.


新書推薦:
矿王谷的黎明:塞拉俱乐部诉莫顿案与美国环境法的转变(精装典藏版)
《 矿王谷的黎明:塞拉俱乐部诉莫顿案与美国环境法的转变(精装典藏版) 》

售價:HK$ 106.8
索恩丛书·我们如何成为今天的我们:德意志民族简史
《 索恩丛书·我们如何成为今天的我们:德意志民族简史 》

售價:HK$ 82.8
技术与德国 : 1800年至今
《 技术与德国 : 1800年至今 》

售價:HK$ 105.6
重返冰河时代:发现史前世界
《 重返冰河时代:发现史前世界 》

售價:HK$ 129.6
拉夫尔
《 拉夫尔 》

售價:HK$ 93.6
经济巨擘:思想碰撞与传承(精装典藏版)
《 经济巨擘:思想碰撞与传承(精装典藏版) 》

售價:HK$ 106.8
一如既往
《 一如既往 》

售價:HK$ 82.8
人工智能新时代:核心技术与行业赋能
《 人工智能新时代:核心技术与行业赋能 》

售價:HK$ 105.6

 

建議一齊購買:

+

HK$ 98.8
《 编程原则:来自代码大师Max Kanat-Alexander的建议 》
+

HK$ 124.8
《 JavaScript悟道 》
+

HK$ 86.3
《 如何写出好程序 》
+

HK$ 111.3
《 面向对象的思考过程(原书第5版) 》
+

HK$ 162.3
《 C语言程序设计 现代方法 第2版·修订版 》
+

HK$ 123.8
《 Nginx底层设计与源码分析 》
編輯推薦:
1.一条主线串联编程语言、算法与软件工程
2.一个实例,七次重构,助力明辨代码优劣
3.附赠在线代码库,按章节组织免费下载
4.Java开发技巧助力应对多样化开发需求
5.《Java核心技术》《写给大忙人看的Java核心技术》等书作者凯·霍思特曼作序推荐
內容簡介:
《你真的会写代码吗》的核心思想是通过对各方面的代码质量进行比较,使读者了解经验丰富的开发者拥有的思维模式。为了展示软件开发实践,作者对一个水容器示例进行多次重构,讨论了18种实现,分别从7个方面改进代码质量:时间效率、空间效率、监控与可靠性、测试与可靠性、可读性、线程安全、可复用性。在此过程中,作者还探讨了与计算机科学、Java编程以及软件工程相关的专业话题,这些知识都有助于读者写出更好的代码。
關於作者:
【作者简介】 马尔科·法埃拉(Marco Faella) 意大利那不勒斯费德里克二世大学副教授,面向本科生和研究生讲授高级编程、软件工程、面向对象设计、编译器与程序分析、游戏设计等课程,同时为信息技术从业者开发和讲授Java编程课。另外,他也是爱思唯尔、施普林格等旗下期刊的审稿人。 【译者简介】 雷威 信公科技架构师,曾在阿里巴巴中间件团队任职。沉浸软件行业十余年,热衷于软件架构、研发效能、分布式、云原生等领域,相信技术能改变世界。 李强 信公科技CTO,浙江中金黄金集团前副总裁兼CTO,曾就职于美国道富银行。技术涉猎广泛,在产品设计开发、架构设计、技术团队管理等方面有丰富经验。另译有《监控的艺术》《扩展jQuery》等。
目錄
第 一部分 准备工作
第 1章 软件质量和待解决问题  2
1.1 软件质量  2
1.1.1 内部质量与外部质量  3
1.1.2 功能性质量与非功能性质量  3
1.2 主要的外部软件质量  4
1.2.1 正确性  4
1.2.2 稳健性  5
1.2.3 易用性  5
1.2.4 效率  5
1.3 主要的内部软件质量  6
1.3.1 可读性  6
1.3.2 可复用性  6
1.3.3 可测试性  6
1.3.4 可维护性  7
1.4 软件质量之间的关系  7
1.5 特殊的质量  9
1.5.1 线程安全  9
1.5.2 简洁性  9
1.6 演进示例:水容器系统  9
1.6.1 API  10
1.6.2 用例  11
1.7 数据的模型和表示  12
1.7.1 存储水量  13
1.7.2 存储连接  13
1.8 你好,容器(Novice)  15
1.8.1 字段和构造函数  15
1.8.2 getAmount和addWater方法  17
1.8.3 connectTo方法  17
1.9 小结  19
1.10 扩展阅读  19
第 2 章 Reference 的实现  20
2.1 代码(Reference)  21
2.1.1 内存布局图  22
2.1.2 方法  25
2.2 内存需求  26
2.3 时间复杂度  30
2.4 学以致用  32
2.5 小结  33
2.6 小测验答案和练习答案  34
2.7 扩展阅读  36
第二部分 软件质量
第3章 速度的要求:时间效率  40
3.1 常数时间内完成加水(Speed1)  41
3.2 常数时间内添加连接(Speed2)  43
3.2.1 用循环链表来表示容器组  43
3.2.2 延迟更新  46
3.3 好的平衡:并查集算法(Speed3)  49
3.3.2 连接容器树  52
3.3.3 坏情况时间复杂度  53
3.3.4 摊销时间复杂度  55
3.3.5 可调整大小数组的摊销分析  56
3.4 比较各种实现  59
3.4.1 实验  59
3.4.2 理论与实践  60
3.5 来点儿新鲜的  61
3.5.1 快速插入  62
3.5.2 快速查询  62
3.5.3 让三个方法都变快  63
3.6 真实世界的用例  63
3.7 学以致用  64
3.8 小结  65
3.9 小测验答案和练习答案  65
3.10 扩展阅读  68
第4章 宝贵的内存:空间效率  70
4.1 稍微挤一下(Memory1)  70
4.2 普通数组(Memory2)  75
4.3 弃用对象(Memory3)  78
4.3.1 无对象的API  79
4.3.2 字段和getAmount 方法  81
4.3.3 用一个工厂方法来创建容器  82
4.3.4 通过ID 连接容器  84
4.3.5 空间复杂度和时间复杂度  87
4.4 黑洞(Memory4)  87
4.5 空间和时间的权衡  90
4.6 来点儿新鲜的  92
4.6.1 重复对象少的情况  92
4.6.2 重复元素多的情况  93
4.7 真实世界的用例  94
4.8 学以致用  94
4.9 小结  96
4.10 小测验答案和练习答案  96
4.11 扩展阅读  100
第5章 有自我意识的代码:通过监控实现可靠性  102
5.1 契约式设计  102
5.1.1 前置条件和后置条件  102
5.1.2 不变式  104
5.1.3 正确性和稳健性  105
5.1.4 检查契约  106
5.1.5 更广泛的情况  108
5.2 基于契约设计水容器  109
5.3 检查契约的容器(Contracts)  111
5.3.1 检查addWater方法的契约  114
5.4 检查不变式的容器(Invariants)  117
5.4.1 检查connectTo方法的不变式  118
5.4.2 检查addWater方法的不变式  120
5.5 来点儿新鲜的  120
5.5.1 契约  121
5.5.2 一个基线版本实现  121
5.5.3 检查契约  122
5.5.4 检查不变式  123
5.6 真实世界的用例  124
5.7 学以致用  125
5.8 小结  126
5.9 小测验答案和练习答案  126
5.10 扩展阅读  131
第6章 别对我撒谎:通过测试保证可靠性  132
6.1 测试的基本概念  132
6.1.1 测试的覆盖率  133
6.1.2 测试和契约式设计  133
6.1.3 JUnit  134
6.2 测试水容器(UnitTests)  136
6.2.1 初始化测试  136
6.2.2 测试addWater  138
6.2.3 测试connectTo方法  143
6.2.4 运行测试  144
6.2.5 衡量代码覆盖率  145
6.3 可测试性(Testable)  146
6.3.1 可控性  146
6.3.2 可观察性  147
6.3.3 隔离:切断依赖关系  148
6.4 来点儿新鲜的  149
6.4.1 提高可测试性  150
6.4.2 一个测试套件  151
6.5 真实世界的用例  153
6.6 学以致用  154
6.7 小结  155
6.8 小测验答案和练习答案  155
6.9 扩展阅读  160
第7章 让代码说话:可读性  161
7.1 关于可读性的一些观点  161
7.1.1 企业编码风格规范  162
7.1.2 可读性因素  163
7.2 结构性的可读性特征  164
7.2.1 控制流语句  164
7.2.2 表达式和局部变量  166
7.3 外部可读性特征  167
7.3.1 注释  167
7.3.2 命名  168
7.3.3 空白及缩进  169
7.4 可读的容器(Readable)  169
7.4.1 用Javadoc描述类的头部  170
7.4.2 整理connectTo方法  173
7.4.3 整理addWater方法  177
7.5 可读性的终极思考  178
7.6 来点儿新鲜的  179
7.7 真实世界的用例  181
7.8 学以致用  181
7.9 小结  183
7.10 小测验答案和练习答案  183
7.11 扩展阅读  186
第8章 多个厨师一锅饭:线程安全  188
8.1 线程安全面临的挑战  188
8.1.1 并发级别  190
8.1.2 水容器的并发策略  192
8.2 处理死锁  193
8.2.1 原子的锁序列  194
8.2.2 有序的锁序列  195
8.2.3 一个隐藏的竞争条件  196
8.3 线程安全的水容器(ThreadSafe)  198
8.3.1 同步connectTo方法  198
8.3.2 同步addWater和getAmount方法  199
8.4 不可变性(Immutable)  201
8.4.1 API  202
8.4.2 实现  204
8.5 来点儿新鲜的  206
8.6 真实世界的用例  208
8.7 学以致用  209
8.8 小结  210
8.9 小测验答案和练习答案  211
8.10 扩展阅读  213
第9章 请重复利用:可复用性  215
9.1 确立边界  215
9.2 通用框架  216
9.2.1 属性API  219
9.2.2 可变收集器  220
9.2.3 将Attribute适配到函数接口  224
9.3 一个通用容器的实现  225
9.4 通用的考虑  227
9.5 复原水容器(Generic)  228
9.5.1 更新用例  228
9.5.2 设计具体的属性  228
9.5.3 定义具体的水容器类  230
9.6 社交网络的帖子  230
9.7 来点儿新鲜的  231
9.7.1 参数函数的接口  233
9.7.2 一个通信模式  235
9.8 真实世界的用例  237
9.9 学以致用  238
9.10 总结  240
9.11 小测验答案和练习答案  240
9.12 扩展阅读  245
附录A 代码高尔夫:简洁性  246
附录B 终极水容器类  249
列表:每一章中主要的类  252

 

 

書城介紹  | 合作申請 | 索要書目  | 新手入門 | 聯絡方式  | 幫助中心 | 找書說明  | 送貨方式 | 付款方式 香港用户  | 台灣用户 | 大陸用户 | 海外用户
megBook.com.hk
Copyright © 2013 - 2024 (香港)大書城有限公司  All Rights Reserved.