重构的一点看法
来源:互联网 发布:快牙软件 编辑:程序博客网 时间:2024/06/05 06:44
如果有这么一个项目你该如何去重构呢?
1.三个独立的项目使用一个数据库。数据库没有E-R实体模型,没有设计文档,也没有任何关系图,表之间没有外键关联(意味着逆向工程不可用),所有表关系、数据完整性和约束全部由存储过程控制(10年前这么干过,但今天居然又看见了,感概啊!)。
2.项目没有设计文档,只有一个接口文档,接口中有部分参数意图不明,也没有人能够解释意图不明的参数出现的理由
3.代码中没有任何注释,主要靠英文名字去猜。框架运用的是spring+mybatis,但spring+mybatis使用方式居然使之无法使用事务。也不支持任何的对象缓存,也没有设计查询缓存的调用。
4.也没有做到接口与实现类的一一对应,很多实现类调用一个接口,增加耦合度不利于扩展,而且需求变更接口一动全得动
5.代码中全是警告,没有工整性,代码俨然就是给机器读的,难于阅读和理解。
我在想这样的项目个人认为已经失去了重构的意义,因为需要动的地方太多,首先数据库、设计、代码基本都没有任何留用的价值。但公司领导一直发出的信息就是“数据库尽量延用!程序接口尽量延用”。我感到可怕,这样的项目有太多风险不可控了,怎么延用啊?
真正的重构首先要:基于代码易读、工整、严谨,代码测试的完善,数据库设计的合理和科学。其次就是才能按模块的逐步重构和修改。
数据库的混乱、代码基于机器可读,这样的项目还有重构的价值吗?
- 重构的一点看法
- 关于对代码重构的一点看法
- 关于对代码重构的一点看法
- TCP 重传计时器的一点看法
- cout<<的一点看法
- GUI的一点看法
- 关于页面重构的一些看法
- 对DUILIB重构的一些看法
- 对SharePoint的一点看法
- 有关Iterator的一点看法
- 有关JMS的一点看法
- 关于linb的一点看法
- 关于跳槽的一点看法
- 对需求的一点看法
- 关于新技术的一点看法
- java 学习的一点看法
- 高效会议的一点看法
- 一点关于Ares的看法
- 大数据查询时出现 org.hibernate.exception.GenericJDBCException: Cannot open connection 请求支援
- 晶振与晶体的参数详解
- 不是用它printf,将十进制数以二进制和十六进制的形式输出
- Could not find artifact com.sun:tools:jar:1.5.0 问题解决
- 用面向对象的编程方式写JavaScript
- 重构的一点看法
- Failed to install on device 'emulator-5554': timeout
- 最常用的JavaScript日期函数
- 决策树算法学习
- 分析DB2数据库的优势
- 《算法导论》 2.3.1分治法
- Vim学习之路
- 自我实现strcpy,memcpy函数
- 符号链接的查找