悦读宝库 -重构(Ruby版)
本书资料更新时间:2025-01-19 20:33:05

重构(Ruby版) 下载 pdf 百度网盘 epub 免费 2025 电子书 mobi 在线

重构(Ruby版)精美图片
》重构(Ruby版)电子书籍版权问题 请点击这里查看《

重构(Ruby版)书籍详细信息

  • ISBN:9787111300786
  • 作者:暂无作者
  • 出版社:暂无出版社
  • 出版时间:2010-04
  • 页数:294
  • 价格:38.70
  • 纸张:胶版纸
  • 装帧:平装
  • 开本:16开
  • 语言:未知
  • 丛书:暂无丛书
  • TAG:暂无
  • 豆瓣评分:暂无豆瓣评分
  • 豆瓣短评:点击查看
  • 豆瓣讨论:点击查看
  • 豆瓣目录:点击查看
  • 读书笔记:点击查看
  • 原文摘录:点击查看
  • 更新时间:2025-01-19 20:33:05

内容简介:

  本书是一本专门为职业Ruby程序员编写的重构指导。它的目标是向你展示如何以一种既受到严格控制又高效的方式进行重构。你将学习到不在代码中引入bug并能按部就班改进结构的重构方式。本书的主要内容:第1章指出重构是什么;第2章讨论进行重构的理由;第3章指出需要进行重构的信号;第4章讨论测试在重构中扮演的重要角色;第5章~第12章介绍了重构花名册,它包含了在重构领域里到目前为止的成果。当需要进行某项任务时,这份花名册可以手把手地提醒我们安全的做法。

本书是对Martin Fowler的经典权威著作《重构》的重大更新版,并以Ruby为例彻底重写——并非只是把代码从Java版中搬过来而已。

书中给出了一份详细的重构花名册,包含超过70条经过锤炼的Ruby重构技术,每一条都有详细指引、使用细节和范例代码。其中很多重构技术都用到了Ruby专有的强大特性,你可以从华章网站下载到全部代码。

作者借用Fowler初的想法,展示了如何以一种受控、高效以及迭代的方式进行重构,帮助你有条不紊地改善代码的质量而不会引入新的bug。不论是编写还是维护Ruby代码,本书都将是不可或缺的重要参考。

本书内容

理解重构的核心原则,以及进行重构的原因

发现Ruby代码中的“坏味道”

逐步将糟糕的设计转变成设计精良的代码

构建测试以便保证重构正确进行

理解重构中的难点以及克服的办法

编写正确包装代码的方法

在对象之间移动特性,将其放在*的地方

将数据组织成更容易处理的形式

简化条件表达式,更高效地利用多态

创建更易于理解和使用的接口

进行大型重构,这将可能影响整个软件系统数月乃至数年

成功重构Ruby on Rails代码


书籍目录:

译者序

前言

致谢

第1章 重构初体验

 1.1 起点

  1.1.1 Movie

  1.1.2 Rental

  1.1.3 Customer

  1.1.4 对起始程序的评价

 1.2 重构步

 1.3 Statement方法的分解和再组合

  1.3.1 移动Amount的计算

  1.3.2 提炼常客积分的计算

  1.3.3 移除临时变量

 1.4 用多态替换价格代码中的条件逻辑

 1.5 小结

第2章 重构的基本原理

 2.1 重构的起源

 2.2 重构的定义

 2.3 重构的理由

  2.3.1 重构可以改进软件的设计

  2.3.2 重构让软件变得易于理解

  2.3.3 重构可以帮助你发现bug

  2.3.4 重构可以帮助你更快地编程

 2.4 重构的时机

  2.4.1 事不过三

  2.4.2 在添加功能时重构

  2.4.3 在需要修复bug时重构

  2.4.4 在进行代码复审时重构

  2.4.5 为了更好地理解而重构(或者说,向着同一个目标进行重构)

 2.5 为什么重构能起作用

 2.6 我怎么跟经理说

 2.7 抽象和重构

 2.8 重构的问题

  2.8.1 改变接口

  2.8.2 数据库

  2.8.3 难以重构的设计变化

  2.8.4 什么时候不应该重构

 2.9 重构和设计

 2.10 竹篮打水一场空

 2.11 重构和性能

 2.12 优化薪资系统

第3章 代码里的坏味道

 3.1 重复代码

 3.2 方法过长

 3.3 类太大

 3.4 参数列表太长

 3.5 发散型变化

 3.6 霰弹型修改

 3.7 特性依赖

 3.8 数据泥团

 3.9 基本类型偏执

 3.10 case语句

 3.11 平行继承体系

 3.12 冗赘类

 3.13 纯臆测的泛化

 3.14 临时字段

 3.15 消息链

 3.16 中间人

 3.17 过分亲密

 3.18 异曲同工的类

 3.19 不完善的类库

 3.20 数据类

 3.21 被拒绝的遗赠

 3.22 注释

 3.23 狂热的元编程

 3.24 脱节的API

 3.25 不断重复的样板文本

第4章 构建测试

第5章 重构花名册

第6章 组织方法

第7章 在对象之间移动特性

第8章 组织数据


作者介绍:

  Jay Fields 是DRW Trading公司的一名软件程序员,也是一位研讨会的常客。Jay对发现和成熟化创新式解决方案总是抱有激情。Jay的个人网站是:www.jayfields.com。

Shane Harvie 在美国、印度和澳大利亚等国的敏捷公司中从事软件开发工作。他现在位于芝加哥的DRW Trading


出版社信息:

暂无出版社相关信息,正在全力查找中!


书籍摘录:

暂无相关书籍摘录,正在全力查找中!


在线阅读/听书/购买/PDF下载地址:

在线阅读地址:重构(Ruby版)在线阅读

在线听书地址:重构(Ruby版)在线收听

在线购买地址:重构(Ruby版)在线购买


原文赏析:

曾经在我领导的一个项目进行到一半的时候,团队里加入了一名资深的程序员。他一进来就看到了一些他觉得不好的东西,并提议我们重构代码以便获得更好的领域模型。怀着忐忑不安和渴望学习的心情,在接下来的两天里我和他坐在一起对领域模型做了很多修改。遗憾的是,由于必要功能的额外限制,他建议的很多修改最终都无法实现。最后,虽然重构代码的结果只是稍微好一点点,但是最大收获在于那名资深程序员通过重构对系统有了深入的理解。自那时候起,他所展现的价值与任何第一天就加入项目的团队成员相比都是毫不逊色的。虽然项目在新功能开发上损失了两个开发日,但是在仅仅两天之内它就得到了一个拥有100%生产力的资深程序员。他在接下来几个月里所作出的贡献要远远超过当初被拖慢的进度。


It is better to write and run incomplete tests than not to run complete tests.


你可以通过重构挽救任何设计错误吗?或者会不会有些设计决定太过核心,日后无法依赖重构进行修改?在绝大多数情况下,重构都有办法从容应对。虽然有些架构上的决策,例如框架或者是集成技术的选择要重构起来会比较难,但也不是不可能的。曾经在一个项目中我们想要转向一个面向消息的架构来改善性能,并解耦合系统中的组件,但是公司不太愿意为这样大规模的变化买单。因此当需要添加新功能的时候,我们就采用面向消息的架构来实现它们。然后我们就能为这些相对简单的功能要求必要的基础设施。当需要对旧功能做修改的时候,我们就把它们一个一个重构到新的架构上。虽然花了不少时间,但是最后我们还是成功了,公司通过整个流程得到了新功能。


临时变量的原罪就是它们是“临时的”和“局部的”。因为它们只能在它们所处的方法上下文中可见,所以临时变量会鼓励更长的方法,而且这是你惟一可以继续访问到临时变量的方法。通过将临时变量替换为查询方法,类里的任何方法都可以获取这些信息。这样就能给类带来更清晰的代码。


一个好的信号是数据的一个子集和方法的一个子集看起来很合拍。

另一个信号是数据的一部分总是一起变化,或是强烈相互依赖。


鸭子测试”可以这样表述:当看到一只鸟走起来像鸭子、游泳起来像鸭子、叫起来也像鸭子,那么这只鸟就可以被称为鸭子。”

在鸭子类型中,关注的不是对象的类型本身,而是它是如何使用的。

在不使用鸭子类型的语言中,我们可以编写一个函数,它接受一个类型为鸭的对象,并调用它的走和叫方法。在使用鸭子类型的语言中,这样的一个函数可以接受一个任意类型的对象,并调用它的走和叫方法。


其它内容:

编辑推荐

  本书是对Martin Fowler的经典权威著作《重构》的重大更新版,并以Ruby为例彻底重写。

  作者借用Fowler*初的想法,展示了如何以一种受控、高效以及迭代的方式进行重构,帮助你有条不紊地改善代码的质量而不会引入新的bug。不论是编写还是维护Ruby代码,本书都将是不可或缺的重要参考。


书籍介绍

差不多十年前,我(Martin)曾经和Kent Beck一起做过一个项目。这个项目的名字叫C3,它后来成为极限编程诞生的标志性项目,并帮助我们看清了敏捷软件运动的方向。

我们从那个项目里学到了很多东西,不过真正震撼到我的是Kent那种有条不紊、持续不断改进系统设计的风格。一直以来我对编写干净的代码都抱有极大的热情,坚信花时间去清理有问题的代码,以便让团队能更快捷地开发功能是非常有价值的事情。而Kent向我介绍了一种很多顶尖Smalltalk程序员使用的技术,它能让我的工作效率成倍提升。这是一种他们称之为重构的技术,我很快就变得想要在任何场合下都把它介绍给别人。但是市面上没有任何出版物或是类似的资源可以让我指引人们去自己学习这项技术。既然Kent和其他Smalltalk程序员都没意愿要写一本,所以我就决定自己动手了。

结果我的那本《重构》大受欢迎,在重构成为主流技术的过程中看起来还扮演了相当重要的角色。随着近年来Ruby的兴起,给这本书写一本Ruby版是很有意义的,为此我拉来了Jay和Shane。


书籍真实打分

  • 故事情节:4分

  • 人物塑造:6分

  • 主题深度:4分

  • 文字风格:4分

  • 语言运用:6分

  • 文笔流畅:8分

  • 思想传递:6分

  • 知识深度:4分

  • 知识广度:3分

  • 实用性:3分

  • 章节划分:3分

  • 结构布局:4分

  • 新颖与独特:6分

  • 情感共鸣:5分

  • 引人入胜:3分

  • 现实相关:9分

  • 沉浸感:9分

  • 事实准确性:4分

  • 文化贡献:6分


网站评分

  • 书籍多样性:5分

  • 书籍信息完全性:9分

  • 网站更新速度:9分

  • 使用便利性:6分

  • 书籍清晰度:7分

  • 书籍格式兼容性:5分

  • 是否包含广告:9分

  • 加载速度:7分

  • 安全性:4分

  • 稳定性:8分

  • 搜索功能:4分

  • 下载便捷性:5分


下载点评

  • 下载速度快(197+)
  • 四星好评(217+)
  • 傻瓜式服务(464+)
  • 全格式(187+)
  • 体验还行(446+)
  • 无水印(339+)
  • 内涵好书(374+)

下载评价

  • 网友 习***蓉: ( 2024-12-23 18:27:04 )

    品相完美

  • 网友 国***芳: ( 2024-12-30 15:49:07 )

    五星好评

  • 网友 丁***菱: ( 2024-12-22 10:54:12 )

    好好好好好好好好好好好好好好好好好好好好好好好好好

  • 网友 寿***芳: ( 2024-12-30 15:58:33 )

    可以在线转化哦

  • 网友 屠***好: ( 2024-12-27 04:28:38 )

    还行吧。

  • 网友 孙***美: ( 2025-01-11 05:09:15 )

    加油!支持一下!不错,好用。大家可以去试一下哦

  • 网友 康***溪: ( 2024-12-24 11:41:28 )

    强烈推荐!!!

  • 网友 权***波: ( 2025-01-14 15:45:30 )

    收费就是好,还可以多种搜索,实在不行直接留言,24小时没发到你邮箱自动退款的!

  • 网友 冉***兮: ( 2025-01-02 07:44:03 )

    如果满分一百分,我愿意给你99分,剩下一分怕你骄傲

  • 网友 陈***秋: ( 2025-01-07 11:55:20 )

    不错,图文清晰,无错版,可以入手。

  • 网友 冯***卉: ( 2024-12-24 03:06:31 )

    听说内置一千多万的书籍,不知道真假的

  • 网友 瞿***香: ( 2025-01-14 15:25:35 )

    非常好就是加载有点儿慢。

  • 网友 家***丝: ( 2025-01-13 19:46:09 )

    好6666666

  • 网友 石***致: ( 2025-01-01 23:44:47 )

    挺实用的,给个赞!希望越来越好,一直支持。

  • 网友 曾***玉: ( 2025-01-10 06:35:15 )

    直接选择epub/azw3/mobi就可以了,然后导入微信读书,体验百分百!!!

  • 网友 訾***雰: ( 2024-12-23 00:40:54 )

    下载速度很快,我选择的是epub格式


随机推荐