1、d34de013-7aa9-48e4-93d7-bc71acaba9c4.doc请在这里输入公司名称文 档 编 号产品版本密级XK-DN-2000-10-11-05V 1.0内部Page: 1密级可以选择以下几种: 无, 一般,内部,组内,秘密,绝密等。产品名称: 共 页软件界面设计及编码标准规范(仅供内部使用)文 档 作 者:_ 日期:_/_/_开发/测试经理:_ 日期:_/_/_产 品 经 理: _ 日期:_/_/_管 理 办:_ 日期:_/_/_请在这里输入公司名称版权所有 不得复制 电能质量数据分析软件界面设计及编码标准规范文档修改记录版本号日期所修改页注 记102000/10/158
2、常见快捷键规定目录一、开发环境2二、软件界面设计标准规范221编写目的222内容:22.2.1界面设计思想22.2.2界面设计原则22.2.3界面设计样式22.2.4常见提示信息样式22.2.5常见错误信息样式22.2.6其他界面约定2三、软件编码设计标准规范231编写目的:232内容:2321对象命名约定2322常量和变量命名约定2323结构化编码约定2324数据源的约定2325数据库访问约定2326其他约定2一、开发环境NT4。0、WIN98作开发操作平台前台采用 (此处输入开发工具名称) 作开发工具,后台以(此处输入数据库名称)作数据库来管理数据存储。屏幕分辨率:800*600 ,大字体
3、,可在程序启动后自动设定。二、 软件界面设计标准规范21编写目的当今软件界的所有软件无不是可视化的用户界面,它的好处不外乎它有美观、直接、操作者易懂和操作方便等好处。(此处输入编写文档的具体目的)。22内容:2.2.1界面设计思想“为用户设计,而不是设计者”。2.2.2界面设计原则(1) 界面要美观、操作要方便并能高效率地完成工作。(2) 界面要根据用户需求设计。(3) 界面要根据不同用户的层次设计。(有的用户对计算机相当了解而有的从来就没碰过计算机)(4) 避免出现嵌套式的界面设计。(5) 界面和代码要相互制约。(6) 界面要通“人性”。即要有引导用户操作的功能,不能是操作一有误就卡住什么都
4、做不下去,又无任何提示来帮助用户如何进行操作。2.2.3界面设计样式(1) 登录界面(此处加入登陆界面图)(2)系统功能布局菜单形式(此处加入界面图)标签栏形式(此处加入界面图)(3) 录入界面(此处加入界面图)(4) 查询界面(此处加入界面图)(5) 统计界面(此处加入界面图)2.2.4常见提示信息样式(1) 当操作会带来严重后果时(默认按钮为“否“)(此处加入界面图)(2) 当操作会带来一定后果时(默认按钮为“否“)(此处加入界面图)(3) 当需征求操作者意愿时(默认按钮为“是“)(此处加入界面图)(4) 当需提供操作者帮助时(此处加入界面图)(5) 当操作者操作有错时(此处加入界面图)(
5、6) 当是一般提示时(此处加入界面图)范例:(此处加入界面图)2.2.5常见错误信息样式(此处加入界面图)2.2.6其他界面约定字体:一般界面字体为宋体,字号为9Twip(只要把窗体字体设为宋体,字号为9twip即可)。颜色:界面颜色采用默认色(除非用户有特殊要求)。按钮:高度375Twip,除“确定”和“取消”外都需含有快捷键。常见按钮快捷键:添加(A)、删除(D)、查询(S)、更新(U)、打印(P)、关闭(C)、重新查询(R)、统计(T)、退出(E)。数据:REAL型数据一律保留两位小数且右对齐。对齐方式:界面上的标题(Label)右对齐,其他控件左对齐。参考文献:(此处加入参考文献)三、
6、软件编码设计标准规范31编写目的:使用统一编码约定集的主要原因,是使应用程序的结构和编码风格标准化,以便于阅读和理解这段编码。好的编码约定可使源代码严谨、可读性强且意义清楚,与其它语言约定相一致,并且尽可能的直观。一组通用目的的编码约定应该定义完成上述目的所必需的、能让程序员自由地创建程序逻辑和功能流程的最小的要求。编码约定的目的是使程序易于阅读和理解,而不是用过份的约束和绝对的限制来束缚程序员本身的创造性。32内容:程序设计语言的特性和风格会直接影响到软件的质量和可维护性。编码原则:应尽量避免在系统初始化时运行过多的代码。(此处加入详细原则)(1) 选用控制结构只准许一个入口和一个出口。(2
7、) 程序语句组成容易识别的块,每块只有一个入口和一个出口。(3) 复杂的结构应该用基本控制结构进行组合嵌套来实现。(4) 语句中没有的控制结构,可用一段等价的程序段模拟,但要求该程序段在整个系统应前后一致。(5) 严格控制GOTO语句,仅在下列情形才可使用。u 用一个非结构化的程序设计语言去实现一个结构化的构造。u 在某种可以改善而不是损害程序可读性的情况下。321对象命名约定公式:对象名称=对象前缀+自定义名称(自定义名称要有一定的意义且第一个字母大写)说明:如果是不需要对其编码的对象,那么对象名用默认对象名。应该用一致的前缀来命名对象,使人们容易识别对象的类型。下面列出了 Delphi 支
8、持的一些推荐使用的对象约定。(1) 推荐使用的项目前缀控件类型前缀例子Class Modulecmdl cmdlCheckData Environment dev devPrints Data Report drtdrtEnglishFormfrmfrmEntryMDIForm mfrmmfrmSinoexportModulemdl mdlConnection ProjectpjtpjtCkmis(2)推荐使用的控件前缀控件类型前缀例子3D PanelpnlpnlGroupADO DataadoadoBiblioAnimated buttonanianiMailBoxCheck boxchkc
9、hkReadOnlyCombo box drop-down list boxcbocboEnglishCommand buttoncmdcmdExitCommon dialogdlgdlgFileOpenCommunications comcomFaxControl(当特定类型未知时,在过程中所使用的)ctrctrCurrentDatadatdatBiblioData-bound combo boxdbcbodbcboLanguageData-bound griddbgrddbgrdQueryResultxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx(3)推
10、荐使用的数据访问对象的前缀用下列前缀来指示数据访问对象。数据库对象前缀例子ConnectionconconReportsxxxdbdbAccounts一些例子:(此处加入例子)(4)推荐使用的菜单前缀应用程序频繁使用许多菜单控件,对于这些控件具备一组唯一的命名约定很实用。除了最前面 mnu 标记以外,菜单控件的前缀应该被扩展:对每一级嵌套增加一个附加前缀,将最终的菜单的标题放在名称字符串的最后。下表列出了一些例子。菜单标题序列 菜单处理器名称 (此处加入标题序列及处理器名称)当使用这种命名约定时,一个特定的菜单组的所有成员一个接一个地列在 Visual Basic 的“属性”窗口中。而且,菜单
11、控件的名字清楚地表示出它们所属的菜单项。(5)为其它控件选择前缀对于上面没有列出的控件,应该用唯一的由两个或三个字符组成的前缀使它们标准化,以保持一致性。只有当需要澄清时,才使用多于三个字符的前缀。例如,(此处加入例子)322常量和变量命名约定 公式:常量或变量名称=常量或变量范围前缀+常量或变量类型前缀+自定义名称(自定义名称要有一定的意义且第一个字母大写)除了对象之外,常量和变量也需要良好格式的命名约定。本节列出了(此处加入变量列表)。变量应该总是被定义在尽可能小的范围内。全局 (Public) 变量可以导致极其复杂的状态机构,并且使一个应用程序的逻辑非常难于理解。全局变量也使代码的重用和
12、维护更加困难。Delphi中的变量可以有下列范围:范围 声明位置 可见位置 过程级(此处加入名称) 模块级(此处加入名称)全局(此处加入名称)。较好的编码习惯是尽可能写模块化的代码。例如,如果应用程序显示一个对话框,就把要完成这一对话任务所需要的所有控件和代码放在单一的窗体中。这有助于将应用程序的代码组织在有用的组件中,并减小它运行时的开销。除了全局变量(应该是不被传递的),过程和函数应该仅对传递给它们的对象操作。在过程中使用的全局变量应该在过程起始处的声明部分中标识出来。变量范围前缀随着工程大小的增长,划分变量范围的工作也迅速增加。在类型前缀的前面放置单字母范围前缀标明了这种增长,但变量名的
13、长度并没有增加很多。范围前缀例子全局gGstrUserName模块级mMblnCalcInProgress本地到过程无DblVelocity(此处加入说明)变量声明所有的变量将会(此处加入说明)。应该给变量加前缀来指明它们的数据类型。而且前缀可以被扩展,用来指明变量范围,特别是对大型程序。变量数据类型用下列前缀来指明一个变量的数据类型。(此处加入说明)描述变量和过程名变量或过程名的主体应该使用大小写混合形式,并且应该足够长以描述它的作用。而且,函数名(此处加入函数名称)。对于频繁使用的或长的项,推荐使用标准缩略语以使名称的长度合理化。一般来说,(此处加入特例说明)就困难了。当使用缩略语时,要确
14、保它们在整个应用程序中的一致性。在一个工程中,如果一会儿使用(此处加入说明问题),将导致不必要的混淆。用户定义的类型在一项有许多用户定义类型的大工程中,常常有必要给每种类型一个它自己的三个字符的前缀。如果这些前缀是(此处加入前缀名称)。323结构化编码约定(此处加入约定说明)记住下列几点: 每一个重要变量的声明应该包括(此处加入变量名称)。 (2)格式化代码因为许多程序员(此处加入问题) (此处加入解决问题的说明)(3)给常量分组变量和定义的常量应该按功能分组,而不是分散到单独区域或特定文件中。(4)运算符(此处加入运算符列表及说明)(5)为(此处加入问题) 查询创建字符串(此处加入说明)324数据源的约定(此处加入数据源的约定)325数据库访问约定访问数据库用ODBC drivers/ADO,但如果在有的技术ADO解决不了的情况下可用其他方法。数据库访问技术有:(此处加入说明)326其他约定(1)当日期、时间型数据要求严格时,(此处加入说明) (2)记录集应用约束(此处加入约束)利用记录集(此处加入记录集说明)(3)文件命名约定工程文件和各模块文件以汉字命名保存,这样可方便管理和查找。参考文献:(此处加入参考文献)第 9 页 共 9页