首页 > 其他 > 详细

分析一套源代码的代码规范和风格并讨论如何改进优化代码

时间:2019-10-05 10:22:30      阅读:52      评论:0      收藏:0      [点我收藏+]
  • 结合工程实践选题相关的一套源代码,根据其编程语言或项目特点,分析其在源代码目录结构、文件名/类名/函数名/变量名等命名、接口定义规范和单元测试组织形式等方面的做法和特点;

  我选择的是Siddhi的源代码,该项目使用的编程语言是Java.其目录结构如图1所示。目录结构清晰明了,各个模块负责什么功能,仅从名称就可以大致猜出。

 

技术分享图片

图1

  该项目中,根据模块划分了若干个不同过的目录。命名规则为,项目名siddhi为前缀,以‘-’隔开,加上各模块实现的功能。

  如图2所示,是siddhi-core模块中包名的格式。将各个相关的类放入一个包进行管理。

技术分享图片

图2

  图3到图5展示的是项目中类名的命名风格。类名使用 UpperCamelCase 风格,遵从驼峰形式。异常类命名使用 Exception 结尾;测试类命名以它要测试的类的名称开始,以 TestCase 结尾。

技术分享图片

 图3

技术分享图片

图4

技术分享图片

图5

  图6、图7是变量名和方法名的命名风格。方法名、参数名、成员变量、局部变量都统一使用 lowerCamelCase 风格,遵从驼峰形式。为了达到代码自解释的目标,任何自定义编程元素在命名时,都使用尽量完整的单词组合来表达其意。

技术分享图片

   图6

技术分享图片

图7

 

  • 列举哪些做法符合代码规范和风格一般要求;
  1. 类名、方法名、变量名遵从驼峰形式,名称本身含有意义,可以达到自注释的目的;
  2. 常量命名全部大写,单词间用下划线隔开;
  3. 抽象类命名以Abstract开头,异常类以Exception结尾,测试类以TestCase结尾。各个类的作用一目了然;
  4. 如果使用了设计模式,类名会以Factory、Listener等结尾,有利于读者理解代码含义。
  • 列举哪些做法有悖于“代码的简洁、清晰、无歧义”的基本原则,及如何进一步优化改进;
  1. 将某些类命名为Executor,与JDK中多线程的部分类名重合,容易让开发者产生误解。建议命名为Operator.
  2. 注释少,没有Javadoc,有时要想知道方法的参数和返回值的含义,需要进入方法,看具体实现才能搞清楚。
  • 总结同类编程语言或项目在代码规范和风格的一般要求

  现代软件架构都需要协同开发完成,高效协作即降低协同成本,提升沟通效率,所谓无规矩不成方圆,无规范不能协作。所以项目中的成员应该选择一套统一的代码规范。

  常见的有

  1. 名称要以驼峰形式,方法名、参数名、成员变量、局部变量都统一使用首字母小写的驼峰风格,类名使用首字母大写的驼峰风格;
  2. 命名要有意义。代码中的命名禁止使用拼音与英文混合的方式,更不允许直接使用中文的方式。正确的英文拼写和语法可以让阅读者易于理解,避免歧义
  3. 缩进要统一。比如,采用 4 个空格缩进,禁止使用 tab 字符。if/for/while/switch/do 等保留字与括号之间都必须加空格等。

  对于Java这门编程语言来说,阿里巴巴公司为了规范Java的代码风格,推出了《阿里巴巴Java开发手册》。Java程序员可以根据该手册上的说明进行编码。不仅如此阿里还在IDEA上开发了一款名为阿里编码规范的插件,只要下载并安装此插件,可以自动对代码进行编码规范检测,可以说是十分方便了。

技术分享图片

技术分享图片  图8 不符合编码规范会有提示

 

分析一套源代码的代码规范和风格并讨论如何改进优化代码

原文:https://www.cnblogs.com/lm273/p/11624021.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!