Home IMyInterface.cs
1    /******************************************************************************
2        Style Guidelines:
3            * Readability - code is easy to read and to understand
4            * Standardisation - all team members are aligned with same code style
5            * Self-descriptive code - code is easy to understand without comments
6            * Debuggable - code is easy to debug (IDE friendly)
7     ******************************************************************************/
8    
9    // using (imports) of other namespaces will be wrapped with region "Using"
10   #region Using
11   using MyNameSpace.Delegates;
12   #endregion
13   
14   // types are defined within the scope of namespace
15   // space name starts with Upper case letter
16   // each following word starts with upper Case letter
17   // sub-spaces are divided by '.' (dot)
18   // here "MyNameSpace" is main space and "Interfaces" is sub-space
19   namespace MyNameSpace.Interfaces
20   {
21       /// <summary>
22       /// type name starts with Upper case letter
23       /// each following word starts with Upper case letter
24       /// <remarks>
25       /// type = class, enum, struct, delegate. interface, etc
26       /// </remarks>
27       /// </summary>
28       public interface IMyInterface
29       {
30           /// <summary>
31           /// public event name starts with Upper case letter
32           /// each following word starts with Upper case letter
33           /// </summary>
34           event MyDelegate MyEvent;
35   
36           /// <summary>
37           /// property name starts with Upper case letter
38           /// each following word starts with Upper case letter
39           /// <remarks>
40           /// getter or setter will be defined if public access is necessary
41           /// </remarks>
42           /// </summary>
43           int MyIntProperty { get; }
44   
45           /// <summary>
46           /// method name starts with Upper case letter
47           /// each following word starts with Upper case letter
48           /// </summary>
49           /// <param name="numericValue">
50           /// parameter name starts with lower case letter
51           /// each following word starts with Upper case letter
52           /// </param>
53           void MyMethod(int numericValue);
54       }
55   }