diff options
Diffstat (limited to 'conventions.md')
-rw-r--r-- | conventions.md | 41 |
1 files changed, 41 insertions, 0 deletions
diff --git a/conventions.md b/conventions.md new file mode 100644 index 0000000..875292f --- /dev/null +++ b/conventions.md | |||
@@ -0,0 +1,41 @@ | |||
1 | Coding conventions | ||
2 | ================== | ||
3 | |||
4 | This document contains some syntactic and code format conventions for the current project and should be used as a | ||
5 | reference to enhance code uniformity. | ||
6 | |||
7 | |||
8 | Formatting | ||
9 | ---------- | ||
10 | |||
11 | Sources are formatted as defined in the `EPFL-PPO.xml` Eclipse format file. | ||
12 | |||
13 | |||
14 | Members ordering | ||
15 | ---------------- | ||
16 | |||
17 | Class (static) members are placed before object members. In each group, attributes are placed before methods. | ||
18 | Constructors are the first methods, and overridden parent methods the last ones. | ||
19 | |||
20 | |||
21 | Object/Class reference | ||
22 | ---------------------- | ||
23 | |||
24 | Methods and attributes are referenced using `this` for the current class, and by their class name for static | ||
25 | ones. | ||
26 | |||
27 | Static imports are avoided, except for JUnit tests. | ||
28 | |||
29 | |||
30 | Redundant type/scope | ||
31 | -------------------- | ||
32 | |||
33 | Use of the diamond notation is encouraged to avoid redundancy. | ||
34 | |||
35 | Unnecessary scope modifiers are avoided (ex: `public` in interfaces). | ||
36 | |||
37 | |||
38 | Unnecessary brackets | ||
39 | -------------------- | ||
40 | |||
41 | Unnecessary brackets in one to two line statements are avoided to simplify the reading of the control flow. | ||