软件开发命名规则

简介:
 1.1 目的
  为了保证企业编写出的程序都符合相同的规范,保证一致性、统一性而建立的数据库命名规范。
  编码规范对于程序员而言尤为重要,有以下几个原因:
  1. 一个项目的生命周期中,80%的花费在于维护;
  2. 几乎没有任何一个项目,在其整个生命周期中,均由最初的开发人员来维护;
  3. 命名规范可以改善项目的可读性,可以让程序员尽快而彻底地理解新的代码;
  4. 如果你将源码作为产品发布,就需要确任它是否被很好的打包并且清晰无误,比如你已构建的其它任何产品。
  为了执行规范,每个软件开发人员必须一致遵守编码规范。
  1.2 范围
  适合于本项目中编写的命名规则。
  1.3 命名原则
  1. 使名称足够长以便有一定的意义,并且足够短以避免冗长;
  2. 唯一名称在编程上仅用于将各项区分开;
  3. 表现力强的名称是为了帮助人们阅读。
  因此,提供人们可以理解的名称是有意义的。不过,请确保选择的名称符合适用语言的规则和标准。
  1.4 SQL命名规范
  ·1.4.1 表(Table)命名规范
  1. 使用表关键字符+完整的功能英文名称;
  2. 不建议使用“_”来连接两个自然名称。
  3. 在多个功能英文名称组合时首写字母应为大写;
  例:
  建议:
  UserInfo        基础信息模块中的用户信息
  Shopping     购物信息表单
  不建议:
  tbUserInfo或TB_Userinfo或TBUserInfo
  ·1.4.2 字段(Column)命名规范
  1. 使用 Pascal 大小写来命名字段;
  2. 对于公认的缩写使用全大写来命名;
  3. 不建议使用“_”来连接两个自然名称。
  例:
  建议:
  UserID          用户ID
  UserName        用户名称
  不建议:
  UserId或Userid
  User_Name
  ·1.4.3 存储过程(Procedure)命名规范
  1. 使用表关键字符sp+完整的功能英文名称+By+操作关键字;
  2. 关键字符sp与功能名称通过“_”来连接;
  3. 对于存储过程的参数,建议与表中字段名一致。
  4. 查询关键字为sel,插入关键字为ins,修改关键字为up,删除关键字为del;
  例:
  sp_selUserInfoByID   通过ID查询单条用户信息
  sp_upUserInfoByName     通过用户姓名修改用户详细信息
  sp_insUserInfo      插入单个用户信息
  ·1.4.4 触发器(Trigger)命名规范
  1. 使用表关键字符tr+完整的功能英文名称+By+操作关键字;
  2. 同存存储过程要求
  ·1.4.5 视图(View)命名规范
  1. 使用表关键字符vw+完整的功能英文名称+By+操作关键字;
  2. 同表要求
  ·1.4.6 函数(Function)命名规范
  1. 使用表关键字符ft+完整的功能英文名称;
  2. 同表要求。
  1.5文件规范1.5.1文件名命名
  1.    名字应该能够标识事物的特性;
  2.    名字尽量不使用缩写,除非它是众所周知的;
  3.    名字可以有两个或三个单词组成,但通常不应多于三个。在名字中,所有单词第一个字母大写,缩写都要大写。不建议使用拼音首字母来组成文件名;
  4.    使用名词或名词短语+动词命名文件;例如:UserList.aspx,UserUpdate.aspx
  5.    少用缩写;
  6.    不要使用下划线字符 (_)。例如:User_Query.aspx
  1.5.2文件格式
  文件应该按照以下格式顺序来实现:
  1.         开头注释
  2.         文件名
  3.         创建人
  4.         日期
  5.         描述
  6.         版本
  例子:
  //******************************************************************//
  //
  //** 文件名:   RandomCreator.cs
  //
  //** 创建人:   张三
  //
  //** 日 期:   2007/11/29
  //
  //** 描 述:   主要完成随机数字的生成
  //**
  //
  //** 版 本:   砂子塘社区网 V2.0版
  //
  //******************************************************************//
  using System;
  using System.Collections.Generic;
  using System.Text;
  namespace COMM
  {
  class RandomCreator
  {
  }
  }
  1.5 C#命名规范1.5.1注释(Comment)规范
  注释规范包括:模块(类)注释规范、类的属性、方法注释规范、代码间注释。
  1.5.2类(Class)命名规范
  1.    使用 Pascal 大小写;
  2.    用名词或名词短语命名类;
  3.    使用全称避免缩写,除非缩写已是一种公认的约定,如URL、HTML;
  4.    不要使用类型前缀;
  5.    不要使用下划线字符 (_);
  6.    派生类名称的第二个部分应当是基类的名称;
  例如:
  ApplicationException 对于从名为 Exception 的类派生的类是适当的名称,原因ApplicationException 是一种Exception。
  7.    请在应用该规则时进行合理的判断。
  例如:
  Button 对于从 Control 派生的类是适当的名称。尽管按钮是一种控件,但是将 Control 作为类名称的一部分将使名称不必要地加长。
  1.5.3接口(Interface)命名规范
  接口的命名规范同类命名,只是通常在名称前加前缀+“I”。
  例子:
  public interface IManager
  1.5.4参数(Param)命名规范
  1.    使用描述性参数名称。参数名称应当具有足够的描述性,以便参数的名称及其类型可用于在大多数情况下确定它的含义;
  2.    对参数名称使用 Camel 大小写;
  例子:
  public ManagerInfo[] GetResultManager(ArrayList alParam,ArrayList alValue)
  {
  return dc.DriveManager().GetResultManager(alParam,alValue);
  }
  1.5.5方法(Method)命名规范
  1.  使用描述性名称。名称应当具有足够的描述性,以便名称可用于在大多数情况下确定它的含义;
  2.  使用动词或动词短语命名方法;
  3.  使用 Pascal 大小写。
  例子:
  public void AddUser(User userInfo)
  1.5.6属性(Property)命名规范
  1.         使用名词或名词短语命名属性;
  2.         使用 Pascal 大小写。
  例子:
  public Color BorderColor
  {
  get {}
  set {}
  }

  来自:龙运在线(www.longyun123.com)



本文转自左正博客园博客,原文链接:http://www.cnblogs.com/soundcode/archive/2011/04/06/2007132.html,如需转载请自行联系原作者

目录
相关文章
|
存储 Go
终于有人把Go语言结构体实例化讲透了!
终于有人把Go语言结构体实例化讲透了!
348 0
|
SQL 关系型数据库 MySQL
mysql 组复制
mysql 组复制
|
2月前
|
人工智能 运维 安全
如何自己开发一套ERP系统?
本文探讨了企业自建ERP系统的可行性,分析了轻量、中型和重型ERP的区别,并指出自研ERP需明确业务需求、流程逻辑及投入成本。文章建议企业在决定自研前,应先梳理清楚管理逻辑,而非盲目追求技术方案。
|
2月前
|
虚拟化 iOS开发 MacOS
VMware ESXi 9.0.0.0100 macOS Unlocker & OEM BIOS 2.7 集成网卡驱动和 NVMe 驱动 (集成驱动版)
VMware ESXi 9.0.0.0100 macOS Unlocker & OEM BIOS 2.7 集成网卡驱动和 NVMe 驱动 (集成驱动版)
411 1
|
4月前
|
人工智能 自然语言处理 算法
DistilQwen-ThoughtX:变长思维链推理模型,能力超越DeepSeek蒸馏模型
阿里云PAI团队开发的 OmniThought 数据集,其中包含200万思维链,并标注了推理冗余度(RV)和认知难度(CD)分数。基于此数据集,我们还推出了 DistilQwen-ThoughtX 系列模型,可以通过RV和CD分数对思维链进行筛选,训练得到的模型获得根据问题和本身的认知能力,生成变长思维链的能力。同时在 EasyDistill 框架中开源了 OmniThought 数据集和 DistilQwen-ThoughtX 模型的全部权重。这些模型在性能上超过了 DeepSeek-R1-Distill 系列。
|
4月前
|
存储 SQL BI
大型医院HIS,EMR,LIS,PACS源码
本产品支持信创,适用于三级及大中型医院,涵盖全面业务系统,助力医共体与单体医院发展。系统包括门诊和住院医生工作站、护士工作站、电子病历(EMR)、实验室信息系统(LIS)、放射科室管理(PACS/RIS)等模块,实现医院信息化建设目标。功能覆盖人性化服务、集成化管理、智能化操作、无纸化与无胶片化流程,优化医疗资源,提升医疗服务效率与质量,打造现代化数字医院。支持多系统接口与数据交换,满足医保需求,提供统计分析与权限管理,确保信息准确、安全、高效流转。
|
编译器 C++ 开发者
C++一分钟之-嵌入式编程与裸机开发
【7月更文挑战第12天】在嵌入式裸机开发中,C++发挥着关键作用,尤其适合高性能和硬件控制。内存管理是核心挑战,推荐静态分配或手动堆栈管理以防止泄漏和碎片。中断处理应快速,仅设置标志,复杂逻辑移至主循环。编译器优化平衡代码大小和效率,但过度优化会牺牲可读性。通过谨慎实践,开发者能驾驭C++的优势。
227 1
|
监控 NoSQL Java
【线上问题】服务CPU彪高排查
后端程序员出去面试经常会有面试官喜欢问你有没有排查过线上问题,遇到后怎么排查的。
660 0
【线上问题】服务CPU彪高排查
|
自然语言处理 前端开发 Java
|
存储 编解码 算法
深入浅出:FFmpeg 音频解码与处理AVFrame全解析(一)
深入浅出:FFmpeg 音频解码与处理AVFrame全解析
2022 0