代码整洁之道
来源:互联网 发布:c语言入门基础教程 编辑:程序博客网 时间:2024/05/02 01:12
我从不一开始就想写下完美的代码,我想也没有人能办到。我只是不停的雕琢它们,直到我认为完美……
命名:
1.名副其实,从名称上看出用途,如果需要注释来表达用途,你已经输了……
2.具有前缀(后缀)的命名方式是上世纪的产品,以后就忘记吧……
3.包的命名规范:域名+项目名+模块名/层名
4.类的命名规范:类的名字必须由大写字母开头,一个单词中的其他字母均为小写。如果类名称由多个单词组成,则建议将每个单词的首字母均用大写,例如TestPage。如果类名称中包含单词缩写,则建议将这个词的每个字母均用大写,如:XMLExample。类名应该是名词。
5.常量的命名规范:常量的名字应该都使用大写字母,并且指出该常量完整含义。如果一个常量名称由多个单词组成,则建议用下划线来分割这些单词。
6.方法的命名规范:方法的名字的第1个单词应以小写字母开头,后面的单词则建议用大写字母开头。
7.参数的命名规范和方法的命名规范相同,而且为了避免阅读程序时造成迷惑,请在尽量保证在参数名称为一个单词的情况下,参数的命名尽可能明确。
函数:
1.讨厌长的函数。
2.一个函数,在一个层次上,只做一件事情。
3.一个函数的输入参数应该尽量少,利用对象封装参数是一种可行的方案。
4.在函数中,使用异常代替错误码是一种好的习惯,这样可以把错误的处理放在主逻辑之外。
5.函数的返回值绝对不应该是NULL,如果真的觉得应该返回NULL,不如返回特殊值或者抛出异常。
边界:
1.对第三方包的使用,一定要注意隔离。明确的边界让我们在遇到困难时有余地。
类:
1.类代码的良好顺序:公共静态常量,私有静态常量,私有实体变量,公共函数(公共函数调用的私有函数应该紧跟公共函数之后)。
在《重构 改善既有代码设计》中,反对纯粹的JavaBean,但是《代码整洁之道》中,认为在部分领域,纯粹的JavaBean很有用。而且纯粹的JavaBean代表数据结构,如果牵扯到业务,就职责不单一了。哎,仁者见仁智者见智。
命名:
1.名副其实,从名称上看出用途,如果需要注释来表达用途,你已经输了……
2.具有前缀(后缀)的命名方式是上世纪的产品,以后就忘记吧……
3.包的命名规范:域名+项目名+模块名/层名
4.类的命名规范:类的名字必须由大写字母开头,一个单词中的其他字母均为小写。如果类名称由多个单词组成,则建议将每个单词的首字母均用大写,例如TestPage。如果类名称中包含单词缩写,则建议将这个词的每个字母均用大写,如:XMLExample。类名应该是名词。
5.常量的命名规范:常量的名字应该都使用大写字母,并且指出该常量完整含义。如果一个常量名称由多个单词组成,则建议用下划线来分割这些单词。
6.方法的命名规范:方法的名字的第1个单词应以小写字母开头,后面的单词则建议用大写字母开头。
7.参数的命名规范和方法的命名规范相同,而且为了避免阅读程序时造成迷惑,请在尽量保证在参数名称为一个单词的情况下,参数的命名尽可能明确。
函数:
1.讨厌长的函数。
2.一个函数,在一个层次上,只做一件事情。
3.一个函数的输入参数应该尽量少,利用对象封装参数是一种可行的方案。
4.在函数中,使用异常代替错误码是一种好的习惯,这样可以把错误的处理放在主逻辑之外。
5.函数的返回值绝对不应该是NULL,如果真的觉得应该返回NULL,不如返回特殊值或者抛出异常。
边界:
1.对第三方包的使用,一定要注意隔离。明确的边界让我们在遇到困难时有余地。
类:
1.类代码的良好顺序:公共静态常量,私有静态常量,私有实体变量,公共函数(公共函数调用的私有函数应该紧跟公共函数之后)。
在《重构 改善既有代码设计》中,反对纯粹的JavaBean,但是《代码整洁之道》中,认为在部分领域,纯粹的JavaBean很有用。而且纯粹的JavaBean代表数据结构,如果牵扯到业务,就职责不单一了。哎,仁者见仁智者见智。
- [代码整洁之道]-整洁代码
- 代码整洁之道
- 代码整洁之道
- 代码整洁之道
- 代码整洁之道
- 代码整洁之道
- 《代码整洁之道》
- 代码整洁之道
- 代码整洁之道
- 代码整洁之道
- 代码整洁之道
- 代码整洁之道
- 代码整洁之道
- 代码整洁之道
- 代码整洁之道
- 代码整洁之道
- 代码整洁之道
- 代码整洁之道
- JAVA静态代理
- 大气风格网站设计示范(原创教程)
- Graphics.DrawImage 方法 IntPtr 结构 GDI 句柄 知识收集
- 雷锋读图:浅析移动应用软件现状
- 以GNU的hello为例演示制作rpm包的方法
- 代码整洁之道
- linux内存参数和oracle参数
- coro学习1 -并行抓网页
- Js的Array对象的几个原型方法
- Windows Server 2008 R2 Standard下部署web遇到的问题
- 如何维护SQL Defalt Trace历史信息
- 解读LOTUS
- linux上端口映射的详细步骤
- System类对IO的支持