`
unsoundboy
  • 浏览: 63448 次
  • 性别: Icon_minigender_1
  • 来自: 武汉
社区版块
存档分类
最新评论

重构清单

 
阅读更多

1.  重复代码

2.  长方法

3.  大类

4.  长参数表

5.  发散的变化 类有太多杂乱的变化

6.  特性羡慕 一个类对另一个类的过多实现细节感兴趣

7.  数据抱团 在不同的地方总是一起使用的数据应该有一个他们自己的类

8.  原始数据困扰 程序用到了太多的原始数据类型,这些数据实际上应该是类的一部分

9.  switch 语句

10.并行继承层次 重新定义平行的类有时过于重复

11.懒惰类

12.投机性泛型 在实际需要之前就为将来的灵活性而设计,这将导致不必要的复杂性

13.消息链 太多消息形成一个链,难于追踪

14.中间人 有时直接与对象交互的更好,无需借助中间人

15.不恰当亲密关系 类与类之间相互不需要知道得太多

16.数据类 类需要完成一些任务

17.遗产拒绝 子类应该利用到从超类继承来的绝大部分东西

18.注释 是否能通过为方法或变量提供一个更好的名称,就取消某条注释

分享到:
评论

相关推荐

    《重构-改善既有代码的设计》电子书以及总结的书中源码

    "Refactoring.txt"可能包含了作者在阅读过程中整理的重构清单,这份清单是对书中重构手法的总结和提炼,对于开发者来说,是一份非常实用的参考资料。你可以根据这个清单在自己的项目中逐步实践,逐步提高代码质量。 ...

    代码重构.pdf

    - 制定重构计划和检查清单。 - 选择合适的重构手法,例如提取方法、合并相似代码、将查询与命令分离等。 - 逐步修改代码,每次只做一小部分,同时运行测试验证重构未破坏原有功能。 - 进行代码审查,以确保重构...

    项目重构方案设计.pdf

    将制定性能优化清单,避免资源密集型操作,提升系统运行效率。 重构后的架构设计如下: - **UI层**:采用MVVM模式,UI结构更加清晰,安全验证首先通过Security模块进行,页面功能的实现通过服务层进行数据交互。 -...

    compiere产品物料清单窗口组件页签_清单页签为空_会显示上一次的组件

    此外,为了提高系统的稳定性和用户体验,还应考虑对代码进行重构,优化数据查询和处理流程,减少不必要的数据库交互次数,同时增强异常处理机制,确保在遇到错误或异常情况时能够给出明确的提示,而非仅仅在日志中...

    使用 JavaScript 和源代码重构机器人游戏.zip

    这是一款简单而有趣的游戏,你可能已经将它列入了愿望清单。这款游戏主要包含 javascript 和一些 CSS,以使其看起来更美观。这款游戏与我们玩的炸弹人游戏非常相似。 游戏玩法 游戏玩法简单,非常有趣。您所要做的...

    软件开发工具推荐清单.docx

    首先,Visual Studio (VS) 是微软提供的强大IDE,其中Resharper是一款非常受欢迎的插件,它可以增强VS的代码智能提示、重构和代码分析功能,显著提升开发效率。虽然它是付费软件,但其价值在很多开发者眼中远超价格...

    PRD2018-G07-需求变更影响分析清单1

    分析清单将明确指出每个变更如何影响这些元素,以确定哪些部分需要重新设计或重构。 5. **需求变更的工作量评估** 评估工作量至关重要,因为它直接影响项目的预算和时间表。这里会估计变更实施所需的人工小时数,...

    todo:一个简单的清单待办应用程序。 后端使用json-server,前端使用vue

    待办事项应用一个简单的清单/待办事项应用程序。 它使用 json-server 作为后端。 还有前端的vue。 Bootstrap 用于构建接口。 我决定不使用路由器只是为了保持简单。 事后看来,要进一步改进应用程序,这是拼图的关键...

    checklist:辅助功能清单

    辅助功能清单 使用Angular JS中内置的这个极其小巧轻便的项目,可以为Web开发人员在发布网站之前进行检查提供全面的清单。 它包括最佳实践和Internet站点上的各种资源。 希望您会在项目中发现它...重构 参考 执照

    01人才培养模式改革佐证材料清单.doc

    2. **人才培养模式改革方案**:此文档阐述了改革的整体思路、目标和具体措施,包括课程体系的重构、实践教学的强化、校企合作的深化等方面,旨在创新教学模式,提高教学质量。 3. **专业教学计划**:教学计划是改革...

    typescript-plugins-of-mine:研究,文档以及最终有用的TypeScript Language Service插件,用于在多个IDE上进行coe重构,例如vscode,sublime和Atom等编辑器,在其他类型化语言和IDE(如Java Eclipse)中非常常见

    作品清单 打字稿插件主动代码修复 到目前为止,实现所有“有趣的重构”的最重要的程序包。 它是一个TypeScript语言服务插件,具有几个小的主动代码重构,例如在调用不存在的重构时创建构造函数,在定义不存在的变量...

    重构计算机:摇树以实现最小可行的SBOM

    标题中的“重构计算机:摇树以实现最小可行的SBOM”指的是在计算机系统或软件开发过程中,通过重构技术来优化代码结构,同时实现最小可行的软件物料清单(Software Bill of Materials,简称SBOM)。SBOM 是一个记录...

    微仓管理系统设计文档

    1. 入库流程:包括入库订单(PO)的接收,如采购入库、退货入库等,上游系统下单或模板导入,然后收货员依据发货清单(ASN)进行收货和上架。系统会自动生成上架任务,确保货品有序存储。 2. 出库流程:出库订单...

    luobo:基于Cocos2d-JS重构《保卫萝卜》

    保卫萝卜 ...待办事项清单 家庭面 关卡选择 游戏关卡 快速入门 # 安装yarn,或者直接使用相对应的 `npm install`、`npm run dev` 等命令。 npm i -g yarn # 安装依赖 yarn # 开发模式 yarn dev yarn dev执

    互评-team20-软件需求规格说明书-问题清单1

    本问题清单主要针对该文档的V1.2版本,旨在识别并解决存在的问题,确保项目的顺利进行。 1. 文档访问问题 问题描述:需求规格说明书v1.6无法打开。 严重性:严重 处理意见:此问题表明可能存在文件格式错误或...

    程序文件清单

    这有助于了解程序的组织方式和功能划分,便于代码维护和重构。 3. **配置文件**:配置文件是控制程序行为的重要部分。清单中会指出这些文件的位置,如数据库连接配置、环境变量设置等,它们直接影响程序在不同环境...

    软件开发工具推荐清单.pdf

    1. **Resharper**:这是一个针对Visual Studio的强大插件,它提供了代码分析、优化建议、单元测试集成和代码重构等功能,有助于提升代码质量和开发效率。Resharper被广大开发者所推崇,因为它能够快速定位和修复代码...

Global site tag (gtag.js) - Google Analytics