深度工作室系统分析与设计的原则/技术 - 深度工作室

来源:百度文库 编辑:神马文学网 时间:2024/04/27 07:58:46
深度工作室系统分析与设计的原则  发布者:[Deepcast.net]  来源:[本站]  浏览:[ 516]  评论:[ 0]  字体:大 中 小      当前是:全文显示

深度工作室系统分析与设计的原则

(深度工作室Web项目的开发规范V1.0)

Accourding to GNU GENERAL PUBLIC LICENSE

1.       目录命名规范

原则:以最少的层次提供最清晰简便的访问结构。

文件夹命名全部采用有意义的小写英文字母、数字、下划线的组合,长度少于20个字符,禁止使用中文拼音。不得包含汉字、空格和特殊字符。

一些常见的文件夹命名如:images(存放公用图形文件),flash(存放Flash文件),style(存放CSS文件),scripts (存放JS文件),inc(存放include文件),link(存放友情链接),media(存放多媒体文件),cgi_bin(存放CGI程序), gb,big5, en(存放各相应语言版本)等。

文件夹命名标准步骤:

(1) 在网站根目录中开设images gb temp 三个子目录,根据需要再开设flash / style / scripts / inc / media / link / 等公共文件目录。images目录中放不同栏目的页面都要用到的公共图片(可先放一个pic_blank.gif,它是1*1 大小的透明的gif 图片),例如公司的标志、banner 条、菜单、按钮等等;temp 子目录放客户提供的各种文字图片等等原始资料;media 子目录中放flash, avi, quick time 等多媒体文件。根目录只允许存放index.htm和main.htm,以及其他必须的系统文件。(服务器的ftp上传目录默认为html)

(2) 在根目录中原则上应该按照首页的栏目结构,给每一个栏目及每个主要菜单功能开设一个目录,根据需要在每一个栏目的目录中开设一个images 和flash/media等的子目录用以放置此栏目专有的图片和多媒体文件,如有下级栏目依此类推

 

(3) temp 开始以时间为名称开设目录,然后在工作中逐渐将客户陆续提供的资料归类整理。在网站项目完成后,应该将temp目录转移到source相应目录中归档。

2.       文件名命名规范

 

(1) 文件命名:统一采用有意义的,方便“按名称排列”操作的小写的英文字母、数字和下划线的组合。原则:以最少的字母达到最容易理解的意义。

 

索引文件统一使用index.htm文件名(小写)

index.htm文件统一作为”桥页”,不制作具体内容,仅仅作为跳转页和meta标签页。主内容页为main.htm

 

按菜单名的英语翻译取单一单词为名称。例如:

关于我们 \aboutus

信息反馈 \feedback

产    品 \product

所有单英文单词文件名都必须为小写,所有组合英文单词文件名第二个起第一个字母大写;

所有文件名字母间连线都为下划线

 

图片命名原则以图片英语字母为名。大小原则写同上。

例如:网站标志的图片为logo.gif

鼠标感应效果图片命名规范为”图片名+_+on/off”。

例如:menu1_on.gif/menu1_off.gif

 

其它文件命名规范

js的命名原则以功能的英语单词为名。

例如:广告条的js文件名为:ad.js

2.所有的CGI文件后缀为cgi

所有CGI程序的配置文件为config.cgi

(2) 图片的命名原则: 图片类型性质_有意义的描述,两部分用下划线隔开,头部分表示此图片的大类性质。

* banner:广告:放置在页面顶部的广告、装饰图案等长方形的图片

* logo:标志:标志性的图片

* button:按钮:在页面上位置不固定并且带有链接的小图片

* menu:菜单:在页面上某一个位置连续出现,性质相同的链接栏目的图片

* pic:装饰:装饰用的照片

* title:标题:不带链接表示标题的图片

 例如banner_sohu.gif 、banner_sina.gif、 menu_aboutus.gif 、menu_job.gif、 title_news.gif、 logo_police.gif、 logo_national.gif 、pic_people.jpg 。

 

(3) 动态脚本文件命名规则:性质_描述,描述可以有多个单词,用”_”隔开。性质一般是该页面得概要,范例:register_form.asp,register_post.asp,topic_lock.asp

3.       静态脚本文件编写规范
 

(1) Html 文件标准:

l       为保持脚本整体风格一致,Html 文件采用如下通用模板:

 

”keywords” content=”深度工作室, 计算机信息技术,网站建设,网站推广”>

”description” content=” 深度工作室, 互联网技术传播第一站”>

其他meta 标 记–>

样式表定义–>

客户端javascript 函数定义及初始化操作–>

 

l       为了与xml 标准兼容,所有的HTML 标签的属性都要用单引号或者双引号括起,即”url”>或者 而不 是

 

l       可以选择加入的META标签

网页显示字符集

简体中文:

繁体中文:

英 语:

设定网页的到期时间。一旦网页过期,必须到服务器上重新调阅。

 

禁止浏览器从本地机的缓存中调阅页面内容。

 

用来防止别人在框架里调用你的页面。

 

自动跳转。

*5指时间停留5秒。

 

网页搜索机器人向导.用来告诉搜索机器人哪些页面需要索引,哪些页面不需要索引。

CONTENT的参数有all,none,index,noindex,follow,nofollow。默认是all。

 

收藏夹图标

 

l       所有的javascript的调用尽量采取外部调用.

 

l       标签:为了保证浏览器的兼容性,必须设置页面背景

 

(2) CSS 文件的格式样例代码 :

l       为保持脚本整体风格一致,CSS文件采用如下通用模板:

p { text-indent: 2em; }

body { font-family: “宋体”; font-size: 9pt; color: #000000; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px}

table { font-family: “宋体”; font-size: 9pt; line-height: 20px; color: #000000}

a:link { font-size: 9pt; color: #FFFFFF; text-decoration: none}

a:visited { font-size: 9pt; color: #99FFFF; text-decoration: none}

a:hover { font-size: 9pt; color: #FF9900; text-decoration: none}

a:active { font-size: 9pt; color: #FF9900; text-decoration: none}

a.1:link { font-size: 9pt; color: #3366cc; text-decoration: none}

a.1:visited { font-size: 9pt; color: #3366cc; text-decoration: none}

a.1:hover { font-size: 9pt; color: #FF9900; text-decoration: none}

a.1:active { font-size: 9pt; color: #FF9922; text-decoration: none}

.blue { font-family: “宋体”; font-size: 10.5pt; line-height: 20px; color: #0099FF; letter-spacing: 5em}

–>

  

l       为方便阅读,这里尤其要注意的是a:link a:visited a:hover a:actived 的排列顺序一定要严格照上面的样例代码。另外我们规定重定义的最先,伪类其次,自定义最后

 

(3) TABLE标准:

l       在写

互相嵌套时,严格按照的规范,对于单独的一个 来说, 对齐, 缩进两个半角空格, 中如果还有嵌套的表格,
也缩进两个半角空格,如果

结束标记应该与

中没有任何嵌套的表格, 处于同一行,不要换行, 即:

 

 

l       属于同一个级别 的

一定是左首对齐的。如果代码顺序较乱,应先在DW中command->apply souce formatting进行代码整理

l       在排布表格之前,请大家一定要好好思考一个最佳的方案,表格的嵌套尽量控制在三层以内,并且应该尽量避免使用 两个标记。

l       为了减少用户的等待时间,一个网页要尽量避免所有的内容都嵌套在整个一张大表格,因为浏览器在解释页面的元素时,是以表格为单位逐一显示。如果必须这样做,请使用
标记分块显示。

l       因为浏览器认为换行相当于一个半角空格,所以禁止源代码中出现如下相当于无意中增加一个半角空格的不规范代码:

而应改成:

或者确实有必要增加一个半角空格:

 

 

l       因为某些浏览器认为空单元格非法而不会予以解释,所以禁止没有任何内容的空的单元格存在。高度大于等于12px 的单元格应该 在 和

之间写一 个   如果高度小于12px, 则应该 在 和

之间插入一个1*1 大小的透明的gif 图片。

l       为保证任何一个width 和height 都是有效的,禁止出现多于一个的控制同一个单元格大小的height 和width。只有一列的表格,width 写在

的标签内,只有一行的表格,height 写在 的标签内,多行多列的表格,width 和height 写在第一行或者第一列的 标签内。标准:改动代码中任何一个width 和height 的数值,都应该在浏览器中看到变化。

 

(4) 排版标准:

l       字号标准:为了保证不同浏览器上字号保持一致,字号规定用点数pt和像素px来定义,pt一般使用中文宋体的9pt和11pt,px一般使用中文宋体 12px 和14.7px 这是经过优化的字号,黑体字或者宋体字加粗时,一般选用11pt和14.7px 的字号比较合适。

l       排版中我们经常会遇到需要进行首行缩进的处理,不要使用   或者全角空格来达到效果,规范的做法是在样式表中定义 p { text-indent: 2em; } 然后给每一段加上

标记,注意,一般情况下,请不要省略

结束标记 。

l       为了最大程度的发挥浏览器自动排版的功能,在一段完整的文字中请尽量不要使用
来人工干预分段。

l       不同语种的文字之间应该有一个半角空格,但避头的符号之前和避尾的符号之后除外汉字之间的标点要用全角标点,英文字母和数字周围的括号应该使用半角括号。

l       所有的字号都应该用样式表来实现,禁止在页面中出现 标记。

l       请不要在网页中连续出现多于一个 的   也尽量少使用全角空格(英文字符集下,全角空格会变成乱码),空白应该尽量使用 text-indent, padding, margin, hspace, vspace 以及透明的gif 图片来实现。

l       中英文混排时,我们尽可能的将英文和数字定义为verdana 和arial 两种字体。

l       行距建议用百分比来定义,常用的两个行距的值是line-height:120%/150%.

l       嵌入图形文本的使用较大的字体,建议不要在图形中包括文本。

l        

 

(5) 图片处理标准: 原则上,我们禁止用 来人为干预图片显示的尺寸,而且建议 标签中不要带上width 和height 两个属性,这是因为制作过程中,图片往往需要反复的修改,这样可以避免人为干预图片显示的尺寸,尽可能的发挥浏览器自身的功能;但是这样的一个副作用是当网页还未加载图片时,不会留出图片的站位大小,可能会造成网页在加载过程中抖动(如果图片是插在一个固定大小的表格里的,不会有这个现象),尤其是当图片的尺寸较大时,这种现象会很明显,所以当预料到这种会明显导致网页抖动的情况会发生时,请大家务必在最后给 附上 width 和 height 属性。

(6) 链接结构的原则:用最少的链接,使得浏览最有效率。 

首页和一级页面之间用星状链接结构,一级和二级页面之间用树状链接结构。超过三级页面,在页面顶部设置导航条。网站中的路径全部采用相对路径,链接到某一目录下的缺省文件的链接路径也要写全名。

(7) “网页大小”定义为网页的所有文件大小的总和,包括HTML文件和所有的嵌入的对象。用户喜欢快的而不是新奇的站点。对于解调器用户,网页大小保持在34K以下为合适。

 

(8)尺寸规范:页面标准按800*600分辨率制作,实际尺寸为778*434px

页面长度原则上不超过3屏,宽度不超过1屏

每个标准页面为A4幅面大小,即8.5X11英寸

全尺寸banner为468*60px,半尺寸banner为234*60px,小banner为88*31px

另外120*90,120*60也是小图标的标准尺寸

每个非首页静态页面含图片字节不超过60K,全尺寸banner不超过14K 

 

4.       ASP动态脚本的编程风格和约定
(1) 虽然ASP中所有变量是弱变量,无需定义就可以直接使用且不区分大小写。但为了养成良好的编程习惯,每个变量名必须定义,在ASP文件的最开始添加语句,强制定义每个变量。

(2) 变量命名标准:

子类型

前缀

示例

Boolean   

bln        

blnFound        

Byte      

byt       

bytRasterData  

Date (Time)

dtm       

dtmStart         

Double    

dbl       

dblTolerance     

Error     

err       

errOrderNum      

Integer   

int       

intQuantity      

Long      

lng        

lngDistance      

Object    

obj       

objCurrent       

Single    

sng       

sngAverage       

String    

str       

strFirstName     

 

 

 

3、[程序代码]需要有缩进,缩进采用键盘Tab键,不采用空格键。并且”=”或者链接字符串时需要左右空一格,

 

*例如:

stMessage = “你好”

stMessage = stMessage & “再见”

%>

 

4、[函数过程]编写的约定。函数或者过程命名采用动作+名词,每个函数需要给出相应的注释,函数功能,传入变量,以及作者和修改相关信息。

 

*例如:

‘[功能] 返回一个参数的值

‘[参数] stParameterName 参数名称

‘[作者] icefire 2002/8/20 am

Function GetParameterValue(strParameterName)

Dim objRS, strSQL, strParameterValue

stSQL = “SELECT ParameterValue FROM damsParameters WHERE ParameterName = ‘” & strParameterName & “‘”

.

GetParameterValue = strParameterValue

Set objRS = Nothing

End Function

 

5、[ASP内置对象] 区分大小写。如下代码片断

 

*例如:

stUserName = Request.Form(“UserName”)

Set conn = Server.CreateObject(”ADODB.Connection”)

 

6、[数据库连接] 一个库只能有一个数据库连接文件,创建数据库对象的原则是尽可能晚地打开数据库,尽可能早地关闭数据库。创建数据库对象调用统一地创建函数。

 

*例如:

Sub OpenConn(ByRef conn)

Dim strDBPath, strDBConnection

stDBPath = Server.MapPath(”database/tax.mdb”)

stDBConnnection = “Driver={Microsoft Access Driver (*.mdb)}; DBQ=” & stDBPath

Set conn = Server.CreateObject(”ADODB.Connection”)

conn.Open stDBConnnection

End Sub

 

7、当一个对象不在使用时要释放对象资源,比如ojFSO,ojRS对象等。采用统一函数调用。

 

*例如:

Sub CloseObj(ByRef obj)

If IsObject(obj) Then

obj.Close

Set obj = nothing

End If

End Sub

 

9、时间全部以字符串的形式保存到数据库中,这样做能够是日期在不同的数据库中都能良好地保存,也方便数据库地迁移。时间用14位字符串保存,日期用8位字符串保存。

 

5.       gfgfdg

6.       ergdfgfdg

 

 

 

 

 

计算机编程的24条法则

 

 

1、致命的异常终止决不允许

2、以这个次序编写:用户手册、说明书、帮助、源代码

3、除非你使用Risk Factor Analysis (RFA),否则一个程序将花费双倍你认为开发所需的时间—重复工作

4、编码工作量应该不超过开发工作的百分之二十

5、测试应该至少占工程的百分之三十

6、注释应该至少要占源代码的百分之二十

7、一条错误信息应该报告什么发生了,关于这个用户能够作什么,程序下一步要做什么,以及哪一行代码造成了该问题?可能也要注意时间,用户名和环境

8、好的程序将自动地发送最近的错误信息给永久性媒体

 

9、调用一个例程三次?隐藏它调用一次?不要隐藏

10、除了菜单和错误陷阱,例程应精确地只需要一个入口和一个出口

11、带有清晰的变量名和例程名的文档代码

12、数据库应该是相关的

13、总是采用最好的算法

14、首先优化最慢的例程,使用 Profiler 标志他们

15、最好的开发语言通常是具有最短开发时间的那个

16、要求顾客在用户手册和说明书上签字

 

17、首先编写更具风险的模块

18、让简单的维护成为引导你的灯光

19、检查你写的每个签名和拼写

20、不要写任何你能够用一个3 * 5 卡片封面复制的程序

21、知道何时应该完成何事

22、没有任何列表是完善的

23、困难不是你正在看之处

24、存在的规则和规律可以让人们免于思考

 

 

 

一.页面设计部分
1.img控件
 alt:所有展示类图片都要具有能简要描述图片内容的文字说明。
2.Input控件
 maxlength:所有INPUT控件都需要制定maxlength属性,默认值为数据库中对应的字段的长度。
 readonly:所有不可更改的信息都要使用readonly属性。
3.Form控件
 action:所有Form都要指定action,如果提交给本身就指定action=”"
 method:执行不可逆动作使用POST,可逆动作使用GET
 onsubmit:所有form都要指定提交前需要的检查程序。
 所有form都要有对应的reset button。
4.button控件
 onclick:form中用于提交的button不容许使用此方法,所有数据检查通过form的onsubmit激活。
5.title属性
 所有页面都要具有和本页标题相同的title。
6.控件的命名
 采用控件类型缩写(小写)+英文单词(第一个字母大写)的方法。
 开发中控件基本涉及一下几类
 button:btn
 form:frm
 select:sel
 textarea:txt
 input:ipt
7.语言设置
 所有中文页面都要加上如下语句:
 
 
8.控件属性赋值
 所有控件的属性值都要使用双引号或者单引号包括起来。
 
二.客户端程序部分
1.错误提示信息的处理(2-1)
 所有错误信息全部使用中文提示错误信息,标点使用中文半角符号,格式如下:
  “错误:”+提示信息+”!”
2.成功提示信息的处理(2-2)
 所有成功信息全部使用中文提示成功信息,标点使用中文半角符号,格式如下:
  “成功:”+提示信息+”!”
3.页面的返回
 所有需要返回上一页的时候使用history.back();不使用history.go(-1);
 需要返回前n页(n>1)时使用history.go(-n);
 所有返回都使用连接的方式而不是button。
4.提交前数据的判断
 保证提交前的数据都会通过JavaScript进行数据类型以及长度的判断
 是否为数字:使用函数isNaN()
 长度判断: 长度要判断去掉前后空格后的实际长度
 为空判断: 所有不容许为空的输入字段都要在去掉前后空格后进行判断,同时如果该字段为查询条件则必须不能为空
 如果判断条件发现数据错误,则通过(2-1)提示错误信息,然后通过方法focus()聚焦错误字段。
5.删除数据前的提示
 所有涉及删除的操作,在用户选定以后都要再进行一次确认操作。

三.服务器端程序部分
1.数据的取得
 通过Get,Post,连接传递过来的数据在使用前都要通过trim去掉数据前后的空格。
2.数据的判断
 通过request的得到的参数数据需要再次进行空,类型,和长度的判断。
3.对象的关闭
 所有数据库和文件对象都要在使用后尽可能早的close,同时赋nothing。
4.提示信息
 所有错误提示信息使用JavaScript提示,保证使用者看不到任何内部错误信息。(如1-1)
 涉及数据库Update,Del,Insert的操作成功都要提示。(如1-2)
5.变量的使用
 所有变量在使用前都需要声明,并且赋初值。
6.变量的命名
 采用变量类型缩写(小写)+英文单词(第一个字母大写)的方法。
 开发中变量基本涉及一下几类
 整数:i
 小数:f
 字符: s
 布尔:b
 日期:d
 特殊的:
 循环依次采用i,j,m,n;
 数组用ary
 指针p,q
 临时变量tmp
 
七.SQL语句
1.排序
 order时应该尽量提前使用建立索引或者主键的字段排序。
2.select
 select时避免使用*,即使需要所有字段也应尽量一个一个按照使用的顺序罗列出来。
3.尽量避免使用in和not in

八.测试
 所有页面要在800*600,1024*768两种分辨率下运行通过。
 所有页面要在IE5.0,5.5以及6.0下运行通过没有JavaScript错误。

 

 

 

asp开发规范

 

一、单页编写规范:

切记页面要分模块来写:

第一模块:接收参数。[有可能从不同页面提交到同一个页面;也可能出现两个表单项以哪个优先的处理。

第二模块:定义全局变量。

第三模块:写处理代码(尽量将代码都包含到函数中,详见页面附注一。)。——到此asp代码主要部分完成。

第四模块:纯html代码,利用储存在全局变量中的值来生成页面。

第五(注意):要在页面头部写清页面逻辑。(如何接收、处理。)

优点:便于维护。模块独立,便于重复使用到类似页面。

二、全站文件构建规范:

1.工程接手后,先观看静态页,掌握逻辑及浏览顺序。

2.抽取页面中被重复利用到的地方做成嵌入文件。

3.抽取头文件、尾文件,及左侧菜单栏,做成嵌入文件。

4.划分页面结构,做出模板文件。——以后制作中就copy它,然后就可直接制作。

注意:不要急于编写页面,除非你接手的是一项小工程,或者用户需求已经非常清楚确定并且不会再更改,否则,保持页面代码的可读性是非常重要的!(当你面对大返工时,你的心情如何?先对潜在的危险考虑一下吧!)

——因为我们每个人都对自己写的代码非常明白,而都比较难于读懂别人写的代码。并且,由于客户需求的变化,修改甚至推翻原有设计是比较常见的事。所以要注意在编写代码时注意让后来者快速读懂,并便于修改。][至少要在页面头部加上注释,在代码中间重要的部分,也有必要加一些说明性注释。]

 

 

我们所作的一切仅仅是为了:增加可移植可重用性、使逻辑清楚,便于维护、

适应用户需求的改变,并尽快完成,减少无用功。

――――――――――――――――――――――――――――――――――――――

 

附注一:第三模块编写说明。《ASP页面编写结构》

1.先写注释

2.写嵌入文件。

3.写大块的ASP代码(从COM中取出的)

——注意:复杂页面,尽量将不同COM的操作封装在独立的函数里;

——函数结尾有一句调用,后面页面中直接读取函数处理完的数据(已被赋给全局变量)

——调用函数前,对页面入口参数进行合法性检验。

 

附注二:第四模块编写说明。《Html代码部分需要注意的》

1)最好不使页面的asp代码和html代码混杂在一起,——感觉比较混乱。

2)通过获取全局变量的数据得到asp的处理结果。

3)关于客户端javascript:

表单提交前要进行合法性检验。写在对下拉框要有和隐藏按钮同步的,写出单独小函数,放在该按钮的下面。

对大型innerHTML型的客户端交互操作,将代码集中写在相应对应的写客户端脚本时,可多写些函数,使函数间传递的参数简单,功能单一,以便日后有类似页面,可以将其拆下来再使用。

 

对网页制作的要求:

网页人员完成的页面,为保证在使用时不会出现混乱,请他们作以下处理:

1.表格不要嵌套太多;

2.表格宽度要用象素规定宽度;

3.单页中,一个功能模块要做成一个表格,以便编写页面时,将重复部分提取成嵌入文件。

4.其它要注意的:精简代码、注意表格中字符和边框的宽度。

5.文件名请用英文小写加数字(和半角下划线)命名。[想想你的页面搬到unix主机上的惨状]

 

 

 

 

web开发规范
@页面设计部分 
@@img控件 
alt:所有展示类图片都要具有能简要描述图片内容的文字说明。 
@@Input控件 
maxlength:所有INPUT控件都需要制定maxlength属性,默认值为数据库中对应的字段的长度。 
readonly:所有不可更改的信息都要使用readonly属性。 
@@Form控件 
action:所有Form都要指定action,如果提交给本身就指定action=”" 
method:尽量使用post方式 
onsubmit:所有form都要指定提交前需要的检查程序。 
所有form都要有对应的reset button。 
@@button控件 
onclick:form中用于提交的button不容许使用此方法,所有数据检查通过form的onsubmit激活。 
@@head属性 
所有叶面都要具有不为空的head属性。 
@@控件的命名 
采用控件类型缩写(小写)+英文单词(第一个字母大写)的方法。 
开发中控件基本涉及一下几类 
button:btn 
form:frm 
select:sel 
textarea:txt 
input:ipt 
@@语言设置 
所有中文页面都要加上如下语句: 
 
 
@@控件属性赋值 
所有控件的属性值都要使用双引号或者单引号包括起来。 

@客户端程序部分 
@@错误提示信息的处理(1-1) 
所有错误信息全部使用中文提示错误信息,标点使用中文半角符号,格式如下: 
“错误:”+提示信息+”!” 
@@成功提示信息的处理(1-2) 
所有成功信息全部使用中文提示成功信息,标点使用中文半角符号,格式如下: 
“成功:”+提示信息+”!” 
@@页面的返回 
所有需要返回上一页的时候使用history.back();不使用history.go(-1); 
需要返回前n页(n>1)时使用history.go(-n); 
所有返回都使用连接的方式而不是button。 
@@提交前数据的判断 
保证提交前的数据都会通过javascript进行数据类型以及长度的判断 
是否为数字:使用函数isNaN() 
长度判断: 长度要判断去掉前后空格后的实际长度 
为空判断: 所有不容许为空的输入字段都要在去掉前后空格后进行判断,同时如果该字段为查询条件则必须不能为空 
如果判断条件发现数据错误,则通过(1-1)提示错误信息,然后通过方法focus()聚焦错误字段。 
@@删除数据前的提示 
所有涉及删除的操作,在用户选定以后都要再进行一次确认操作。 

@服务器端程序部分 
@@数据的取得 
通过Get,Post,连接传递过来的数据在使用前都要通过trim去掉数据前后的空格。 
@@数据的判断 
通过request的得到的参数数据需要再次进行空,类型,和长度的判断。 
@@对象的关闭 
所有数据库和文件对象都要在使用后尽可能早的close,同时赋nothing。 
@@提示信息 
所有错误提示信息使用javascript提示,保证使用者看不到任何内部错误信息。(如1-1) 
涉及数据库Update,Del,Insert的操作成功都要提示。(如1-2) 
@@变量的使用 
所有变量在使用前都需要声明,并且赋初值。 
@@变量的命名 
采用变量类型缩写(小写)+英文单词(第一个字母大写)的方法。 
开发中变量基本涉及一下几类 
整数:i 
小数:f 
字符: s 
布尔:b 
日期:d 
特殊的: 
循环依次采用i,j,m,n; 
数组用ary 
指针p,q 
临时变量tmp 

@SQL语句 
@@排序 
order时应该尽量提前使用建立索引或者主键的字段排序。 
@@select 
select时避免使用*,即使需要所有字段也应尽量一个一个按照使用的顺序罗列出来。 

7.       数据库的命名规则:

(1) 文件命名:db1_deepcast.mdb/mdf,db2_camelring.mdb/mdf…lg1_deepcast.log

文件类型和编号_有意义的项目名。(文件名全部采用小写)

(2) 表命名:DB1_TOPICS, DB2_MEMBERS, DB2_TOPICS_MEMBERS
数据库编号_有意义的表名  (表名全部采用大写,关连表命名规则为DB1_表A_表B)

(3) 字段命名:member_id, m_username, user_password
有意义的表名_有意义的字段名,字段名全部小写

 

(4) 视图名:VIEW1_MEMBERS_TOPICS_CONFIG
VIEW和编号_有意义的表A名_表B名_表C名

 

(5) 存储过程命名:PRO1_USER_Del,PRO1_TOPICS_AddData
PRO和编号_有意义的表名_有意义的存储过程名

 

(6) SQL语句编写:SELECT user_id, user_name FROM USER WHERE user_id = ‘joe’
关键字必须大写,其他书写按上述命名规则


[1]  [2]  [3]  [4]  [5]  [6]  [7]   显示全部

深度工作室系统分析与设计的原则

(深度工作室Web项目的开发规范V1.0)

Accourding to GNU GENERAL PUBLIC LICENSE

1.       目录命名规范

原则:以最少的层次提供最清晰简便的访问结构。

文件夹命名全部采用有意义的小写英文字母、数字、下划线的组合,长度少于20个字符,禁止使用中文拼音。不得包含汉字、空格和特殊字符。

一些常见的文件夹命名如:images(存放公用图形文件),flash(存放Flash文件),style(存放CSS文件),scripts (存放JS文件),inc(存放include文件),link(存放友情链接),media(存放多媒体文件),cgi_bin(存放CGI程序), gb,big5, en(存放各相应语言版本)等。

文件夹命名标准步骤:

(1) 在网站根目录中开设images gb temp 三个子目录,根据需要再开设flash / style / scripts / inc / media / link / 等公共文件目录。images目录中放不同栏目的页面都要用到的公共图片(可先放一个pic_blank.gif,它是1*1 大小的透明的gif 图片),例如公司的标志、banner 条、菜单、按钮等等;temp 子目录放客户提供的各种文字图片等等原始资料;media 子目录中放flash, avi, quick time 等多媒体文件。根目录只允许存放index.htm和main.htm,以及其他必须的系统文件。(服务器的ftp上传目录默认为html)

(2) 在根目录中原则上应该按照首页的栏目结构,给每一个栏目及每个主要菜单功能开设一个目录,根据需要在每一个栏目的目录中开设一个images 和flash/media等的子目录用以放置此栏目专有的图片和多媒体文件,如有下级栏目依此类推

 

(3) temp 开始以时间为名称开设目录,然后在工作中逐渐将客户陆续提供的资料归类整理。在网站项目完成后,应该将temp目录转移到source相应目录中归档。

2.       文件名命名规范

 

(1) 文件命名:统一采用有意义的,方便“按名称排列”操作的小写的英文字母、数字和下划线的组合。原则:以最少的字母达到最容易理解的意义。

 

索引文件统一使用index.htm文件名(小写)

index.htm文件统一作为”桥页”,不制作具体内容,仅仅作为跳转页和meta标签页。主内容页为main.htm

 

按菜单名的英语翻译取单一单词为名称。例如:

关于我们 \aboutus

信息反馈 \feedback

产    品 \product

所有单英文单词文件名都必须为小写,所有组合英文单词文件名第二个起第一个字母大写;

所有文件名字母间连线都为下划线

 

图片命名原则以图片英语字母为名。大小原则写同上。

例如:网站标志的图片为logo.gif

鼠标感应效果图片命名规范为”图片名+_+on/off”。

例如:menu1_on.gif/menu1_off.gif

 

其它文件命名规范

js的命名原则以功能的英语单词为名。

例如:广告条的js文件名为:ad.js

2.所有的CGI文件后缀为cgi

所有CGI程序的配置文件为config.cgi

(2) 图片的命名原则: 图片类型性质_有意义的描述,两部分用下划线隔开,头部分表示此图片的大类性质。

* banner:广告:放置在页面顶部的广告、装饰图案等长方形的图片

* logo:标志:标志性的图片

* button:按钮:在页面上位置不固定并且带有链接的小图片

* menu:菜单:在页面上某一个位置连续出现,性质相同的链接栏目的图片

* pic:装饰:装饰用的照片

* title:标题:不带链接表示标题的图片

 例如banner_sohu.gif 、banner_sina.gif、 menu_aboutus.gif 、menu_job.gif、 title_news.gif、 logo_police.gif、 logo_national.gif 、pic_people.jpg 。

 

(3) 动态脚本文件命名规则:性质_描述,描述可以有多个单词,用”_”隔开。性质一般是该页面得概要,范例:register_form.asp,register_post.asp,topic_lock.asp

3.       静态脚本文件编写规范
 

(1) Html 文件标准:

l       为保持脚本整体风格一致,Html 文件采用如下通用模板:

 

”keywords” content=”深度工作室, 计算机信息技术,网站建设,网站推广”>

”description” content=” 深度工作室, 互联网技术传播第一站”>

其他meta 标 记–>

样式表定义–>

客户端javascript 函数定义及初始化操作–>

 

l       为了与xml 标准兼容,所有的HTML 标签的属性都要用单引号或者双引号括起,即”url”>或者 而不 是

 

l       可以选择加入的META标签

网页显示字符集

简体中文:

繁体中文:

英 语:

设定网页的到期时间。一旦网页过期,必须到服务器上重新调阅。

 

禁止浏览器从本地机的缓存中调阅页面内容。

 

用来防止别人在框架里调用你的页面。

 

自动跳转。

*5指时间停留5秒。

 

网页搜索机器人向导.用来告诉搜索机器人哪些页面需要索引,哪些页面不需要索引。

CONTENT的参数有all,none,index,noindex,follow,nofollow。默认是all。

 

收藏夹图标

 

l       所有的javascript的调用尽量采取外部调用.

 

l       标签:为了保证浏览器的兼容性,必须设置页面背景

 

(2) CSS 文件的格式样例代码 :

l       为保持脚本整体风格一致,CSS文件采用如下通用模板:

p { text-indent: 2em; }

body { font-family: “宋体”; font-size: 9pt; color: #000000; margin-top: 0px; margin-right: 0px; margin-bottom: 0px; margin-left: 0px}

table { font-family: “宋体”; font-size: 9pt; line-height: 20px; color: #000000}

a:link { font-size: 9pt; color: #FFFFFF; text-decoration: none}

a:visited { font-size: 9pt; color: #99FFFF; text-decoration: none}

a:hover { font-size: 9pt; color: #FF9900; text-decoration: none}

a:active { font-size: 9pt; color: #FF9900; text-decoration: none}

a.1:link { font-size: 9pt; color: #3366cc; text-decoration: none}

a.1:visited { font-size: 9pt; color: #3366cc; text-decoration: none}

a.1:hover { font-size: 9pt; color: #FF9900; text-decoration: none}

a.1:active { font-size: 9pt; color: #FF9922; text-decoration: none}

.blue { font-family: “宋体”; font-size: 10.5pt; line-height: 20px; color: #0099FF; letter-spacing: 5em}

–>

  

l       为方便阅读,这里尤其要注意的是a:link a:visited a:hover a:actived 的排列顺序一定要严格照上面的样例代码。另外我们规定重定义的最先,伪类其次,自定义最后

 

(3) TABLE标准:

l       在写

互相嵌套时,严格按照的规范,对于单独的一个 来说, 对齐, 缩进两个半角空格, 中如果还有嵌套的表格,
也缩进两个半角空格,如果

结束标记应该与

中没有任何嵌套的表格, 处于同一行,不要换行, 即:

 

l       属于同一个级别 的

一定是左首对齐的。如果代码顺序较乱,应先在DW中command->apply souce formatting进行代码整理

l       在排布表格之前,请大家一定要好好思考一个最佳的方案,表格的嵌套尽量控制在三层以内,并且应该尽量避免使用 两个标记。

l       为了减少用户的等待时间,一个网页要尽量避免所有的内容都嵌套在整个一张大表格,因为浏览器在解释页面的元素时,是以表格为单位逐一显示。如果必须这样做,请使用
标记分块显示。

l       因为浏览器认为换行相当于一个半角空格,所以禁止源代码中出现如下相当于无意中增加一个半角空格的不规范代码:

而应改成:

或者确实有必要增加一个半角空格:

 

 

l       因为某些浏览器认为空单元格非法而不会予以解释,所以禁止没有任何内容的空的单元格存在。高度大于等于12px 的单元格应该 在 和

之间写一 个   如果高度小于12px, 则应该 在 和

之间插入一个1*1 大小的透明的gif 图片。

l       为保证任何一个width 和height 都是有效的,禁止出现多于一个的控制同一个单元格大小的height 和width。只有一列的表格,width 写在

的标签内,只有一行的表格,height 写在 的标签内,多行多列的表格,width 和height 写在第一行或者第一列的 标签内。标准:改动代码中任何一个width 和height 的数值,都应该在浏览器中看到变化。

 

(4) 排版标准:

l       字号标准:为了保证不同浏览器上字号保持一致,字号规定用点数pt和像素px来定义,pt一般使用中文宋体的9pt和11pt,px一般使用中文宋体 12px 和14.7px 这是经过优化的字号,黑体字或者宋体字加粗时,一般选用11pt和14.7px 的字号比较合适。

l       排版中我们经常会遇到需要进行首行缩进的处理,不要使用   或者全角空格来达到效果,规范的做法是在样式表中定义 p { text-indent: 2em; } 然后给每一段加上

标记,注意,一般情况下,请不要省略

结束标记 。

l       为了最大程度的发挥浏览器自动排版的功能,在一段完整的文字中请尽量不要使用
来人工干预分段。

l       不同语种的文字之间应该有一个半角空格,但避头的符号之前和避尾的符号之后除外汉字之间的标点要用全角标点,英文字母和数字周围的括号应该使用半角括号。

l       所有的字号都应该用样式表来实现,禁止在页面中出现 标记。

l       请不要在网页中连续出现多于一个 的   也尽量少使用全角空格(英文字符集下,全角空格会变成乱码),空白应该尽量使用 text-indent, padding, margin, hspace, vspace 以及透明的gif 图片来实现。

l       中英文混排时,我们尽可能的将英文和数字定义为verdana 和arial 两种字体。

l       行距建议用百分比来定义,常用的两个行距的值是line-height:120%/150%.

l       嵌入图形文本的使用较大的字体,建议不要在图形中包括文本。

l        

 

(5) 图片处理标准: 原则上,我们禁止用 来人为干预图片显示的尺寸,而且建议 标签中不要带上width 和height 两个属性,这是因为制作过程中,图片往往需要反复的修改,这样可以避免人为干预图片显示的尺寸,尽可能的发挥浏览器自身的功能;但是这样的一个副作用是当网页还未加载图片时,不会留出图片的站位大小,可能会造成网页在加载过程中抖动(如果图片是插在一个固定大小的表格里的,不会有这个现象),尤其是当图片的尺寸较大时,这种现象会很明显,所以当预料到这种会明显导致网页抖动的情况会发生时,请大家务必在最后给 附上 width 和 height 属性。

(6) 链接结构的原则:用最少的链接,使得浏览最有效率。 

首页和一级页面之间用星状链接结构,一级和二级页面之间用树状链接结构。超过三级页面,在页面顶部设置导航条。网站中的路径全部采用相对路径,链接到某一目录下的缺省文件的链接路径也要写全名。

(7) “网页大小”定义为网页的所有文件大小的总和,包括HTML文件和所有的嵌入的对象。用户喜欢快的而不是新奇的站点。对于解调器用户,网页大小保持在34K以下为合适。

 

(8)尺寸规范:页面标准按800*600分辨率制作,实际尺寸为778*434px

页面长度原则上不超过3屏,宽度不超过1屏

每个标准页面为A4幅面大小,即8.5X11英寸

全尺寸banner为468*60px,半尺寸banner为234*60px,小banner为88*31px

另外120*90,120*60也是小图标的标准尺寸

每个非首页静态页面含图片字节不超过60K,全尺寸banner不超过14K 

 

4.       ASP动态脚本的编程风格和约定
(1) 虽然ASP中所有变量是弱变量,无需定义就可以直接使用且不区分大小写。但为了养成良好的编程习惯,每个变量名必须定义,在ASP文件的最开始添加语句,强制定义每个变量。

(2) 变量命名标准:

子类型

前缀

示例

Boolean   

bln        

blnFound        

Byte      

byt       

bytRasterData  

Date (Time)

dtm       

dtmStart         

Double    

dbl       

dblTolerance     

Error     

err       

errOrderNum      

Integer   

int       

intQuantity      

Long      

lng        

lngDistance      

Object    

obj       

objCurrent       

Single    

sng       

sngAverage       

String    

str       

strFirstName     

 

 

 

3、[程序代码]需要有缩进,缩进采用键盘Tab键,不采用空格键。并且”=”或者链接字符串时需要左右空一格,

 

*例如:

stMessage = “你好”

stMessage = stMessage & “再见”

%>

 

4、[函数过程]编写的约定。函数或者过程命名采用动作+名词,每个函数需要给出相应的注释,函数功能,传入变量,以及作者和修改相关信息。

 

*例如:

‘[功能] 返回一个参数的值

‘[参数] stParameterName 参数名称

‘[作者] icefire 2002/8/20 am

Function GetParameterValue(strParameterName)

Dim objRS, strSQL, strParameterValue

stSQL = “SELECT ParameterValue FROM damsParameters WHERE ParameterName = ‘” & strParameterName & “‘”

.

GetParameterValue = strParameterValue

Set objRS = Nothing

End Function

 

5、[ASP内置对象] 区分大小写。如下代码片断

 

*例如:

stUserName = Request.Form(“UserName”)

Set conn = Server.CreateObject(”ADODB.Connection”)

 

6、[数据库连接] 一个库只能有一个数据库连接文件,创建数据库对象的原则是尽可能晚地打开数据库,尽可能早地关闭数据库。创建数据库对象调用统一地创建函数。

 

*例如:

Sub OpenConn(ByRef conn)

Dim strDBPath, strDBConnection

stDBPath = Server.MapPath(”database/tax.mdb”)

stDBConnnection = “Driver={Microsoft Access Driver (*.mdb)}; DBQ=” & stDBPath

Set conn = Server.CreateObject(”ADODB.Connection”)

conn.Open stDBConnnection

End Sub

 

7、当一个对象不在使用时要释放对象资源,比如ojFSO,ojRS对象等。采用统一函数调用。

 

*例如:

Sub CloseObj(ByRef obj)

If IsObject(obj) Then

obj.Close

Set obj = nothing

End If

End Sub

 

9、时间全部以字符串的形式保存到数据库中,这样做能够是日期在不同的数据库中都能良好地保存,也方便数据库地迁移。时间用14位字符串保存,日期用8位字符串保存。

 

5.       gfgfdg

6.       ergdfgfdg

 

 

 

 

 

计算机编程的24条法则

 

 

1、致命的异常终止决不允许

2、以这个次序编写:用户手册、说明书、帮助、源代码

3、除非你使用Risk Factor Analysis (RFA),否则一个程序将花费双倍你认为开发所需的时间—重复工作

4、编码工作量应该不超过开发工作的百分之二十

5、测试应该至少占工程的百分之三十

6、注释应该至少要占源代码的百分之二十

7、一条错误信息应该报告什么发生了,关于这个用户能够作什么,程序下一步要做什么,以及哪一行代码造成了该问题?可能也要注意时间,用户名和环境

8、好的程序将自动地发送最近的错误信息给永久性媒体

 

9、调用一个例程三次?隐藏它调用一次?不要隐藏

10、除了菜单和错误陷阱,例程应精确地只需要一个入口和一个出口

11、带有清晰的变量名和例程名的文档代码

12、数据库应该是相关的

13、总是采用最好的算法

14、首先优化最慢的例程,使用 Profiler 标志他们

15、最好的开发语言通常是具有最短开发时间的那个

16、要求顾客在用户手册和说明书上签字

 

17、首先编写更具风险的模块

18、让简单的维护成为引导你的灯光

19、检查你写的每个签名和拼写

20、不要写任何你能够用一个3 * 5 卡片封面复制的程序

21、知道何时应该完成何事

22、没有任何列表是完善的

23、困难不是你正在看之处

24、存在的规则和规律可以让人们免于思考

 

 

 

一.页面设计部分
1.img控件
 alt:所有展示类图片都要具有能简要描述图片内容的文字说明。
2.Input控件
 maxlength:所有INPUT控件都需要制定maxlength属性,默认值为数据库中对应的字段的长度。
 readonly:所有不可更改的信息都要使用readonly属性。
3.Form控件
 action:所有Form都要指定action,如果提交给本身就指定action=”"
 method:执行不可逆动作使用POST,可逆动作使用GET
 onsubmit:所有form都要指定提交前需要的检查程序。
 所有form都要有对应的reset button。
4.button控件
 onclick:form中用于提交的button不容许使用此方法,所有数据检查通过form的onsubmit激活。
5.title属性
 所有页面都要具有和本页标题相同的title。
6.控件的命名
 采用控件类型缩写(小写)+英文单词(第一个字母大写)的方法。
 开发中控件基本涉及一下几类
 button:btn
 form:frm
 select:sel
 textarea:txt
 input:ipt
7.语言设置
 所有中文页面都要加上如下语句:
 
 
8.控件属性赋值
 所有控件的属性值都要使用双引号或者单引号包括起来。
 
二.客户端程序部分
1.错误提示信息的处理(2-1)
 所有错误信息全部使用中文提示错误信息,标点使用中文半角符号,格式如下:
  “错误:”+提示信息+”!”
2.成功提示信息的处理(2-2)
 所有成功信息全部使用中文提示成功信息,标点使用中文半角符号,格式如下:
  “成功:”+提示信息+”!”
3.页面的返回
 所有需要返回上一页的时候使用history.back();不使用history.go(-1);
 需要返回前n页(n>1)时使用history.go(-n);
 所有返回都使用连接的方式而不是button。
4.提交前数据的判断
 保证提交前的数据都会通过JavaScript进行数据类型以及长度的判断
 是否为数字:使用函数isNaN()
 长度判断: 长度要判断去掉前后空格后的实际长度
 为空判断: 所有不容许为空的输入字段都要在去掉前后空格后进行判断,同时如果该字段为查询条件则必须不能为空
 如果判断条件发现数据错误,则通过(2-1)提示错误信息,然后通过方法focus()聚焦错误字段。
5.删除数据前的提示
 所有涉及删除的操作,在用户选定以后都要再进行一次确认操作。

三.服务器端程序部分
1.数据的取得
 通过Get,Post,连接传递过来的数据在使用前都要通过trim去掉数据前后的空格。
2.数据的判断
 通过request的得到的参数数据需要再次进行空,类型,和长度的判断。
3.对象的关闭
 所有数据库和文件对象都要在使用后尽可能早的close,同时赋nothing。
4.提示信息
 所有错误提示信息使用JavaScript提示,保证使用者看不到任何内部错误信息。(如1-1)
 涉及数据库Update,Del,Insert的操作成功都要提示。(如1-2)
5.变量的使用
 所有变量在使用前都需要声明,并且赋初值。
6.变量的命名
 采用变量类型缩写(小写)+英文单词(第一个字母大写)的方法。
 开发中变量基本涉及一下几类
 整数:i
 小数:f
 字符: s
 布尔:b
 日期:d
 特殊的:
 循环依次采用i,j,m,n;
 数组用ary
 指针p,q
 临时变量tmp
 
七.SQL语句
1.排序
 order时应该尽量提前使用建立索引或者主键的字段排序。
2.select
 select时避免使用*,即使需要所有字段也应尽量一个一个按照使用的顺序罗列出来。
3.尽量避免使用in和not in

八.测试
 所有页面要在800*600,1024*768两种分辨率下运行通过。
 所有页面要在IE5.0,5.5以及6.0下运行通过没有JavaScript错误。

 

 

 

asp开发规范

 

一、单页编写规范:

切记页面要分模块来写:

第一模块:接收参数。[有可能从不同页面提交到同一个页面;也可能出现两个表单项以哪个优先的处理。

第二模块:定义全局变量。

第三模块:写处理代码(尽量将代码都包含到函数中,详见页面附注一。)。——到此asp代码主要部分完成。

第四模块:纯html代码,利用储存在全局变量中的值来生成页面。

第五(注意):要在页面头部写清页面逻辑。(如何接收、处理。)

优点:便于维护。模块独立,便于重复使用到类似页面。

二、全站文件构建规范:

1.工程接手后,先观看静态页,掌握逻辑及浏览顺序。

2.抽取页面中被重复利用到的地方做成嵌入文件。

3.抽取头文件、尾文件,及左侧菜单栏,做成嵌入文件。

4.划分页面结构,做出模板文件。——以后制作中就copy它,然后就可直接制作。

注意:不要急于编写页面,除非你接手的是一项小工程,或者用户需求已经非常清楚确定并且不会再更改,否则,保持页面代码的可读性是非常重要的!(当你面对大返工时,你的心情如何?先对潜在的危险考虑一下吧!)

——因为我们每个人都对自己写的代码非常明白,而都比较难于读懂别人写的代码。并且,由于客户需求的变化,修改甚至推翻原有设计是比较常见的事。所以要注意在编写代码时注意让后来者快速读懂,并便于修改。][至少要在页面头部加上注释,在代码中间重要的部分,也有必要加一些说明性注释。]

 

 

我们所作的一切仅仅是为了:增加可移植可重用性、使逻辑清楚,便于维护、

适应用户需求的改变,并尽快完成,减少无用功。

――――――――――――――――――――――――――――――――――――――

 

附注一:第三模块编写说明。《ASP页面编写结构》

1.先写注释

2.写嵌入文件。

3.写大块的ASP代码(从COM中取出的)

——注意:复杂页面,尽量将不同COM的操作封装在独立的函数里;

——函数结尾有一句调用,后面页面中直接读取函数处理完的数据(已被赋给全局变量)

——调用函数前,对页面入口参数进行合法性检验。

 

附注二:第四模块编写说明。《Html代码部分需要注意的》

1)最好不使页面的asp代码和html代码混杂在一起,——感觉比较混乱。

2)通过获取全局变量的数据得到asp的处理结果。

3)关于客户端javascript:

表单提交前要进行合法性检验。写在对下拉框要有和隐藏按钮同步的,写出单独小函数,放在该按钮的下面。

对大型innerHTML型的客户端交互操作,将代码集中写在相应对应的写客户端脚本时,可多写些函数,使函数间传递的参数简单,功能单一,以便日后有类似页面,可以将其拆下来再使用。

 

对网页制作的要求:

网页人员完成的页面,为保证在使用时不会出现混乱,请他们作以下处理:

1.表格不要嵌套太多;

2.表格宽度要用象素规定宽度;

3.单页中,一个功能模块要做成一个表格,以便编写页面时,将重复部分提取成嵌入文件。

4.其它要注意的:精简代码、注意表格中字符和边框的宽度。

5.文件名请用英文小写加数字(和半角下划线)命名。[想想你的页面搬到unix主机上的惨状]

 

 

 

 

web开发规范
@页面设计部分 
@@img控件 
alt:所有展示类图片都要具有能简要描述图片内容的文字说明。 
@@Input控件 
maxlength:所有INPUT控件都需要制定maxlength属性,默认值为数据库中对应的字段的长度。 
readonly:所有不可更改的信息都要使用readonly属性。 
@@Form控件 
action:所有Form都要指定action,如果提交给本身就指定action=”" 
method:尽量使用post方式 
onsubmit:所有form都要指定提交前需要的检查程序。 
所有form都要有对应的reset button。 
@@button控件 
onclick:form中用于提交的button不容许使用此方法,所有数据检查通过form的onsubmit激活。 
@@head属性 
所有叶面都要具有不为空的head属性。 
@@控件的命名 
采用控件类型缩写(小写)+英文单词(第一个字母大写)的方法。 
开发中控件基本涉及一下几类 
button:btn 
form:frm 
select:sel 
textarea:txt 
input:ipt 
@@语言设置 
所有中文页面都要加上如下语句: 
 
 
@@控件属性赋值 
所有控件的属性值都要使用双引号或者单引号包括起来。 

@客户端程序部分 
@@错误提示信息的处理(1-1) 
所有错误信息全部使用中文提示错误信息,标点使用中文半角符号,格式如下: 
“错误:”+提示信息+”!” 
@@成功提示信息的处理(1-2) 
所有成功信息全部使用中文提示成功信息,标点使用中文半角符号,格式如下: 
“成功:”+提示信息+”!” 
@@页面的返回 
所有需要返回上一页的时候使用history.back();不使用history.go(-1); 
需要返回前n页(n>1)时使用history.go(-n); 
所有返回都使用连接的方式而不是button。 
@@提交前数据的判断 
保证提交前的数据都会通过javascript进行数据类型以及长度的判断 
是否为数字:使用函数isNaN() 
长度判断: 长度要判断去掉前后空格后的实际长度 
为空判断: 所有不容许为空的输入字段都要在去掉前后空格后进行判断,同时如果该字段为查询条件则必须不能为空 
如果判断条件发现数据错误,则通过(1-1)提示错误信息,然后通过方法focus()聚焦错误字段。 
@@删除数据前的提示 
所有涉及删除的操作,在用户选定以后都要再进行一次确认操作。 

@服务器端程序部分 
@@数据的取得 
通过Get,Post,连接传递过来的数据在使用前都要通过trim去掉数据前后的空格。 
@@数据的判断 
通过request的得到的参数数据需要再次进行空,类型,和长度的判断。 
@@对象的关闭 
所有数据库和文件对象都要在使用后尽可能早的close,同时赋nothing。 
@@提示信息 
所有错误提示信息使用javascript提示,保证使用者看不到任何内部错误信息。(如1-1) 
涉及数据库Update,Del,Insert的操作成功都要提示。(如1-2) 
@@变量的使用 
所有变量在使用前都需要声明,并且赋初值。 
@@变量的命名 
采用变量类型缩写(小写)+英文单词(第一个字母大写)的方法。 
开发中变量基本涉及一下几类 
整数:i 
小数:f 
字符: s 
布尔:b 
日期:d 
特殊的: 
循环依次采用i,j,m,n; 
数组用ary 
指针p,q 
临时变量tmp 

@SQL语句 
@@排序 
order时应该尽量提前使用建立索引或者主键的字段排序。 
@@select 
select时避免使用*,即使需要所有字段也应尽量一个一个按照使用的顺序罗列出来。 

7.       数据库的命名规则:

(1) 文件命名:db1_deepcast.mdb/mdf,db2_camelring.mdb/mdf…lg1_deepcast.log

文件类型和编号_有意义的项目名。(文件名全部采用小写)

(2) 表命名:DB1_TOPICS, DB2_MEMBERS, DB2_TOPICS_MEMBERS
数据库编号_有意义的表名  (表名全部采用大写,关连表命名规则为DB1_表A_表B)

(3) 字段命名:member_id, m_username, user_password
有意义的表名_有意义的字段名,字段名全部小写

 

(4) 视图名:VIEW1_MEMBERS_TOPICS_CONFIG
VIEW和编号_有意义的表A名_表B名_表C名

 

(5) 存储过程命名:PRO1_USER_Del,PRO1_TOPICS_AddData
PRO和编号_有意义的表名_有意义的存储过程名

 

(6) SQL语句编写:SELECT user_id, user_name FROM USER WHERE user_id = ‘joe’
关键字必须大写,其他书写按上述命名规则

]]>