.net软件日常开发规范-基本标准
一、 基本标准
- 代码和SQL脚本均不要出现无意义的空格和空行。
- 所有SQL脚本确保可以重复运行不出错,添加数据的脚本重复运行不会重复添加数据。
- 能用一行代码或脚本解决的不要写出两行,能用一个方法解决的不要写出两个方法,提高代码的利用率,减少冗余代码。
- 任何地方变量命名不使用无意义的a、b等名称,如人员编号uId,姓名name。
- SQL脚本中的关键字统一使用大写,如INT,VARCHAR,DECLARE,SELECT等。
- 接到需求后复述一遍,然后写出解决方案步骤。
- 如果新需求为新模块,需要写出此模块的数据库设计表、视图、存储过程,画出流程图,写出页面需求分析。
- 页面排版,如果页面上控件较少,使用两列排版,列宽:20%、80%。如果较多使用四列排版,列宽:20%、30%、20%、30%。特殊情况再略调整列宽。
- 控件命名规则,由控件缩写加上列名简单英文翻译,例:姓名文本框txtName
控件缩写规则:TextBox-txt;Label-lbl;RadioButton-rdo;DropDownList-drp;CheckBok-chk; LinkButton-btn; HiddenField-hf; FileUpload-fld。
- 文件命名规则,简单英文翻译加上页面标识,例:工作计划列表WorkPlanList、工作计划新增WorkPlanAdd、工作计划查询WorkPlanSearch、工作计划浏览WorkPlanView。
- SQL脚本命名规则,表格使用简拼字母大写加上表格名称,例“GZJH_工作计划”,视图以V开头,例“V_工作计划”,存储过程使用表名加功能,例“GZJH_工作计划新增”、“GZJH_工作计划审核”等。
- JS命名规则,同使用此JS的文件名,如工作计划的JS脚本为“WorkPlan.js”。
- 新增、删除、修改、审核、提交操作都需要记录操作日志,所有操作如果出错要记录错误日志。操作日志调用方法BLL.WriteOperatLog(模块, 流水号, 名称, 操作) ,模块一般同存储过程名称,注意操作日志保存在一个表中,需要使用流水号来区分不可以使用编号,操作包含“添加”、“修改”、“审核”、“删除”、“提交”。
- 界面上的样式与js脚本对齐格式要注意,用不到的样式与js不要调用。
.net软件日常开发规范-基本标准的更多相关文章
- 百万年薪python之路 -- 软件的开发规范
一. 软件的开发规范 什么是开发规范?为什么要有开发规范呢? 你现在包括之前写的一些程序,所谓的'项目',都是在一个py文件下完成的,代码量撑死也就几百行,你认为没问题,挺好.但是真正的后端开发的项目 ...
- Python3基础(4)匿名函数、装饰器、生成器、迭代器、内置函数、json&pickle序列化、软件目录开发规范、不同目录间模块调用
---------------个人学习笔记--------------- ----------------本文作者吴疆-------------- ------点击此处链接至博客园原文------ 1 ...
- python基础-软件目录开发规范
为什么要设计好目录结构? "设计项目目录结构",就和"代码编码风格"一样,属于个人风格问题.对于这种风格上的规范,一直都存在两种态度: 一类同学认为,这种个人风 ...
- 【python】-- 内置函数、软件目录开发规范(代码编码风格)
内置函数 一.内置函数表格 二.内置函数演示 1.abs(x) 功能:取数的绝对值 >>> abs(-1) #取-1的绝对值 1 ########################## ...
- Python学习第二阶段day1 内置函数,序列化,软件目录开发规范
内置函数 1.abs() 求绝对值 2.all() 所有元素为真才返回真 all( [1,1,2,3,-1] ) 值为True 3.any() 所有元素为假才返回假 any([0,0,0 ...
- 1.19 Python基础知识 - 软件目录开发规范及不同模块之间的调用
一个软件项目的开发,除了需要很厉害的开发能力,同时在软件开发项目时,也需要对项目结构有良好的组织能力,将功能进行拆分,不同的功能放在不同的目录或文件中,方便日后的维护,升级等操作.比如核心代码的目录, ...
- import模块/包--软件开发规范
一. 模块 模块:就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. import加载的模块分为四个通用类别: 1 使用python编写的代码(.py文件) 2 已被编译 ...
- Day04 - Python 迭代器、装饰器、软件开发规范
1. 列表生成式 实现对列表中每个数值都加一 第一种,使用for循环,取列表中的值,值加一后,添加到一空列表中,并将新列表赋值给原列表 >>> a = [0, 1, 2, 3, 4, ...
- Day4 - Python基础4 迭代器、装饰器、软件开发规范
Python之路,Day4 - Python基础4 (new版) 本节内容 迭代器&生成器 装饰器 Json & pickle 数据序列化 软件目录结构规范 作业:ATM项目开发 ...
随机推荐
- Centos7:yum安装MySQL5.7后如何设置root密码
Centos下安装软件的方式很简单,只需要通过yum install xxx命令即可.第一步当然检查是否有mysql的yum源,命令:yum list|grep mysql-community[主要还 ...
- 多线程总结-同步之ReentrantLock
目录 1 ReentrantLock与synchronized对比 2.示例用法 2.1 基本用法 2.2 尝试锁 2.3 可打断 2.4 公平锁 1 ReentrantLock与synchroniz ...
- CDQZ集训DAY8 日记
又一次翻车…… 先提一句昨晚的事.昨天晚上身后一帮成都七中的人用十分戏谑的语气交出了达哥的名字,看着NOI2017的获奖名单,如果他们真的是在嘲笑的话,真的挺想上去干他们一顿的…… 上午考试第一题一脸 ...
- CDQZ集训DAY7 日记
并没有考试然而心情比考试还糟糕…… 上午讲的基本就听不懂,讲课人迷之停顿.根本让人跟不上趟,声音好奇怪的说……好不容易讲到反演,Hzoi集体上线,等待装逼时刻的到来.然而,讲课人再次迷之停顿,讲一个p ...
- 彻底搞清楚c#中的委托和事件
一.什么是委托呢? 听着名字挺抽象,确实不好理解.面试官最喜欢考察这个,而且更喜欢问:“委托和事件有何异同?”.如果对一些知识点没有想明白,那么很容易被绕进去.研究任何事物,我们不妨从它的定义开始,委 ...
- I/O:DataInput
DataInput: boolean readBoolean() :读取一个输入字节,如果该字节不是零,则返回 true,如果是零,则返回 false. byte readByte() :读取并返回一 ...
- JS+Jquery自定义格式导出HTML为Word(下列插件同样可以用于Excel导出)
这里的word导出主要采用了jquery.wordexport.js.FileSaver.js,做功能之前我也是找了很多网上的资料,里面涉及到js导出word的用的都是这个插件,只是在自定义样式这一块 ...
- d3.js实现柱形图,饼图以及折现图
饼图 var width = 500; var height = 500; //处理数据 var dataset = [ 30 , 10 , 43 , 55 , 13 ]; var pie = d3. ...
- 第三章 JavaScript操作Dom对象
常用的方法: 1.访问节点: 通过Document.getElementByXXX()获得一个指定节点-->再通过以下属性节点访问节点:第一部分:节点属性a:parentNode 返回节点的父节 ...
- 前后端分离 之vue-cli 搭建项目mac 系统讲解
前端项目搭建必备技术 webpack nodejs 搭建 vue-cli 的安装 以上技术自行了解安装 一:创建前端项目 采用vue-cli 脚手架 1:终端执行如下命令 vue init webpa ...