编程开发中的命名规范

  • 混乱的workspace
    • 修改项目名称
    • 学习资料

混乱的workspace

工作一年当中接触到的都是别人写好的项目,很多时候就直接用了以前的项目名字,随着手里的项目越来越多,各种版本的项目用着相同的名字,根本记不住哪个项目是做什么的,一片混乱。这时候同事劝我整理一下项目吧,我才意识到这个问题。

修改项目名称

我做的项目中很多是一套项目改成各种版本给不同的公司用户使用,所以我试着用“客户公司名_项目名称“的方式来修改我的项目名称,这样一个系列的就会排列在一起方便查找,这是我目前能想的方法。下面是我修改完名字遇到的问题和解决方法:

  1. 问题: 已经在使用的项目,修改名称后导致访问路径改变,不方便客户使用(因为能要求客户换成新的访问地址,还存在其他程序访问该程序时,路径改变还要修改程序重新上线)。
    解决: 1)本地启动的项目:修改项目配置,无论项目名称是什么,修改Context root 即可修改更改项目访问的url路径。
  2. 解决: 1)打成war包上线的项目:修改war的名字即可,此时和Context root的名字已经无关了。

学习资料

虽然大学中学习过,但是很多都已经忘记了,下面是我在网上查找的命名规范,供自己学习使用:

  1. 数据库命名设计规范:
    1).数据库涉及字符规范

采用26个英文字母(区分大小写)和0-9这十个自然数,加上下划线’_'组成,共63个字符.不能出现其他字符(注释除外)。

注意事项:

1)以上命名都不得超过30个字符的系统限制.变量名的长度限制为29(不包括标识字符@)。

2)数据对象、变量的命名都采用英文字符,禁止使用中文命名.绝对不要在对象名的字符之间留空格.。

3)小心保留词,要保证你的字段名没有和保留词、数据库系统或者常用访问方法冲突 。

4)保持字段名和类型的一致性,在命名字段并为其指定数据类型的时候一定要保证一致性.假如数据类型在一个表里是整数,那在另一个表里可就别变成字符型了。

2.数据库命名规范

数据库直接使用应用或者系统命名.

比如:paper(论文系统)

备份数据库名使用正式库名加上备份时间组成,

paper_20070403

3.数据库表命名规范

数据表名使用小写英文以及下划线组成,尽量说明是那个应用或者系统在使用的.(便于区分不同一个项目使用同一个数据库中的表)

相关应用的数据表使用同一前缀,如论坛的表使用cdb_前缀,博客的数据表使用supe_前缀,前缀名称一般不超过5字

paper_user paper_group paper_userspace

备份数据表名使用正式表名加上备份时间组成

paper_user_20070403paper_group_20070403 paper_userspace_20070403

4.字段命名规范

字段名称一般采用名词或动宾短语,且字段名为小写,数据库字段名全部采用小写英文单词,单词之间用“_”隔开,字段名根据实际意义命名,

注意事项:给所有字段名加注释

如:sex(性别)  is_good(是否优秀)

外键情况下采用 "表名_id“的方式,

如:user_id(关联用户表的id)
  1. Java项目命名规范:
    一、命名规范
    1、 项目名全部小写

2、 包名全部小写

3、 类名首字母大写,如果类名由多个单词组成,每个单词的首字母都要大写。

public class MyFirstClass{}

4、 变量名、方法名首字母小写,如果名称由多个单词组成,每个单词的首字母都要大写。

int index=0;public void toString(){}

5、 常量名全部大写

public static final String GAME_COLOR=”RED”;

6、所有命名规则必须遵循以下规则:

1)、名称只能由字母、数字、下划线、$符号组成

2)、不能以数字开头

3)、名称不能使用JAVA中的关键字。

4)、坚决不允许出现中文及拼音命名。

原文链接:https://blog.csdn.net/qq_30021219/article/details/79423124

二、注释规范

1、 类注释

在每个类前面必须加上类注释,注释模板如下:

/*** Copyright (C), 2006-2010, ChengDu Lovo info. Co., Ltd.* FileName: Test.java* 类的详细说明** @author 类创建者姓名    * @Date    创建日期* @version 1.00*/

2、 属性注释

在每个属性前面必须加上属性注释,注释模板如下:

/** 提示信息 */private String strMsg = null;

3、 方法注释

在每个方法前面必须加上方法注释,注释模板如下:

/*** 类方法的详细使用说明** @param 参数1 参数1的使用说明* @return 返回结果的说明* @throws 异常类型.错误代码 注明从此类方法中抛出异常的说明*/

4、 构造方法注释

在每个构造方法前面必须加上注释,注释模板如下:

/*** 构造方法的详细使用说明** @param 参数1 参数1的使用说明* @throws 异常类型.错误代码 注明从此类方法中抛出异常的说明*/

5、 方法内部注释

在方法内部使用单行或者多行注释,该注释根据实际情况添加。

如://背景颜色

Color bgColor = Color.RED

原文链接:https://www.php.cn/java-article-406664.html

  1. Java包起名原则:
    indi :
    个体项目,指个人发起,但非自己独自完成的项目,可公开或私有项目,copyright主要属于发起者。
    包名为“indi.发起者名.项目名.模块名.……”。

pers :
个人项目,指个人发起,独自完成,可分享的项目,copyright主要属于个人。
包名为“pers.个人名.项目名.模块名.……”。

priv :
私有项目,指个人发起,独自完成,非公开的私人使用的项目,copyright属于个人。
包名为“priv.个人名.项目名.模块名.……”。

onem :
与“indi”相同,推荐使用“indi”。
另外,我为了区分团队项目和前面所说项目的区分,还有了一下扩展:

team :
团队项目,指由团队发起,并由该团队开发的项目,copyright属于该团队所有。
包名为“team.团队名.项目名.模块名.……”。

com :
公司项目,copyright由项目发起的公司所有。
包名为“com.公司名.项目名.模块名.……”。

java包各模块命名规则
action为控制层:有时也会命名为“controller”即MVC中充当C角色,用来分配哪个业务来处理用户请求。

biz业务层:存放好多处理业务的代码,现实中面向接口编程,一般这里定义都是业务接口,通常会有一个biz.impl这个包用来写实现类. 当然针对架构意义实现类不用说。

dao持久层:数据库操作都写在这里。

ui 用户交互层:通常为页面,例如.jsp,aspx等页面。

util功能包:针对本项目工具类。

common通用工具包:一般一个公司会有固定的jar,好几个项目通用的,例如远程调用等。

domian存放实体:通常一些对应数据表的实体类放在此,如果用Mybatis框架,一般mapping创建在它下面,当然只针对架构mapping也是无意义。

良好的命名规则能够让他人更容易熟悉项目。可以帮助自己快速回顾代码。好处多多。

原文链接:http://blog.csdn.net/Dave_CT/article/details/73394726

编程开发中的起名规范相关推荐

  1. day01--java基础编程:计算机基础知识 ,java语言概述,java开发环境搭建,eclipse概述,创建简单java项目,JDK JRE JVM的关系,java开发中的命名规范,编程风格

    1 Day01–Java开发环境+HelloWorld 1.1 计算机基础知识 资料下载网址:刘沛霞 18600949004 code.tarena.com.cn tarenacode code_20 ...

  2. 编程开发中最浪费时间和资源的7个错误

     编程开发中最浪费时间和资源的7个错误 我在当地几家公司担任过项目经理,项目主要关于一些用PHP制作的中小型网页.在那段历程中,我见识了很多公司常常会犯这样或那样的错误,既浪费时间又浪费资源.下面 ...

  3. 很久没更新博客了,再发协同开发中SVN使用规范

    协同开发中SVN使用规范试用 目标,要求 本次svn提交规范主要针对当前项目中出现的svn管理难,开发流程控制难掌控,项目进度记录不准确等问题而提出.要求每个角色都要进行规范化svn作业. 目录结构与 ...

  4. java vector编程_Java编程开发中向量(Vector)及其应用

    要学习Java编程开发中向量及其应用方面的知识就要先了解什么是向量,向量是如何声明及初始化的,下面就让IT培训网专家来给大家详细介绍下如何认识向量及其使用方法吧! 关于向量的介绍: 向量 vector ...

  5. c语言 编程 函数声明,C语言编程开发中的函数声明与定义

    函数功能的使用在许多编程开发语言中都是有不同的使用方法的,而今天我们就一起来了解一下,在C语言编程开发中的函数功能使用与定义. 对函数的"定义"和"声明"不是一 ...

  6. java面向字符的输入流_Java编程开发中面向字节的输入输出流

    关于面向字符的输入流和输出流方面教程已经讲解完了,下面要介绍的就是Java编程开发中面向字节的输入输出流,希望本节内容可以帮助大家更好的学习Java. 教程回顾点击查看: 字节流以字节为传输单位,用来 ...

  7. 项目开发中的编码规范

    1.规范存在的意义: 好的编码规范可以尽可能的减少一个软件的维护成本 , 并且几乎没有任何一个软件,在其整个生命周期中,均由最初的开发人员来维护: 好的编码规范可以改善软件的可读性,可以让开发人员尽快 ...

  8. IOS编程开发中的问题小结(一)

    做了一段时间的IOS开发,在开发过程中遇到了一些问题,不一定具有代表性,只是作为个人开发学习过程中的一个小结吧. 1.关于苹果系统对于应用系统启动时间的限制 我们知道,iOS APP的最长启动时间不得 ...

  9. 谈一谈Java编程开发中的并发控制

    并发指在宏观上的同一时间内同时执行多个任务.为了满足这一需求,现代的操作系统都抽象出 线程 的概念,供上层应用使用. 这篇博文不打算详细展开分析,而是对java并发中的概念和工具做一个梳理. 沿着并发 ...

最新文章

  1. 002_SpringIOC
  2. 【MFC】创建第一个应用程序
  3. VMWare安装DOS系统实现文件共享
  4. 轻松把玩HttpClient之封装HttpClient工具类(五),携带Cookie的请求
  5. 很多想法、很多感慨。
  6. python导入pandas具体步骤方法_python导入pandas具体步骤方法
  7. 蚂蚁金服OceanBase挑战TPCC | TPC-C基准测试之存储优化
  8. Go: 清空 Slice 的两种方法:[:0]和nil
  9. linux vnc 安装目录,Linux环境VNC服务安装、配置与使用(图)
  10. matlab报错随笔
  11. 360安全桌面壁纸被设为壁纸后的路径xp
  12. windows安装tomcat8
  13. 电力系统分析计算机辅助试题,电力系统计算机辅助分析.docx
  14. LaTeX矩阵广义逆、伪逆
  15. (已解决)windows2020卸载office2013(安装程序包语言不受系统支持)
  16. 通信upf是什么意思_upf50+是什么意思 upf50+的防护级别(防紫外线)
  17. CDA Level1知识点总结之数据分析概述与职业操守
  18. BIM技术在装饰装修工程中的应用
  19. Windows10 MySQL8.0版本的压缩包安装方式
  20. 百度地图api之固定标记点(标记点自己设置样式)

热门文章

  1. layui文件上传(头像上传)
  2. 1-3 js基础还是看caicia吧(老师说小游戏)
  3. 感谢!《夜空守望者》
  4. linux命令part,技术|十个鲜为人知的 Linux 命令-Part 3
  5. 什么是业务对象?业务逻辑是什么?
  6. 世界著名电影特效公司
  7. 前端常用工具库方法整理
  8. 使用esp8266 wifi芯片和DFRduino开发板(Arduino也可以),向自己的服务器发送请求(尽可能详细的说明)
  9. java 容器排序_Java攻略第四章 容器类、排序
  10. c语言编程杨辉三角形流程图,使用c语言输出杨辉三角形的简单方法