C# CheckList
C# CheckList
5 Are upper case letters for acronyms that are two Yes Medium
characters long or less and Pascal casing with
acronyms containing three or more characters.
For example:
System.IO
System.Web.UI
System.CodeDom
12 Are derived class names suffixed with the most Yes Low
meaningful base class names?
uniqueness?
19 Are all property’s created with the same name Yes Low
as the underlying type?
_________________________________________________________________________________________________
Note: If any of the items is marked complementary to the expected result, the item shall be recorded as a defect in the
Inspection / Review report.
Microsoft Code Review Checklist for C#
Version 1.0 PAGE 3 of 11
_________________________________________________________________________________________________
Note: If any of the items is marked complementary to the expected result, the item shall be recorded as a defect in the
Inspection / Review report.
Microsoft Code Review Checklist for C#
Version 1.0 PAGE 4 of 11
50 Does the code resemble the design doc or the Yes Medium
programmer implemented with a different logic
to carry out the same activity?
[This is to ensure the implementation logic. If
the reviewer sees a great difference in logic that
will be definitely brought out; in such case either
the design or code may have to undergo a
change.]
_________________________________________________________________________________________________
Note: If any of the items is marked complementary to the expected result, the item shall be recorded as a defect in the
Inspection / Review report.
Microsoft Code Review Checklist for C#
Version 1.0 PAGE 5 of 11
un-managed code?
_________________________________________________________________________________________________
Note: If any of the items is marked complementary to the expected result, the item shall be recorded as a defect in the
Inspection / Review report.
Microsoft Code Review Checklist for C#
Version 1.0 PAGE 6 of 11
_________________________________________________________________________________________________
Note: If any of the items is marked complementary to the expected result, the item shall be recorded as a defect in the
Inspection / Review report.
Microsoft Code Review Checklist for C#
Version 1.0 PAGE 7 of 11
_________________________________________________________________________________________________
Note: If any of the items is marked complementary to the expected result, the item shall be recorded as a defect in the
Inspection / Review report.
Microsoft Code Review Checklist for C#
Version 1.0 PAGE 8 of 11
_________________________________________________________________________________________________
Note: If any of the items is marked complementary to the expected result, the item shall be recorded as a defect in the
Inspection / Review report.
Microsoft Code Review Checklist for C#
Version 1.0 PAGE 9 of 11
111 Are there ‘Try/Finally’ blocks used around the Yes High
codes that can potentially generate any
exception?
112 Is the Lock() statement used a lot and can the No High
use of the statement be avoided?
113 If more than one thread is accessing a common No High
resource like an array or a handle, is the code
that is accessing that resource within the scope
of a lock statement?
114 Is the thread method Static with a static thread No High
state?
_________________________________________________________________________________________________
Note: If any of the items is marked complementary to the expected result, the item shall be recorded as a defect in the
Inspection / Review report.
Microsoft Code Review Checklist for C#
Version 1.0 PAGE 10 of 11
Appendix 1
Type Case
Class PascalCase
Event PascalCase
Interface PascalCase
Method PascalCase
Namespace PascalCase
Property PascalCase
Parameter camelCase
Appendix 2:
AddHandler AddressOf Alias And Ansi
As Assembly Auto Base Boolean
ByRef Byte ByVal Call Case
Catch CBool CByte CChar CDate
CDec CDbl Char CInt Class
CLng CObj Const CShort CSng
CStr CType Date Decimal Declare
Default Delegate Dim Do Double
Each Else ElseIf End Enum
Erase Error Event Exit ExternalSource
False Finalize Finally Float
For Friend Function Get GetType
Goto Handles If Implements Imports
In Inherits Integer Interface Is
Let Lib Like Long Loop
Me Mod Module MustInherit MustOverride
MyBase MyClass Namespace New Next
Not Nothing NotInheritable NotOverridable Object
On Option Optional Or Overloads
Overridable Overrides ParamArray Preserve Private
Property Protected Public RaiseEvent ReadOnly
ReDim Region REM RemoveHandler Resume
Return Select Set Shadows Shared
Short Single Static Step Stop
String Structure Sub SyncLock Then
Throw To True Try TypeOf
Unicode Until volatile When While
With WithEvents WriteOnly Xor
References:
S.NO Topics Reference URL
_________________________________________________________________________________________________
Note: If any of the items is marked complementary to the expected result, the item shall be recorded as a defect in the
Inspection / Review report.
Microsoft Code Review Checklist for C#
Version 1.0 PAGE 11 of 11
_________________________________________________________________________________________________
Note: If any of the items is marked complementary to the expected result, the item shall be recorded as a defect in the
Inspection / Review report.