资料下载网
首页 计算机 考试教辅
31天重构速成 pdf电子书免费下载,百度云
首页 > 计算机 > 计算机F > 31天重构速成 pdf电子书免费下载,百度云

《31天重构速成》pdf电子书免费下载


下载方式一:

百度网盘下载地址:https://pan.baidu.com/s/159xlbwJBiBOuGtoiNW8UYQ
百度网盘密码:1111

下载方式二:

http://ziliaoshare.cn/Download/af_123512_pd_31TZGSC.zip

 


31天重构速成

作者:empty

出版社:empty

《31天重构速成》介绍

简介重构是持续改进代码的基础。抵制重构将带来技术麻烦:忘记代码片段的功能、创建无法测试的代码等等,而有了重构, 使用单元测试、共享代码以及更可靠的无bug的代码这些最佳实践就显得简单多了。鉴于重构的重要性,我决定在整个8月份每天介绍一个重构。在开始之前,请允许我事先声明,尽管我试着对每个重构进行额外的描述和讨论,但我并不是在声明它们的所有权,我介绍的大多数重构都可以在Befactoring.com_中找到,有一些来自《代码大全(第2版),剩下的则是我白己经常使用或从其他网站找到的,我觉得注明每个秉构的出处并不是重要的,因为你可以在网上不同的帖子或文章中找到名称类似的重构。本着这一精神,我将在明天发布第一篇帖丁井开始长达31天的重构马拉松之旅,希望你们能够享受重构井从中获益。

在某些场景中, 向类的使用者隐藏类中的完整集合是个很好的做法, 比如对集合的add/remove操作中包含其他的相关逻辑时、因此,以可迭代但不直接在集合上进行操作的方式来暴露集合,是个不错的主意。我们米看代码:public class Cr der如你所见, 我们对集合进行了封装, 没有将Add/Remove方法暴露给类的使用者, 在.NET Framework中, 有些类如ReadOnly Collection, 会由于封装集合而产生不同的行为, 但它们各白都有防止误解的说明。这是+个非常简单但却极具价值的重构, 可以确保用户不会误用你暴露的集合, 避免代码中的一些bug.

今天的重构同样非常简单, 以至于人们并不认为这是一个有价值的秉构, 迁移方法(Move Method) , 顾名思义就是将方法迁移到合适的位置在开始重构前,我们先看着一下代码:public class BankAccount


《31天重构速成》目录

简介.

Refactoring Day l:Encapsulate Collection.

RefactoringDay2:MoveMethod.

Refactoring Day 3; PullUp Method.

RefactoringDay4:PushDownMethod.

RefactoringDay5:PullUpField.

RefactoringDay6:PushDownField.

Refactoring Day 7:Rename(method, class, parameter.

RefactoringDay8:ReplaceInheritancewithDelegation.

RefactoringDay9:ExtractInterface.

RefactoringDay10:ExtractMethod.

RefactoringDay11:SwitchtoStrategy.

RefactoringDay12:BreakDependencies.

RefactoringDay13:ExtractMethodObject.

RefactoringDay14:BreakResponsibtie.

RefactoringDay15:RemoveDuplication.

RefactoringDay16:EncapsulateConditiona.

Refactoring Day 17; Extract Superclass.

RefactoringDay18:Replaceexceptionwithconditional.

RefactoringDay19:ExtractFactoryClass.

RefactoringDay20:ExtractSubclass.

RefactoringDay21:CollapseHierarchy.

RefactoringDay22:BreakMethod.

RefactoringDay23:IntroduceParameterObject.

RefactoringDay24:RemoveArrowheadAntipattemn.

RefactoringDay25:IntroduceDesignByContractchecks.

RefactoringDay26:RemoveDoubleNegative.

Refa

计算机


python
AI人工智能
javascript
计算机网络/服务器
数据库技术
计算机F

考试教辅


考研考博
英语四六级

沪ICP备18046276号-5