zoukankan      html  css  js  c++  java
  • java命名规范:注重细节

    #java语言规范
    ##语言的本质
    任何一门语言都是用来交流的,都有自己的一套书写规范,Java 也不例外。不遵循规范,则会产生交流问题。
    
    ##注重这些细节有几个好处
    * 好的命名规范可以使得写出来的程序更容易被别人理解,更好维护。当然也易于自己理解,以便日后扩展。
    * 同时,也使程序更规范和专业。 
    * 在这个人性化横行的今天,我们的Java命名规范也应该注重体验。共性和个性应该并存。共性则是专业、规范;个性则是每个人优秀思想的渗透。
    * 了解命名规范,可以更好的学习和记忆 Java 类库中的类和函数等。
    在命名规范里有很多都涉及到英文的,可以促进英文学习。
       比如: numberMax, MaxNumber和maxNumber都是有区别的。
    	1. maxNumber可能是属性名
    	2. MaxNumber一般是类名
    	3. numberMax更倾向于方法。
    
    	这里也有一个英文的搭配问题。
    比如:FileRead, FileReader,  这个显然后者作为类名好些。
    readFile,fileRead,   这个显然前者作为方法更合适。
     
    ##一些原则
    下面的几个原则是编写 Java 程序必须遵守的
    如果没有非常好的理由,永远不要违背他。
    
    1. 包
    由小写字母和少量数字组成
    Java 自己的包以 java. 和 javax 开头,比如:java.awt
    别的组织开发的包以 组织的 Internet 域名部分开头,比如:com.sun, com.borland
    一些例子:
    com.aliasi.hmm;  com.aliasi.classify;  com.aliasi.cluster;
    com:组织;  aliasi:具体的组织名或者个人;  classify,cluter:包名(主题)
    org.apache.lucene;  org.apache.lucene.analysis.standard;
    org.apache.nutch.ndfs; org.apache.nutch.fs; org.apache.nutch.db; org.apache.nutch.parse;
    
    
    2. 类,接口
    由一个或几个单词组成,每个单词的第一个字母大写,比如:StringBuffer
    类:一般用名词和名词词组命名;  IndexOptimizer.java;     WebDbReader.java
    接口:与类相同,可以使用形容词词缀,比如 Runnable, Comparable
    
    3. 方法
    除第一个字母小写外,和类,接口的命名规则一样。比如:getPersonInfo()
    对于取属性值和设置属性值的方法:
    不管是否是 Bean,都要遵循 JavaBean 命名规范:getXXX(), setXXX()
    转换对象类型返回不同类型的方法:
    命名成 toType,比如:toString(), toArray()
    返回视图的方法:
    命名成 asType() 形式,asList()
    返回与调用此方法的对象(Wrapper Class)同值的原始类型的方法:
    命名成 typeValue() 形式,比如 intValue(), floatValue()
    parseCharacterEncoding(String);
    
    4. 域(属性)
    普通域:
    除第一个字母小写外,和类,接口的命名规则一样。比如:personInfo
    常数域:
    由一个或多个被下划线分开的单词组成,比如:VALUES, NEGATIVE_INTINITY
    常数域是唯一允许使用下划线的情况。
    
    5. 局部变量
    命名与域相同,可以使用简写,比如:i, j, temp, maxNumber
     
    ##哲学?
    定义一个类和一个方法并不是太复杂,当有非常多的类、方法、变量的时候才复杂,因为这些类既有区别,又有千丝万缕的继承和调用关系,这时候一致性设计,并易于理解和记忆,并方便扩展和调用则需要慢慢的体会了。
    
    既然能用语言实现复杂的功能和体现伟大的思想,那么这门语言本身肯定也蕴育着很多哲学。
    
    我的理解:它来源于生活,高于生活,又应用与生活。
    
  • 相关阅读:
    Array.sort源码
    单例模式
    nio理解
    xoa中范型的应用
    mybatis 一对多映射 xml
    zookeeper
    java final
    spring controller里面返回JSONObject与返回String的不同
    synchronized的可重入性
    nio select poll epoll
  • 原文地址:https://www.cnblogs.com/notech/p/4300757.html
Copyright © 2011-2022 走看看