zoukankan      html  css  js  c++  java
  • java 程序命名规则

    程序命名规则
    提示:模块设计人员确定本软件的模块命名规则(例如类、函数、变量等),确保模块设计文档的风格与代码的风格保持一致。可以从机构的编程规范中摘取或引用(如果存在的话)。
    命名规则
    1、包命名
        Java程序以包名为文件目录名,通过包的分层结构实现对程序进行归类和模块化管理。包名要求全部用英文字母小写,通过.进行分割,建议在包名中体现公司名称或产品(项目)英文名简写,通常为“公司名+产品(项目)名+模块名+子模块名”,如:ausware.apply.manage(ausware为公司英文名,apply为产品名,manage为模块名),商业软件通常会以com.开头,如:com.sun.java.swing(com为通用前缀,sun为公司名称,java为产品名,swing为模块名),是否加com不做强制要求。

    2、类命名
        Java中类名统一要求用英文单词或组合,可以用简写,单词首字母要大写,单词之间通过大写字母隔开。类名应该准确表达本类的作用,通常为“模块名+功能名”结构,如:EngineManage,DeviceAction。

    3、类成员变量命名
        操作类成员变量要求以m_打头;如果变量为全局变量,以g_打头;数据结构类成员不建议用m_开头。
        变量需要明确表达含义,采用英文单词或组合,可以用简写,用大写字母隔开,除了范围字母,首字母小写。通常为“范围+类型+变量描述”,其中常见的类型主要有:map(表示映射集HashMap、Map)、vec(表示向量集Vector)、list(表示List)、b(表示boolean)、i(表示int)、str(表示String,由于String类型在java中非常常用,通常可以不用str开头,以免累赘)、l(表示long)、c(表示char)、f(表示float)、d(表示double)。举例:
    操作类:
    public class EngineManage
    {
      private static EngineManage  g_instance=null;  //全局
      private HashMap<Long,EngineContext> m_mapEngineContexts=new HashMap(); //成员
      private boolean m_bInitFlag = false;  //成员,是否初始化标志
      public int m_iPort = 0;
      public long m_lSize = 0;
    }
    数据结构类:
    public class DeviceModel
    {
      public String devNameAlias = null; //设备别名
      public String devName = null; //设备名称    
      public float fSize = 0;
      public double dWideSize = 0;
    }

    4、类成员函数命名
        类成员函数名需要表达出函数功能,采用英文单词或组合,可以用简写,首字母小写,中间单词的首字母要大写,其余小写。第一个单词为动作,后续单词为作用对象,通常为:“动作+对象名”,举例:createEngineContext,addDevice。

    5、函数参数名
        采用英文单词或组合,可以用简写,首字母小写,中间单词采用大写字母隔开。不要用m_和g_开头。
        对于接口函数的参数名,建议尽量明确表达出参数是输入、输出、输入及输出,以及类型。输入通常用in,输出通常用o,输入输出通常用io,举例:   
       public long createEngineContext(String engineContextClassName,RefString oErrMsg);
      接口函数:   
       public int retriveDatas (String inStrID ,Vector oVecDatas, RefString oErrMsg);
       // inStrID 中的in为输入,Str为类型,ID为变量描述;
       // oVecDatas 中的o为输出,Vec为类型,Datas为变量描述;
       //oErrMsg中的o为输出,ErrMsg为变量描述。

    6、函数内部变量名
        原则上除了计数变量i,n,k,j等,都应该采用英文单词或组合表达明确含义,可以用简写,不要用m_和g_等开头。普通变量通常为“类型+变量描述”;对复合自定义对象的命名可以直接用对象名,把首字母改为小写;需要返回的变量建议加上ret前缀;临时变量建议加上tmp前缀。举例:
      for(int i; i<10; i++); //计数变量
      boolean bSearchFlag;  //以类型为前缀
      int iSize;  
      long lWidth;
      String strDevName; //带String类型前缀str  
      String devName;   //不带String类型前缀,因String非常常用可以省略
      EngineContext engineContext = null; //复合自定义对象,用类型名,把首字母改为小写
      EngineContext tmpEngineContext = null; //带临时变量tmp前缀
      EngineContext retEngineContext = null;  //带返回变量前缀ret    

    7、常量名
        常量名采用大写单词或以下划线_组合多个单词,明确表达含义,如:
        public final static String YES = "yes";
        public final static int DEBUG_ERROR = 2;  //记录出错信息
        public final static String SYSLOG_PROCESS_NAME = "SYSLOG";

  • 相关阅读:
    Spring Boot之@ImportResource、配置类、占位符表达式
    Spring Boot之测试类报错问题
    Spring Boot之@EnableAutoConfiguration源码解读
    Spring Boot之第一个程序及执行原理。
    eclipse中git使用中的冲突解决
    python画国旗
    第十六周进度
    个人课程总结
    人月神话之阅读笔记03
    第十五周进度
  • 原文地址:https://www.cnblogs.com/anyun/p/8288367.html
Copyright © 2011-2022 走看看