函数的使用
2014-07-18 00:22
162 查看
结束了两个月的理论培训终于到了实训的时候了,这时候才发现自己在项目开发中的知识有多么的贫瘠,什么都是只闻其名,不知其为何物,过程中遇到了很多问题我想我应该把这些都记下来,以供自己能够在以后的工作和学习中善加使用这些知识。
我在做接口设计时找到的一篇文章感觉写的不错,借来学习充充电:
任何一个有一定规模系统,通常会把系统做一定分解降低分析设计开发的难度,模块划分是一个比较常见的方式。
而在模块的划分,及其分析设计的实践中,模块和模块的交互接口最为重要,通常我们认为这些接口应该通用稳定,然而如何设计每个模块对外提供的接口却是一个不易的问题。
实践中,极有可能出现两种状况:接口维护失控或者过严而死板(而影响开发)。接口失控是因为接口的维护太过随意,因为A模块的需要就轻易在B模块中添加一个接口(方法),导致该接口(方法)非独立性(基本上只给模块A的这个功能点使用),或者是接口的控制过严,导致或者工作效率不高,或者接口的易用性不好。
原因在于:接口是两个模块间的耦合,而发生的种种问题在于模块耦合太过紧密;同时实践中,把模块对外提供的接口,与模块需要实现的外部模块的接口混为一谈。
根据指导原则:为了降低耦合只有在中间加一层。一种可行的实践是:不轻易为模块设计对外提供的接口(方法),除非是通过重构得来的;模块对外提供两种类:一个是需要外部模块实现的接口(接口设计从本模块需要出发,当然每个接口尽管是为某个功能点服务,但也要注意其在模块内通用性),另一个是其它模块要求本模块实现的接口的实现类。
即:A模块拥有一些需要B模块实现的接口(A模块对B模块的要求),而B模块中也有要求A模块实现的接口,因而A有这些接口的实现类。
这种实践方式的好处在于:模块的接口就多了一层隔离降低了耦合,把接口的通用性和接口的适应性分离,又明确了模块的边界,使得接口在日后的优化和调整有了缓冲。
注:文章来源http://yimlin.javaeye.com/blog/59364
我在做接口设计时找到的一篇文章感觉写的不错,借来学习充充电:
任何一个有一定规模系统,通常会把系统做一定分解降低分析设计开发的难度,模块划分是一个比较常见的方式。
而在模块的划分,及其分析设计的实践中,模块和模块的交互接口最为重要,通常我们认为这些接口应该通用稳定,然而如何设计每个模块对外提供的接口却是一个不易的问题。
实践中,极有可能出现两种状况:接口维护失控或者过严而死板(而影响开发)。接口失控是因为接口的维护太过随意,因为A模块的需要就轻易在B模块中添加一个接口(方法),导致该接口(方法)非独立性(基本上只给模块A的这个功能点使用),或者是接口的控制过严,导致或者工作效率不高,或者接口的易用性不好。
原因在于:接口是两个模块间的耦合,而发生的种种问题在于模块耦合太过紧密;同时实践中,把模块对外提供的接口,与模块需要实现的外部模块的接口混为一谈。
根据指导原则:为了降低耦合只有在中间加一层。一种可行的实践是:不轻易为模块设计对外提供的接口(方法),除非是通过重构得来的;模块对外提供两种类:一个是需要外部模块实现的接口(接口设计从本模块需要出发,当然每个接口尽管是为某个功能点服务,但也要注意其在模块内通用性),另一个是其它模块要求本模块实现的接口的实现类。
即:A模块拥有一些需要B模块实现的接口(A模块对B模块的要求),而B模块中也有要求A模块实现的接口,因而A有这些接口的实现类。
这种实践方式的好处在于:模块的接口就多了一层隔离降低了耦合,把接口的通用性和接口的适应性分离,又明确了模块的边界,使得接口在日后的优化和调整有了缓冲。
注:文章来源http://yimlin.javaeye.com/blog/59364
相关文章推荐
- 深入了解C语言(函数的参数传递和函数使用参数的方法)
- 在Visual C++中使用fopen()函数来读写文件
- 使用未公开关键字在 C# 中导入外部 printf 等参数数量可变函数
- VC中使用低级音频函数WaveX播放声音文件
- 使用Windows API函数显示打开文件对话框
- 大胆使用指向成员函数的指针
- 使用未公开关键字在 C# 中导入外部 printf 等参数数量可变函数 [1] CLR 支持
- 钩子技术介绍及函数使用
- 刚才遇到了关于C#使用外部DLL函数上的char*的问题。
- 如何使用SetWindowRgn函数创建异形窗口
- ADO & ADO.NET中使用存储过程的两个共用的函数
- 内存分配——realloc()函数的使用
- 我的理解:在有返回值的函数内是否应该使用异常处理?欢迎大家斧正
- typedef使用大全3(指向函数的指针)
- 使用单独的命令处理类来处理命令消息(适用于有很多命令处理函数的对象,以及共享命令处理函数)
- Windows API函数使用技巧
- CUJ:高效使用标准库:显式函数模板参数申明与STL
- 使用未公开关键字在 C# 中导入外部 printf 等参数数量可变函数 [2] C# 实现
- zt: SQL*PLUS常用命令和Decode()函数使用技巧
- 使用函数完成表格奇偶行的颜色设定(IE,NS,FF)