C#事件標(biāo)準(zhǔn)命名規(guī)則及說(shuō)明(包括用作事件類型的委托命名)
C#事件標(biāo)準(zhǔn)命名規(guī)則
一些開源代碼的事件命名很混亂,以此文章用作本人以后工作的參考。
事件的名稱
事件始終是指某個(gè)操作,這個(gè)操作可能正在發(fā)生,也可能已經(jīng)發(fā)生。 因此與方法一樣,事件用謂詞命名,謂詞時(shí)態(tài)用于指示事件引發(fā)的時(shí)間。
? 務(wù)必使用謂詞或謂詞短語(yǔ)來(lái)命名事件。
示例:Clicked、Painting、DroppedDown 等。
? 務(wù)必通過(guò)使用現(xiàn)在時(shí)態(tài)和過(guò)去時(shí)態(tài),讓事件名稱含有時(shí)間先后的概念。
例如,窗口關(guān)閉之前引發(fā)的事件稱為 Closing,窗口關(guān)閉之后引發(fā)的事件稱為 Closed。
X 請(qǐng)勿使用 “Before” 或 “After” 前綴和后綴來(lái)指示事件之前或之后。 應(yīng)按前述使用現(xiàn)在時(shí)態(tài)和過(guò)去時(shí)態(tài)。
? 請(qǐng)使用 “EventHandler” 后綴來(lái)命名事件處理程序(用作事件類型的委托),如以下示例所示:
public delegate void ClickedEventHandler(object sender, ClickedEventArgs e);
? 務(wù)必在事件處理程序中使用兩個(gè)名為 sender 和 e 的參數(shù)。
sender 參數(shù)表示引發(fā)事件的對(duì)象。 sender 參數(shù)的類型通常是 object,且可能會(huì)使用更具體的類型。
? 務(wù)必使用“EventArgs”后綴來(lái)命名事件參數(shù)類。
個(gè)人建議:對(duì)于名稱意義不明的事件可添加Event后綴,盡量少用后綴。
事件觸發(fā)方法的名稱
事件需要有一個(gè)事件觸發(fā)方法,用于檢測(cè)事件是否有綁定的方法,如果有就觸發(fā)事件。直接觸發(fā)事件在事件沒(méi)有綁定方法時(shí)會(huì)引發(fā)空異常。
? 務(wù)必使用“On+事件名稱”來(lái)命名事件觸發(fā)方法。
C#命名規(guī)范、變量、類Class
C#中的命名規(guī)范
1、命名方式
駝峰命名法:變量命名時(shí),首單詞全部小寫,之后單詞首字母大寫。適用于變量的聲明
例如:int imgIndex=0; string txtPersonName="xxx";
帕斯卡命名法:所有單詞的首字母大寫。適用于所有的項(xiàng)目名稱、對(duì)象名稱、方法名稱、屬性名稱
例如:Class BigCar,SmallCar;
2、命名規(guī)則
《1.》 創(chuàng)建項(xiàng)目在學(xué)習(xí)過(guò)程中可以使用中文,但是在工作中嚴(yán)格禁止使用中文、拼音
《2.》 在給項(xiàng)目命名使用帕斯卡命名法(所有的英文單詞首字母大寫)
《3.》 聲明變量等不允許使用特殊符號(hào)(除過(guò)_)、關(guān)鍵字
什么是變量
變量是指在程序執(zhí)行時(shí),將一些數(shù)據(jù)要進(jìn)行臨時(shí)存儲(chǔ),隨著程序的執(zhí)行過(guò)程隨時(shí)隨地需要被使用,這時(shí)需要在程序的運(yùn)行內(nèi)存中開辟一個(gè)空間來(lái)臨時(shí)存放這些數(shù)據(jù),這就是變量的作用
1、如何聲明變量
- [訪問(wèn)修飾符] 數(shù)據(jù)類型 變量名稱=初始值;
- 數(shù)據(jù)類型(值類型和引用類型):規(guī)范了這個(gè)變量空間中允許存放的數(shù)據(jù)的類型
- 變量名稱:可以理解為變量的指針地址,可以通過(guò)變量名稱來(lái)尋找變量中所存放的數(shù)據(jù)
- 初始值:當(dāng)這個(gè)變量被定義時(shí)初次所存儲(chǔ)的數(shù)據(jù)
2、變量的分類
《1.》 全局變量
- 全局變量是指一個(gè)變量的聲明地方直接在Class里面,
- 全局變量聲明周期:從計(jì)算機(jī)開始創(chuàng)建這個(gè)Class對(duì)象則全局變量就被創(chuàng)建,到這個(gè)Class對(duì)象被GC釋放全局變量也被清理
- 變量的作用域:在這個(gè)Class內(nèi)部的任何地方都可以被使用
《2.》局部變量
- 局部變量是指一個(gè)變量的聲明地方在類成員中(方法、事件、語(yǔ)法結(jié)構(gòu)中)
- 局部變量的聲明周期:計(jì)算機(jī)閱讀到變量的聲明代碼則變量被創(chuàng)建,到計(jì)算機(jī)閱讀超出變量的作用域變量被釋放
- 變量的作用域:在其聲明地所在的大括號(hào)內(nèi)部
- 盡可能減少不必要的全局變量,能用局部變量解決的問(wèn)題千萬(wàn)不要使用全局變量,在一個(gè)對(duì)象中的任意地方都有可能用到這個(gè)變量時(shí),才聲明為全局變量
類Class
1、類是什么
- 類指的是一類對(duì)象的統(tǒng)稱,類也是對(duì)象,類是對(duì)象的抽象化
- 在編程中創(chuàng)建對(duì)象,寫出的代碼叫類
2、類如何識(shí)別
- 關(guān)鍵字顏色是淡綠色
- 要么就觀察其類型是Class
3、類如何使用
- 大多數(shù)類在使用時(shí),需要先對(duì)其進(jìn)行實(shí)例化創(chuàng)建一個(gè)新的成員對(duì)象,這個(gè)對(duì)象就具有這個(gè)類的所有功能
- 實(shí)例化的最終結(jié)果是產(chǎn)生一個(gè)這個(gè)類型的新對(duì)象成員
總結(jié)
以上為個(gè)人經(jīng)驗(yàn),希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
C#使用ZBar實(shí)現(xiàn)識(shí)別條形碼
目前主流的識(shí)別庫(kù)主要有ZXing.NET和ZBar,本文主要介紹的是如何使用ZBar庫(kù)實(shí)現(xiàn)識(shí)別條形碼功能,文中的示例代碼講解詳細(xì),感興趣的小伙伴可以了解一下2023-07-07
C#自定義函數(shù)NetxtString生成隨機(jī)字符串
這篇文章主要介紹了C#自定義函數(shù)NetxtString生成隨機(jī)字符串,是十分常見(jiàn)的重要功能,需要的朋友可以參考下2014-08-08
Unity3D動(dòng)態(tài)生成平面網(wǎng)格
這篇文章主要為大家詳細(xì)介紹了Unity3D動(dòng)態(tài)生成平面網(wǎng)格,具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2019-02-02
WPF實(shí)現(xiàn)倒計(jì)時(shí)轉(zhuǎn)場(chǎng)動(dòng)畫效果
這篇文章主要介紹了如何利用WPF實(shí)現(xiàn)倒計(jì)時(shí)轉(zhuǎn)場(chǎng)動(dòng)畫效果,文中的示例代碼講解詳細(xì),對(duì)我們學(xué)習(xí)或工作有一定幫助,需要的可以參考一下2022-08-08

