(精品)APICoding编程规范

上传人:大米 文档编号:553626551 上传时间:2022-10-30 格式:DOC 页数:12 大小:80KB
返回 下载 相关 举报
(精品)APICoding编程规范_第1页
第1页 / 共12页
(精品)APICoding编程规范_第2页
第2页 / 共12页
(精品)APICoding编程规范_第3页
第3页 / 共12页
(精品)APICoding编程规范_第4页
第4页 / 共12页
(精品)APICoding编程规范_第5页
第5页 / 共12页
点击查看更多>>
资源描述

《(精品)APICoding编程规范》由会员分享,可在线阅读,更多相关《(精品)APICoding编程规范(12页珍藏版)》请在金锄头文库上搜索。

1、API Coding 编程规范(1)()2001/4/5你是个天才, 熬夜写了5000行的代码, 实现了前所未有的功能, 不过到了第二天你就无法順利解读那份代码. 又过了一个月, 有人向你问起有关这段代,码的问题, 你赌咒发誓那不是你写的, 是这样吗?你一定看过Microsoft, Inprise, Sun公司的源代码, 你会怀疑那些是否出自一台會Coding的及器吗?.如果是, 请遵循大汉网络API Coding 规范.概述: 对于一个软件工厂,并不需要一个我行我素的机灵蛋, 您所使用的技巧应遵循一定的约束, 否则您的Source不能被他人解读. 造成资源维护困难, 将不能成为公司的有效资源

2、. 要相信bug 一定会有,只是暂时未发现. 因为一切都在进步,不断推陈出新. 没有最好只有更好. 一. Class/Interface/Method命名约定Class/Interface必须以大写字母开头, 如:Class SaveThread extends ThreadInterface DSIRemoveAll Method(方法, 函数)必须以小写字母开头,Method名应使用大小写混合形式, 并且应足够长以描述它的作用. 而且, Method名应以一个动词起手,如 initNameArray() closeDialog() 还应注意Method不要太长,结构简单的一般不超过200行

3、,结构复杂的一般不超过100行.您可回想一些,您1000行代码的Method, 真的不可拆为10个Method的吗?二. 常量变量命名约定常量必须全部大写, 如:public static final int MAXLINES;建议多定义或使用常量, 而不是数字(或字母)例如:if(argv23=0.0f)else这是很危险的做法, 正确的做法是使用常量, 如23表示为金额:final static int SUM=23;if(argvSUM=0.0f)else很明显, 好处有二: 1. Source容易阅读; 2. 当数组序列刪除或增加某个元素时, 只要修改常量定义值.就可以了还有一个写法是

4、创建Class将argv封装起来.Class ReportOptionpublic ReportOption(String argv)public boolean isPrintSum()变量1. 以小写字母开头 , 如:int ni;2. 加数据类型前缀, 如:String strName; 建议以下常用数据类型之前缀: 类型 前缀 例子 基本数据类. boolean / Boolean. bl. blOK. char / Char. ch. chRead. byte / Byte. b. bWrite. int / Integer. n. nLength. short / Short. s

5、. sCount. long / Long. l. lTotal. float / Float. f. fSum. double / Double. d. dSum常用数据类. String. str. strNameArray. StringHolder. strhd. strhdNameArray. Vector. v. vData. HashTable. ht. htRecord. HashMap. hm. hmRecord. Calender. cal, cal与SQL相关的类. Connection. conn. connNow. Statement. stmt. stmtQuery

6、All. PreparedStatement. pstmt. pstmtQueryCustomJAVA控制类. Jlabel. _lab. _labText. DateLabel. _dlab. _dlabText. NumberLabel. _nlab. _nlabText. Jbutton. _btn. _btnOK. JtextField. _tf. _tfName. JtextFieldPopup. _tfpop. _tfpopName. JtextArea. _ta. _taAddress. JtextAreaPopup. _tapop. _tapopAddress. JcomboB

7、ox. _comb. _combType. JradioButton. _rbtn. _rbtnSelect. JcheckBox. _cbox. _cboxOption. Pin. _spin. _spinDate. NumberEdit. _ne. _neSum. FreeNumberEdit. _fne. _fneSum. ComboNumberEdit. _cne. _cneSum. ComboDateEdit. _cde. _cdeBillDate. LiveTable. _table. _tableProduct. JCDataSource. _ds. _dsProduct. .

8、3. 加变量范围, 全局加m_, 如:Class TestThread extends Thread String m_strName;Public TestThread(String strName)m_strName=strName;4. 请使用标准的英文Name.三. 结构化编程规约(请按以下执行)(参考文献)除了命名約定外, 結构化編碼約定, 可以極大地改善代碼的可讀性, 如代碼註釋和一致性縮進. 1. Class/Interface文件頭註釋約定每一Source須加標準Head Script, 另外還需要”功能描述”說明此Source的功能./*/ Project: MERP/ Co

9、pyright 2000-2005 Dahan Net, All Right Reserved/ $Workfile: PS_DE0001.java $/ $Header: 1.12 Jun 20 2001 09:06:54 chemain $/*/*功能描述:*/2. Method註釋約定所有的Method都應該以描述这段代碼的功能的一段簡明註釋始(这段代碼干什么). 这种描述不應該包括执行过程(它是怎么做的),因為这常常是随时間而變的,而且这种描述会導致不必要的註釋工作,甚至更糟成為錯誤的註釋. 代碼本身和必要的嵌入註釋將描述实現方法.当参数的功能不明顯, 且当Method希望参数在一个特

10、定的范圍内时,也應描述傳递給Method的参数. 被Method改變的函数返回值, 參數及全局變量, 在每个Method的起始处描述它.过程头註釋块應該包括下列標題. 關于例子, 請参閱下節“格式化代碼”.標題註釋描述目的Method完成甚麼(而不是怎麼完成)輸入參數每一个輸入参数分别在单独的行上,并嵌入註释。返回值函数返回值的說明。包括對全局量的影響.在Method實體中記住下列几点:A.每一个重要變量的声明應該包括一个嵌入註釋,来描述變量的使用.B.變量、控件及Method的命名應該足够清楚, 使得只有复雜的执行細節才需要嵌入註釋.C.列舉主要数据对象、Method、算法、数据庫及系統需求

11、. 一段描述算法的偽代碼能会有所帮助。 3. 格式化代碼因為顯示器空間有限,所以在允許代碼格式来反映逻輯构和嵌套的同时,尽可能地省屏幕空間。下面列出几点: 標準准的、基于制表位的嵌套块應該被縮進4个空格(請調整Source Editor的制表位)。Method的功能綜述應該縮進一个空格。跟在綜述註釋后面的最高級的語句縮進一个制表位,而每一个嵌套的块再縮進一个制表位。例如: /*目的: 找出一個String在一個String中位置index輸入: strArray:String數組 strFind:需要找的String返回: =0:找到, 返回strDind在strArray中的index -1

12、:沒找到*/public int compString(String strArray, String strFind)/空值輸入, 返回-1if(strArray=null|strFind=null)return -1;/循環for(int ni=0;nistrArray.length();ni+)if(strArrayni.equals(strFind)/是否匹配return ni;/返回index/沒找到, 返回-1return -1;另外:和必須上下對齊,條件判斷後的執行語句必須另起新行, 如void function(.) if(condition) / braces on the next line do something. esle do something. / the following style is bad for debugging / if(condition) do something / / / switch switch(condition) case CASE1: do somthing. break; case CASE2: do something. break; default

展开阅读全文
相关资源
正为您匹配相似的精品文档
相关搜索

最新文档


当前位置:首页 > 建筑/环境 > 施工组织

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号