c#命名規則參考

命名規則參考:
1.從組件類型名中移去T前綴。例如TButton變成Button。
2.除了第一個元音,刪去全部元音字母。例如,Button變成bttn,Edit變成edt。
3.壓縮雙字母。例如,bttn變成btn。
4.如相同前綴名致使發生衝突,則在某一組件前綴中加入一個元音。例如在TButton組件的前綴中加入元音變爲
batn,以區別Button的前綴。
5.用不用皆可:去掉一些廣泛重複的部分,例如textbox按照前上3條的說明應該書寫爲txtbx,可是box一詞是不少組件共同擁有的詞條,因此被去掉,縮寫爲「txt」。 css

標準控件
1   btn     Button               
2   chk     CheckBox             
3   ckl     CheckedListBox       
4   cmb     ComboBox             
5   dtp     DateTimePicker       
6   lbl     Label                
7   llb     LinkLabel            
8   lst     ListBox              
9   lvw     ListView             
10 mtx     MaskedTextBox        
11 cdr     MonthCalendar        
12 icn     NotifyIcon           
13 nud     NumeircUpDown        
14 pic     PictureBox           
15 prg     ProgressBar          
16 rdo     RadioButton          
17 rtx     RichTextBox          
18 txt或tbx     TextBox              
19 tip     ToolTip              
20 tvw     TreeView             
21 wbs     WebBrowser           
容器控件
1   flp     FlowLayoutPanel      
2   grp     GroupBox             
3   pnl     Panel                
4   spl     SplitContainer       
5   tab     TabControl           
6   tlp     TableLayoutPanel     
菜單和工具欄
1   cms     ContextMenuStrip     
2   mns     MenuStrip            
3   ssr     StatusStrip          
4   tsr     ToolStrip            
5   tsc     ToolStripContainer   
數據
1   dts     DataSet              
2   dgv     DataGridView         
3   bds     BindingSource        
4   bdn     BindingNavigator     
5   rpv     ReportViewer         
對話框
1   cld     ColorDialog          
2   fbd     FolderBrowserDialog  
3   fnd     FontDialog           
4   ofd     OpenFileDialog       
5   sfd     SaveFileDialog       
組件
1   bgw     BackgroundWorker     
2   dre     DirectoryEntry       
3   drs     DirectorySearcher    
4   err     ErrorProvider        
5   evl     EventLog             
6   fsw     FileSystemWatcher    
7   hlp     HelpProvider         
8   img     ImageList            
9   msq     MessageQueue         
10 pfc      PerformanceCounter  
11 prc      Process             
12 spt      SerialPort          
13 scl      ServiceController   
14 tmr      Timer               
印刷
1   psd     PageSetupDialog      
2   prd     PrintDialog          
3   pdc     PrintDocument        
4   prv     PrintPreviewControl  
5   ppd     PrintPreviewDialog   
水晶報表
1   crv     CrystalReportViewer  
2   rpd     ReportDocument       
其餘
1   dud     DomainUpDown         
2   hsc     HScrollBar           
3   prg     PropertyGrid         
4   spl     Splitter             
5   trb     TrackBar             
6   vsc     VScrollBar   html

規範目的 前端

爲提升團隊協做效率, 便於後臺人員添加功能及前端後期優化維護, 輸出高質量的文檔, 特制訂此文檔. 本規範文檔一經確認, 前端開發人員必須按本文檔規範進行前臺頁面開發. 本文檔若有不對或者不合適的地方請及時提出, 經討論決定後方可更改. html5

基本準則 jquery

符合web標準, 語義化html, 結構表現行爲分離, 兼容性優良. 頁面性能方面, 代碼要求簡潔明瞭有序, 儘量的減少服務器負載, 保證最快的解析速度. css3

文件規範 web

1. html, css, js, images文件均歸檔至<系統開發規範>約定的目錄中; 後端

2. html文件命名: 英文命名, 後綴.htm. 同時將對應界面稿放於同目錄中, 若界面稿命名爲中文, 請重命名與html文件同名, 以方便後端添加功能時查找對應頁面; 服務器

3. css文件命名: 英文命名, 後綴.css. 共用base.css, 首頁index.css, 其餘頁面依實際模塊需求命名.; cookie

4. Js文件命名: 英文命名, 後綴.js. 共用common.js, 其餘依實際模塊需求命名.

html書寫規範

1. 文檔類型聲明及編碼: 統一爲html5聲明類型<!DOCTYPE html>; 編碼統一爲<meta charset=」utf-8″ />, 書寫時利用IDE實現井井有條的縮進;

2. 非特殊狀況下樣式文件必須外鏈至<head>…</head>之間;非特殊狀況下JavaScript文件必須外鏈至頁面底部;

3. 引入樣式文件或JavaScript文件時, 須略去默認類型聲明, 寫法以下:

<link rel=」stylesheet」 href=」…」 />

<style>…</style>

<script src=」…」></script>

4. 引入JS庫文件, 文件名須包含庫名稱及版本號及是否爲壓縮版, 好比jquery-1.4.1.min.js; 引入插件, 文件名格式爲庫名稱+插件名稱, 好比jQuery.cookie.js;

5. 全部編碼均遵循xhtml標準, 標籤 & 屬性 & 屬性命名 必須由小寫字母及下劃線數字組成, 且全部標籤必須閉合, 包括br (<br />), hr(<hr />)等; 屬性值必須用雙引號包括;

6. 充分利用無兼容性問題的html自身標籤, 好比span, em, strong, optgroup, label,等等; 須要爲html元素添加自定義屬性的時候, 首先要考慮下有沒有默認的已有的合適標籤去設置, 若是沒有, 可使用須以」data-」爲前綴來添加自定義屬性,避免使用」data:」等其餘命名方式;

7. 語義化html, 如 標題根據重要性用h*(同一頁面只能有一個h1), 段落標記用p, 列表用ul, 內聯元素中不可嵌套塊級元素;

8. 儘量減小div嵌套, 如<div class=」box」&gt;<div class=」welcome」>歡迎訪問XXX, 您的用戶名是<div class=」name」>用戶名</div></div></div>徹底能夠用如下代碼替代: <div class=」box」&gt;<p>歡迎訪問XXX, 您的用戶名是<span>用戶名</span></p></div>;

9. 書寫連接地址時, 必須避免重定向,例如:href=」http://itaolun.com/」, 即須在URL地址後面加上「/」;

10. 在頁面中儘可能避免使用style屬性,即style=」…」;

11. 必須爲含有描述性表單元素(input, textarea)添加label, 如<p>姓名: <input type=」text」 id=」name」 name=」name」 /></p>須寫成:<p><label for=」name」>姓名: </label><input type=」text」 id=」name」 /></p>

12. 能以背景形式呈現的圖片, 儘可能寫入css樣式中;

13. 重要圖片必須加上alt屬性; 給重要的元素和截斷的元素加上title;

14. 給區塊代碼及重要功能(好比循環)加上註釋, 方便後臺添加功能;

15. 特殊符號使用: 儘量使用代碼替代: 好比 <(<) & >(&gt;) & 空格( ) & ?(?) 等等;

16. 書寫頁面過程當中, 請考慮向後擴展性;

17. class & id 參見 css書寫規範.

css書寫規範

1. 編碼統一爲utf-8;

2. 協做開發及分工: i會根據各個模塊, 同時根據頁面類似程序, 事先寫好大致框架文件, 分配給前端人員實現內部結構&表現&行爲; 共用css文件base.css由i書寫, 協做開發過程當中, 每一個頁面請務必都要引入, 此文件包含reset及頭部底部樣式, 此文件不可隨意修改;

3. class與id的使用: id是惟一的並是父級的, class是能夠重複的並是子級的, 因此id僅使用在大的模塊上, class可用在重複使用率高及子級中; id原則上都是由我分發框架文件時命名的, 爲JavaScript預留鉤子的除外;

4. 爲JavaScript預留鉤子的命名, 請以 js_ 起始, 好比: js_hide, js_show;

5. class與id命名: 大的框架命名好比header/footer/wrapper/left/right之類的在2中由i統一命名.其餘樣式名稱由 小寫英文 & 數字 & _ 來組合命名, 如i_comment, fontred, width200; 避免使用中文拼音, 儘可能使用簡易的單詞組合; 總之, 命名要語義化, 簡明化.

6. 規避class與id命名(此條重要, 如有不明白請及時與i溝通):

a, 經過從屬寫法規避, 示例見d;

b, 取父級元素id/class命名部分命名, 示例見d;

c, 重複使用率高的命名, 請以本身代號加下劃線起始, 好比i_clear;

d, a,b兩條, 適用於在2中已建好框架的頁面, 如, 要在2中已建好框架的頁面代碼<div id=」mainnav」></div>中加入新的div元素,

按a命名法則: <div id=」mainnav」><div class=」firstnav」>…</div></div>,

樣式寫法: #mainnav   .firstnav{…….}

按b命名法則: <div id=」mainnav」><div class=」main_firstnav」>…</div></div>,

樣式寫法: .main_firstnav{…….}

7. css屬性書寫順序, 建議遵循 佈局定位屬性–>自身屬性–>文本屬性–>其餘屬性. 此條可根據自身習慣書寫, 但儘可能保證同類屬性寫在一塊兒. 屬性列舉: 佈局定位屬性主要包括: margin & padding & float(包括clear) & position(相應的 top,right,bottom,left) & display & visibility & overflow等; 自身屬性主要包括: width & height & background & border; 文本屬性主要包括: font & color & text-align & text-decoration & text-indent等;其餘屬性包括: list-style(列表樣式) & vertical-vlign & cursor & z-index(層疊順序)  & zoom等. 我所列出的這些屬性只是最經常使用到的, 並不表明所有;

8. 書寫代碼前, 考慮並提升樣式重複使用率;

9. 充分利用html自身屬性及樣式繼承原理減小代碼量, 好比:

<ul class=」list」><li>這兒是標題列表<span>2010-09-15</span></ul>

定義

ul.list li{position:relative}   ul.list li span{position:absolute; right:0}

便可實現日期居右顯示

10. 樣式表中中文字體名, 請務必轉碼成unicode碼, 以免編碼錯誤時亂碼;

11. 背景圖片請儘量使用sprite技術, 減少http請求, 考慮到多人協做開發, sprite按模塊製做;

12. 使用table標籤時(儘可能避免使用table標籤), 請不要用width/ height/cellspacing/cellpadding等table屬性直接定義表現, 應儘量的利用table自身私有屬性分離結構與表現, 如thead,tr,th,td,tbody,tfoot,colgroup,scope; (cellspaing及cellpadding的css控制方法: table{border:0;margin:0;border-collapse:collapse;} table th, table td{padding:0;} , base.css文件中我會初始化表格樣式)

13. 杜絕使用<meta http-equiv=」X-UA-Compatible」 content=」IE=7″ /> 兼容ie8;

14. 用png圖片作圖片時, 要求圖片格式爲png-8格式,若png-8實在影響圖片質量或其中有半透明效果, 請爲ie6單獨定義背景:

_background:none;_filter:progid:DXImageTransform.Microsoft.AlphaImageLoader(sizingMethod=crop, src=’img/bg.png’);

15. 避免兼容性屬性的使用, 好比text-shadow || css3的相關屬性;

16. 減小使用影響性能的屬性, 好比position:absolute || float ;

17. 必須爲大區塊樣式添加註釋, 小區塊適量註釋;

18. 代碼縮進與格式: 建議單行書寫, 可根據自身習慣, 後期優化i會統一處理;

JavaScript書寫規範

1. 文件編碼統一爲utf-8, 書寫過程過, 每行代碼結束必須有分號; 原則上全部功能均根據XXX項目需求原生開發, 以免網上down下來的代碼形成的代碼污染(沉冗代碼 || 與現有代碼衝突 || …);

2. 庫引入: 原則上僅引入jQuery庫, 若需引入第三方庫, 須與團隊其餘人員討論決定;

3. 變量命名: 駝峯式命名. 原生JavaScript變量要求是純英文字母, 首字母須小寫, 如iTaoLun;

jQuery變量要求首字符爲’_', 其餘與原生JavaScript 規則相同, 如: _iTaoLun;

另, 要求變量集中聲明, 避免全局變量.

4. 類命名: 首字母大寫, 駝峯式命名. 如 ITaoLun;

5. 函數命名: 首字母小寫駝峯式命名. 如iTaoLun();

6. 命名語義化, 儘量利用英文單詞或其縮寫;

7. 儘可能避免使用存在兼容性及消耗資源的方法或屬性, 好比eval() & innerText;

8. 後期優化中, JavaScript非註釋類中文字符須轉換成unicode編碼使用, 以免編碼錯誤時亂碼顯示;

9. 代碼結構明瞭, 加適量註釋. 提升函數重用率;

10. 注重與html分離, 減少reflow, 注重性能.

圖片規範

1. 全部頁面元素類圖片均放入img文件夾, 測試用圖片放於img/demoimg文件夾;

2. 圖片格式僅限於gif || png || jpg;

3. 命名所有用小寫英文字母 || 數字 || _ 的組合,其中不得包含漢字 || 空格 || 特殊字符;儘可能用易懂的詞彙, 便於團隊其餘成員理解; 另, 命名分頭尾兩部分, 用下劃線隔開, 好比ad_left01.gif || btn_submit.gif;

4. 在保證視覺效果的狀況下選擇最小的圖片格式與圖片質量, 以減小加載時間;

5. 儘可能避免使用半透明的png圖片(若使用, 請參考css規範相關說明);

6. 運用css sprite技術集中小的背景圖或圖標, 減少頁面http請求, 但注意, 請務必在對應的sprite psd源圖中劃參考線, 並保存至img目錄下.

註釋規範

1. html註釋: 註釋格式 <!–這兒是註釋–>, ’–’只能在註釋的始末位置,不可置入註釋文字區域;

2. css註釋: 註釋格式 /*這兒是註釋*/;

3. JavaScript註釋, 單行註釋使用’//這兒是單行註釋’ ,多行註釋使用 /* 這兒有多行註釋 */;

開發及測試工具約定

建議使用Aptana || Dw || Vim , 亦可根據本身喜愛選擇, 但須遵循以下原則:

1. 不可利用IDE的視圖模式’畫’代碼;

2. 不可利用IDE生成相關功能代碼, 好比Dw內置的一些功能js;

3. 編碼必須格式化, 好比縮進;

測試工具: 前期開發僅測試FireFox & IE6 & IE7 & IE8 , 後期優化時加入Opera & Chrome;

建議測試順序: FireFox–>IE7–>IE8–>IE6–>Opera–>Chrome, 建議安裝firebug及IE Tab Plus插件.

其餘規範

1. 開發過程當中嚴格按分工完成頁面, 以提升css複用率, 避免重複開發;

2. 減少沉冗代碼, 書寫全部人均可以看的懂的代碼. 簡潔易懂是一種美德. 爲用戶着想, 爲服務器着想

http://www.cnblogs.com/baiboy

相關文章
相關標籤/搜索