`
Godlikeme
  • 浏览: 165527 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

编码规范

阅读更多
以下部分引自http://wiki.springside.org.cn/display/springside/Coding+Standards
这部分比较有借鉴意义,代码中一些约束检查和异常处理,自己做了些补充。


基本规范
当面对不可知的调用者时,方法需要对输入参数进行校验,如不符合抛出IllegalArgumentException,建议使用Spring的Assert系列函数,应实现暂未实现的方法应抛出UnsupportedOperationException;
声明工具类为 public abstact class,确保只有static方法和变量的类不能被构造实例。
变量,参数和返回值定义尽量基于接口而不是具体实现类,如Map map = new HashMap();
代码中不能使用System.out.println(),e.printStackTrace(),必须使用logger打印信息。

异常处理
重新抛出的异常必须保留原来的异常,即throw new RunTimeException("message", e); 
在所有异常被捕获且没有重新抛出的地方必须写日志。
logger.error("message",e); 
如果属于正常异常的空异常处理块必须注释说明原因,
写日志logger.info("message"),否则不允许空的catch块。

框架尽量捕获低级异常,并封装成高级异常重新抛出,隐藏低级异常的细节。(III)

以下引自j2EE design and development/chapter 4/Coding Standards
慢慢添上来。

以下是我自己写的;
日志处理
结合异常处理。
Log4j配置和说明参见mannual文档.

系统采用Logg4j处理日志。
一般声明,可在基类中声明,子类中复用:
protected final Logger logger = Logger.getLogger(getClass());

如果static 方法需要写logger,声明:
private final static Logger logger = Logger.getLogger(***.class);
注意:不建议在static方法中写log,业务系统的log只处理业务系统的问题,static方法都是为业务逻辑服务的工具类、方法,在业务逻辑中处理异常信息,日志信息就可以了。

如果是需要持久化的类,声明logger;
protected final transient Logger logger = Logger.getLogger(getClass());





分享到:
评论

相关推荐

    华为c++编码规范&c/c++安全编码规范

    华为c++编码规范和安全编码规范最新3.1版本 华为c++编码规范和安全编码规范最新3.1版本 华为c++编码规范和安全编码规范最新3.1版本 华为c++编码规范和安全编码规范最新3.1版本 华为c++编码规范和安全编码规范最新3.1...

    软件工程编码规范

    软件工程编码规范 软件工程编码规范是软件开发过程中的一种重要规范,其目的是为了确保软件的可读性、可维护性和可靠性。以下是软件工程编码规范的相关知识点: 1. 软件工程编码规范的目的 软件工程编码规范的...

    阿里Java的编码规范

    Java、编码规范、Java编码规范、阿里巴巴、阿里巴巴Java编码规范、阿里巴巴Java编码规范、阿里巴巴Java编码规范、阿里巴巴Java编码规范、阿里巴巴Java编码规范、阿里巴巴Java编码规范、阿里巴巴Java编码规范、阿里...

    阿里巴巴编码规范试题答案

    阿里巴巴编码规范试题答案 一、Java多线程编程 1. Java中的定时任务可以使用哪些方式实现?(BCDA) 答案:Java中的定时任务可以使用Timer、ScheduledExecutorService、TimerTask等方式实现。Timer可以实现简单的...

    腾讯C++编码规范

    ### 腾讯C++编码规范解读 #### 1. 概述 腾讯C++编码规范是一套由腾讯集团制定的、旨在规范公司内部C++编程风格的标准文档。该规范首次发布于2007年10月25日,目的在于确保所有使用C和C++语言开发的产品具有统一的...

    Android客户端编码规范

    ### Android客户端编码规范详解 #### 一、引言 在软件开发过程中,编码规范的制定对于提高代码质量、增强团队协作效率以及维护项目的可持续性至关重要。Android客户端编码规范旨在为开发者提供一套统一的标准,...

    c++编码规范(华为).rar

    《C++编码规范——华为实践》 在软件开发领域,编码规范是提升代码质量和团队协作效率的重要工具。尤其对于C++这种复杂的编程语言,遵循一套统一的编码规范显得尤为重要。华为作为全球知名的科技公司,其在C++编码...

    Python编码规范(Google)

    ### Python编码规范详解(基于Google风格指南) #### 一、概览 Python作为一种广泛使用的高级编程语言,其编码规范对于确保代码的可读性和一致性至关重要。Google作为业界领先的公司之一,发布了一份详细的Python...

    C# 编码规范 C# 编码规范

    C#编码规范是编程实践中的一项重要准则,旨在确保团队成员之间的一致性和代码的可读性。遵循这些规范可以提高代码质量,降低维护成本,同时也能使新加入团队的开发者更容易理解和适应现有的代码库。 1. **目的** ...

    阿里巴巴Java编码规范.pdf

    编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范编码规范

    C语言编码规范.pdf

    C语言编码规范 C语言编码规范是编写高质量C语言代码的重要指南。遵守这些规则可以确保代码的可读性、可维护性和可靠性。本文将详细介绍C语言编码规范的各个方面,包括文件组织、命名约定、编程风格、注释、错误处理...

    阿里巴巴java编码规范

    阿里巴巴java编码规范 ,Java 并发编程培训(阿里巴巴) 《阿里巴巴Java开发手册》,首次公开阿里官方Java代码规范标准。这套Java统一规范标准将有助于提高行业编码规范化水平,帮助行业人员提高开发质量和效率、大大...

    Vue前端编码规范.pdf

    ### Vue前端编码规范详解 #### 一、概述 在现代前端开发中,特别是使用Vue框架进行项目构建时,遵循一套合理的编码规范对于提高代码质量、维护性和团队协作效率至关重要。本文将详细介绍Vue前端项目的编码规范,...

    pdf_编码规范

    编码规范

    PEP8Python 编码规范

    在Python社区中,PEP8是指导Python代码格式的官方编码规范,它对如何组织代码提供了许多建议,以确保代码的可读性和一致性。PEP8主要是针对Python代码的风格指南,其目的不是强制要求,而是为了提高代码的可读性和可...

    JavaScript程序编码规范.pdf

    ### JavaScript程序编码规范 #### 一、概述 《JavaScript程序编码规范》是一份旨在提高JavaScript代码质量和可维护性的指南。该规范由Douglas Crockford编写,并由cloudwater翻译成中文版。Crockford是一位著名的...

    华为Java语言编码规范.doc

    华为Java语言编码规范.doc 本文档介绍了华为Java语言编程规范的相关知识点,涵盖编程规范、命名规范、注释规范、编码规范、JTEST规则等内容。 1. 编程规范 编程规范是指在编程时必须遵守的原则,旨在确保代码的...

    c#编码规范-c#编码规范

    ### C# 编码规范详解 #### 一、引言 C#作为一种广泛使用的面向对象编程语言,在软件开发中占据着举足轻重的地位。为了提高代码的可读性、可维护性和一致性,遵循一定的编码规范显得尤为重要。本文将根据提供的部分...

    华为JAVA编码规范.pdf

    华为JAVA编码规范.pdf 华为JAVA编码规范.pdf是华为公司编写的JAVA编程语言编码规范,旨在提供一个统一的编程风格和代码组织方式,以提高代码的可读性、维护性和可重用性。该规范涵盖了编程语言的基本结构、命名规则...

Global site tag (gtag.js) - Google Analytics