新人起步时遇到的困惑
来源:互联网 发布:建筑外墙涂装人工智能 编辑:程序博客网 时间:2024/05/11 15:28
最近在写人员信息管理的程序,用Java实现,第一次CC完,我就写了一个类和一个test类Tmis.java,只是实现了功能,却没有用OO的思想,代码重用几乎不可能,第二次CC完,类分为了Tmis.java,Employee.java,BasicInfo.java,DetailInfo.java,但是耦合性很强,如何降低耦合性,是我接下去几天的任务。大家有秘籍的可要交流一下啊。下面是网上的一篇文章,觉得不错。
————————————————
如何看到一篇文章,讲java中将要尽量使用接口,应尽量避免使用继承,这对敏捷开发尤其重要。这篇文章的主要观点就是接口能够很大程度上的降低耦合。降低耦合对于敏捷开发非常重要。敏捷开发的过程不像传统的软件工作流程,先你设计,再编码;而是需求一出来就开始编码(不知道这么理解对不对),没有详细的design,需求变了就修改代码,改进代码。如果耦合太强的话,越往后修改的代价就越高,直到不可能修改,整个项目失败。
最近刚好又在看自己以前的代码,修bug,感觉自己以前的代码写得挺乱的,充其量也就是懂语法。其中不乏各种不必要的继承。最要命的问题是,很多类共同完成一个功能,耦合非常高,单个类的测试非常困难。以后每实现一段代码时,一定要想好怎么样好测试。
再者,其实写代码和做其他的产品都差不多。每个模块就是一个零件。当这个零件和其他的零件之间的关系非常小的时候,它才可能更通用,成为标准零件,才能被重复使用,例如机械中的螺丝。这倒让我想起了大学里学过的“造船成组技术”,我突然感觉到软件工程和造船也差不多。造船,批量生产的不多,大都是按照不同的需求来量身订做,软件也大都如此;尽管每艘船都是量身订做,但其中除了通用的零件外,大部分零件都需要订做,但是这些订做的零件中,很多部件在同一艘船上也可能多次用到,软件中也是这样,除了基本的类库,大部分模块也是要重新实现,但很多模块也会被重复使用到。
说得有点远了。总之,要降低耦合,让你每一小块代码都功能明确,都能测。
- 新人起步时遇到的困惑
- 新人的困惑
- 新人的困惑
- 新人的困惑
- 编程中遇到的困惑
- 【交流】以前学习时遇到的困惑:重写与重载
- 学习for循环时遇到的困惑不解
- 用jquery开发手机app起步时遇到的问题
- C++还是Java,职场新人的困惑
- 新人报道! 未来的明星从今天开始起步!!
- asp/sql初学遇到的困惑
- 开发邮件系统中遇到的困惑
- 企业信息化建设中遇到的困惑
- oracle使用max函数遇到的困惑
- 实习中遇到的一些困惑问题
- 编程中遇到的SQL困惑总结
- spring mvc 再次入门遇到的困惑
- js中的setTimeout遇到的困惑
- jsp的session介绍
- C++ Primer 4th Notes - Chapter 3 Library Types
- linux 中解析命令行参数 (getopt_long用法)
- 职业规划
- 修改系统的启动项
- 新人起步时遇到的困惑
- StopBadware.org:谷歌背后的神秘申诉网站
- 雅虎网宣布将关闭“站长天下”服务功能
- Visual Studio 2008 无法安装解决办法
- 读取sql server表的字段名,字段类型,字段长度,字段属性描述的sql语句
- 如何Eclipse自动提示
- 知识整理:sql 视图
- FastReport4.6程序员手册_翻译(一)
- java开源大全