You cannot select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
	
	
		
			43 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Markdown
		
	
			
		
		
	
	
			43 lines
		
	
	
		
			1.3 KiB
		
	
	
	
		
			Markdown
		
	
| MPStuBS - Multiprozessor Studenten Betriebssystem
 | |
| =================================================
 | |
| 
 | |
| Coding Guidelines
 | |
| -----------------
 | |
| 
 | |
| Similar to [Google C++ Style Guide](https://google.github.io/styleguide/cppguide.html) but with following exceptions:
 | |
|  - No license boilerplate
 | |
|  - *Tabs* instead of *Spaces*
 | |
|  - Line length of 120 characters
 | |
|  - `#pragma once` instead of `#include` guards
 | |
| 
 | |
| The code should be *self-documenting*, don't state the obvious!
 | |
| However, this does not make comments superfluous:
 | |
| Since good naming is sometimes not enough, more advanced parts need to be documented,
 | |
| so any operating system developer should be able to easily understand your code.
 | |
| 
 | |
| ### Naming Convention
 | |
| 
 | |
|  - **Variables**: lowercase with underscore
 | |
| 
 | |
|        char* variable_name;
 | |
| 
 | |
|  - **Constants** (and **enum** values): uppercase with underscore
 | |
| 
 | |
|        const int CONST_VALUE = 42;
 | |
| 
 | |
|  - **Type Names** (`class`/`struct`/`namespace`/`enum`): Capital letter, camel case
 | |
| 
 | |
|        class SomeClassName;
 | |
| 
 | |
|  - **Methods/Functions** (C++): start with lowercase letter, then camel case
 | |
| 
 | |
|        void someFunctionName();
 | |
| 
 | |
|  - **extern "C" Functions**: lowercase with underscore (like variables).
 | |
| 
 | |
|        void interrupt_handler(int vector);
 | |
| 
 | |
|  - **File Names**: lowercase, main type name, underscores only if is a sub type
 | |
| 
 | |
|        folder/classname.cc
 |