Lập trình trong môi trường .NET Nguyên tắc sử dụng .NET Trong bất kỳ ngôn ngữ phát triển thường nảy sinh các kiểu lập trình truyền thống. Những kiểu này không phải là phần của chính ngôn ngữ đó mà nó là những qui tắc như đặt tên biến, phương thức, thuộc tính. Nếu các nhà phát triển đều sử dụng một qui tắc thì chương trình sẽ làm người khác dễ hiểu hơn. Bất cứ nơi đâu với nhiều ngôn ngữ, các quy tắc sử dụng chỉ đưa ra khi ngôn ngữ được sử dụng. Với C# và các ngôn ngữ.NET đã viết một nguyên tắc sử dụng toàn diện trong phần tài liệu MSDN. Những qui tắc đã phát triển với tầm ngắm 20 năm trong lập trình hướng đối tượng và khi một kết quả đã được suy nghĩ cẩn thận và xuất hiện để tiếp đón nhà phát triển dân chúng để xét đoán bởi những nhóm mới. Sau đây là những quy tắc thông dụng trên thế giới: Qui tắc đặt tên: Để làm cho chương trình của bạn dễ hiểu thì phải biết cách chọn tên của các thành phần như biến, phương thức, thuộc tính, lớp, namespace và enumeration. Nếu các tên của các thành phần bạn đặt đều phản ánh mục đích của nó thì chương trình sẽ dễ hiểu. Trong .NET framework tên của biến phải phản ánh mục đích của các thể hiện của biến đó và không trùng với kiểu dữ liệu. Hãy xem một vài điều bạn cần chú ý khi đặt tên: Thể hiện của tên: Trong hầu hết mọi trường hợp chúng ta theo thể hiện của tên trong Pascal. Tức là ký tự đầu tiên của mỗi từ trong tên phải viết hoa. Bạn không nên viết tên dùng các dấu gạch dưới như employee_salary. Trong C#, bạn cũng không nên viết tên của các hằng số điều là ký tự viết hoa. Có vài trường hợp bạn nên sử dụng camel casing. Camel casing cũng như Pascal casing ngoại trừ nó không viết hoa ký tự đầu tiên của từ đầu tiên. Có 2 trường hơp: Tên của mọi thông số nên là camel_cased RecordSale(string salesmanName, int quantity); Bạn nên sử dụng camel casing khi để phân biệt giữa hai thành phần cùng tên: private string employeeName; public string EmployeeName { get { return employeeName; } } Bạn nên sử dụng camel_cased khi khai báo các thành phần private và Pascal cased cho các thành phần public và protected để các lớp khác sử dụng đoạn mã của bạn chỉ thấy những tên kiểu Pascal_cased. Kiểu tên: Bạn nên chắc chắn về kiểu của tên, ví dụ bạn có một phương thức có tên: ShowConfirmationDialog(), thì bạn không nên đặt tên phương thức như sau: ShowDialogWarning(), or WarningDialogShow() mà phải đặt như thế này: ShowWarningDialog(). Tên của Namespace : Tên của namespace thì rất quan trọng để thiết kế cẩn thận nhằm tránh các rủi ro trùng tên với một namspace khác khi ai đó sử dụng. Chú ý tên của namespace chỉ để .NET phân biệt tên của các đối tượng trong những assemblies chia sẽ. Vì thế nếu bạn sử dụng cùng tên namespace cho gói phần mềm như những gói khác và cả hai gói cùng được cài đặt trên một máy thì bạn sẽ gặp một số vấn đề. Microsoft giới thiệu tên của các namespace bắt đầu bằng: <CompanyName>.<TechnologyName> ví dụ: WeaponsOfDestructionCorp.RayGunControllers, or WeaponsOfDestructionCorp.Viruses. Tên và từ khoá: Sau đây là bảng dãy từ khoá và các hàm tiêu chuẩn: Abs Do Loc RGB Add Double Local Right AddHandler Each Lock RmDir AddressOf Else LOF Rnd Alias ElseIf Log RTrim And Empty Long SaveSettings Ansi End Loop Second AppActivate Enum LTrim Seek Append EOF Me Select As Erase Mid SetAttr Asc Err Minute SetException Assembly Error MIRR Shared Atan Event MkDir Shell Auto Exit Module Short Beep Exp Month Sign Binary Explicit MustInherit Sin BitAnd ExternalSource MustOverride Single BitNot False MyBase SLN BitOr FileAttr MyClass Space BitXor FileCopy Namespace Spc Boolean FileDateTime New Split ByRef FileLen Next Sqrt Byte Filter Not Static ByVal Finally Nothing Step Call Fix NotInheritable Stop Case For NotOverridable Str Catch Format Now StrComp CBool FreeFile NPer StrConv CByte Friend NPV Strict CDate Function Null String CDbl FV Object Structure CDec Get Oct Sub ChDir GetAllSettings Off Switch ChDrive GetAttr On SYD Choose GetException Open SyncLock Chr GetObject Option Tab CInt GetSetting Optional Tan Class GetType Or Text Clear GoTo Overloads Then CLng Handles Overridable Throw Close Hex Overrides TimeOfDay Collection Hour ParamArray Timer Command If Pmt TimeSerial Compare IIf PPmt TimeValue Const Implements Preserve To Cos Imports Print Today CreateObject In Private Trim CShort Inherits Property Try CSng Input Public TypeName CStr InStr Put TypeOf CurDir Int PV UBound Date Integer QBColor UCase DateAdd Interface Raise Unicode DateDiff IPmt RaiseEvent Unlock DatePart IRR Randomize Until DateSerial Is Rate Val DateValue IsArray Read Weekday Day IsDate ReadOnly While DDB IsDbNull ReDim Width Decimal IsNumeric Remove With Declare Item RemoveHandler WithEvents Default Kill Rename Write Delegate LCase Replace WriteOnly DeleteSetting Left Reset Xor Dim Lib Resume Year Dir Line Return Công dụng của phương thức và thuộc tính: Một vùng mà có thể dẫn đến hỗn độn là một số lượng cụ thể nên được mô tả bởi một phương thức hay một thuộc tính. Bạn nên mô tả một thuộc tính nếu vài thứ nhìn và cảm thấy giống như một biến: Mã client nên có thể đọc giá trị của nó. Thuộc tính chỉ viết không được giới thiệu. Ví dụ nên sử dụng phương thức setpassword() thay vì thuộc tính chỉ viết password. Việc đọc giá trịn không nên qua dài. Đọc giá trị không nên có bất kỳ kết quả không mong đợi và dễ thấy. Có thể gán thuộc tính ở bất cứ thủtục nào. Đọc liên tục một thuộc tính nên cho cùng một kết quả. Nếu thành phần của bạn thoả mãn tất cả các điểm trên thì nó nên là một thuộc tính. Nhưng trường hợp còn lại là phương thức. Công dụng của trường: Những trường nên luôn luôn private ngoại trừ một số trường hợp như hằng số hay trường chỉ đọc thì nên public. Lý do là khi bạn tạo một trường public sẽ cản trở khả năng để mở rộng chỉnh sửa lớp trong tương lai. . Lập trình trong môi trường .NET Nguyên tắc sử dụng .NET Trong bất kỳ ngôn ngữ phát triển thường nảy sinh các kiểu lập trình truyền thống. Những kiểu này. ngôn ngữ, các quy tắc sử dụng chỉ đưa ra khi ngôn ngữ được sử dụng. Với C# và các ngôn ngữ .NET đã viết một nguyên tắc sử dụng toàn diện trong phần tài liệu MSDN. Những qui tắc đã phát triển với. qui tắc như đặt tên biến, phương thức, thuộc tính. Nếu các nhà phát triển đều sử dụng một qui tắc thì chương trình sẽ làm người khác dễ hiểu hơn. Bất cứ nơi đâu với nhiều ngôn ngữ, các quy tắc