项目中的一些小经验
2009-08-12 09:33
113 查看
都是些在项目中的小感想,开个头,慢慢补充:
1.千万不要假设别人提交给你的数据是合法的,不管是网络传输还是函数调用,自己的模块应该具有足够的免疫力。
2.尽量减少和别的模块的耦合,当耦合不可避免时,尽量避免使用函数调用等紧密耦合方式,而应该使用消息队列,SOCKET等松耦合方式。
3.当自己的模块不得不依赖于别人的实现时,在依赖发生点添加粘合层,使自己的模块除了系统调用和库函数外只依赖于自己的函数。
4.许多功能要求都可以抽象成get-set和ctrl三个操作,get,set操作的是属性,ctrl操作的是方法。
5.许多模块都可以抽象成这样的一个组件
|============|
in ===========| |============out
|============|
||
||
||
||
ctrl
6.三层结构是一种不错的设计思想,它实现了数据传输,数据处理,数据展现的分层化处理。
7.用C设计界面程序时,基于对象的思想和消息机制的运用是必要的。
8.不要在宏定义中改变传入参数的值,不要在传参过程中改变变量的值,对于后者,如果是宏参数,结果很可能不是想要的,如果是函数参数,它依赖于求值顺序。
1.千万不要假设别人提交给你的数据是合法的,不管是网络传输还是函数调用,自己的模块应该具有足够的免疫力。
2.尽量减少和别的模块的耦合,当耦合不可避免时,尽量避免使用函数调用等紧密耦合方式,而应该使用消息队列,SOCKET等松耦合方式。
3.当自己的模块不得不依赖于别人的实现时,在依赖发生点添加粘合层,使自己的模块除了系统调用和库函数外只依赖于自己的函数。
4.许多功能要求都可以抽象成get-set和ctrl三个操作,get,set操作的是属性,ctrl操作的是方法。
5.许多模块都可以抽象成这样的一个组件
|============|
in ===========| |============out
|============|
||
||
||
||
ctrl
6.三层结构是一种不错的设计思想,它实现了数据传输,数据处理,数据展现的分层化处理。
7.用C设计界面程序时,基于对象的思想和消息机制的运用是必要的。
8.不要在宏定义中改变传入参数的值,不要在传参过程中改变变量的值,对于后者,如果是宏参数,结果很可能不是想要的,如果是函数参数,它依赖于求值顺序。
相关文章推荐
- 我在实施CMMI开发项目时候的一些经验
- 项目经理三年多来的一些心得和经验总结
- maven父子项目的一些经验
- maven父子项目的一些经验
- 一些项目代码经验
- 关于项目中的一些经验:封装activity、service的基类,封装数据对象
- 最近项目中应该记住的一些经验
- 关于maven项目初始化数据库的一些经验
- J2ME做项目的一些经验
- [项目管理]总结的一些系统分析的经验
- 一些项目经验记录
- 解决项目问题的一些经验
- maven父子项目的一些经验
- maven父子项目的一些经验
- 初次使用vue写项目的一些经验
- 最近在利用DSP做一个项目,好久没来自己的空间了,后续有时间会发一些自己的学习经验,呵呵!
- 我的一些项目管理经验
- 英文简历中关于项目经验的一些有用的例子
- 项目的一些经验总结
- 在项目中开发中的一些经验