`
fansfirst2008
  • 浏览: 97945 次
  • 性别: Icon_minigender_1
  • 来自: 上海
社区版块
存档分类
最新评论

重构中为什么要去除重复代码

 
阅读更多

   看到不堪入目的代码,我唯一的想法就是重构,重构完了,再去谈修改BUG!

   而重构中最简单的事情,就是提取方法,也就是把做太多事情的方法分解成只做一点事情的方法!

   而今天早上在提取方法中,我发现也可以对方法进行抽象,而进一步满足我重构的冲动和欲望!

   于是我就思考,为什么我会有如此的想法呢?或者别人也会不会有这样的想法!

   其实以前看过的好多书里面,就提到每个方法的代码量不应该超过十行,否则就需要重构,而解释就是,必须迅速的理解方法的意图,方法需要做的事情!

   清晰的结构和迅速的理解,对于软件的意义是非常大的,如果没有这个意识,那么就谈不上重构了!

   为了那个目标和梦想,就必须不断的重构,代码越抽象,其适用性就越大,对于它的理解就越有必要!

   把握每个细节,适度抽象,不唐突!在各个层次间进行切换,在抽象与细节中迅速的理解!

分享到:
评论

相关推荐

    重构中错误代码

    在软件开发过程中,重构是一项至关重要的任务,它旨在改进代码的结构,提高代码的可读性和可维护性,而不改变其外在行为。然而,在实际的重构过程中,开发者可能会遇到各种错误代码,这些错误如果不及时解决,将影响...

    重构-改善既有代码的设计(含中文PDF,英文chm)

    6. **消除冗余**:去除重复代码,实现代码的复用,可以减少维护成本。 7. **面向对象设计原则**:Fowler提到了SOLID原则,包括单一职责原则(Single Responsibility Principle)、开闭原则(Open-Closed Principle...

    代码重构源码(包含重构前后代码)

    重构的第一步通常是识别可以改进的地方,这可能涉及到提取方法、提取类、移除重复代码等。在“First_Instance_Refactor”文件中,我们预计会看到经过优化的代码结构,各个类和方法的职责更加明确。例如,原本可能在...

    31天代码重构快速优化代码

    重构是软件开发过程中的一个重要环节,它涉及到对现有代码结构的改进,以提高代码的可读性、可维护性和整体质量,而不会改变其外部行为。《31天重构速成》系列文章提供了31个具体的重构技巧,帮助开发者逐步掌握这一...

    java代码重构经验总结

    然而,代码中存在以下问题: 1. **资源关闭:** 在`finally`块中关闭资源是好的做法,但应该使用`try-with-resources`语句(自Java 7起提供)来自动关闭资源,这会更加安全和简洁。 2. **异常打印:** 使用`ex....

    java代码重构经验分享

    4. 重构完成后,向服务器提交代码时,需采用更保险的方法,将原文件备份为以*.class.20060809.jeff 的文件,不能简单的覆盖。 重构的工作 1. 名字重构,修改原有不合理的名字。 2. 包,结构重构,重整原有的结构,...

    代码重构总结

    ### 代码重构总结 #### 重构的理由:代码的“坏味道” 代码重构是对现有软件进行改进的过程,旨在提高代码质量而不改变其外部...重构不仅仅是修复代码中的错误,更是优化代码结构,提升软件的整体性能和可维护性。

    C#代码重构31法

    13. **移除重复内容**:消除代码中的重复部分,通过抽象和继承来减少冗余。 14. **封装条件**:将复杂的条件逻辑封装到单独的方法中,使其更容易理解和测试。 15. **提取父类**:当发现多个类有共同的行为时,创建...

    代码的坏味道 重构方式对应表

    **代码的坏味道与重构方式对应表** 代码的坏味道是指在编程过程中可能出现的不良编程习惯,这些习惯可能导致代码难以...通过识别代码中的坏味道并采取相应的重构策略,我们可以逐步优化代码,使其更易于理解和扩展。

    重构,改善既有代码 培训课件

    重构是软件开发过程中的一个重要环节,它关注的是改善既有代码的设计,以提高代码的可读性和维护性,同时保持软件的原有功能不变。本培训课件主要基于原书的前十章内容,旨在让读者理解重构的意义、时机以及如何面对...

    运用DAO和对象化进行重构_项目教程(2)_复习

    在本教程中,可能会涉及到提取方法、移动字段、替换条件为策略等重构技术,以消除重复代码、改善类和方法的设计,以及增强代码的表达力。 4. .NET框架:教程可能基于.NET框架进行,这是一个由微软开发的全面的开发...

Global site tag (gtag.js) - Google Analytics