Update 'Coding Style'

Patrick Vogler 2023-06-21 14:29:28 +00:00
parent 54114b5c08
commit 99b02bc28b

@ -9,3 +9,39 @@
<h3 align="center"> <h3 align="center">
Abstract Abstract
</h3> </h3>
<p align="center">
This document discusses practices and style for programmers working on the BigWhoop compression library. The Guidelines are based on the C Coding Style recommended by the GNOME Developer Documentation and should be followed to promote a consistent, readable, and maintainable code base. The Guide offers solutions to common C, python and cmake programming issues and illustrates through examples of code
</p>
## Content
- [The Single Most Important Rule](#the-single-most-important-rule)
- [Formatting](#formatting)
- [Indentation](#indentation)
- [Braces](#braces)
- [Functions](#functions)
- [Derived Types](#derived-types)
- [Comments](#comments)
- [Syntactic Conventions](#syntactic_conventions)
- [Names](#names)
## The Single Most Important Rule
Above all, the following rule from the GNOME developer documentation should always be followed.
>The single most important rule when writing code is this: check the surrounding code and try to imitate it.
>
>As a maintainer it is dismaying to receive a patch that is obviously in a different coding style to the surrounding code. This is disrespectful, like someone tromping into a spotlessly-clean house with muddy shoes.
>
>So, whatever this document recommends, if there is already written code and you are contributing to it, keep its current style consistent even if it is not your favorite style.
>
>Most importantly, do not make your first contribution to a project a change in the coding style to suit your taste. That is incredibly disrespectful.
## Formatting
Keep the length of source code lines to 100 characters or less to ensure maximum readability on most modern monitors with a reasonable font size. Longer lines of code are more difficult to read and understand. Too many indentations should be interpreted as an indication that code restructuring is required.
### Indentation
### Functions
### Derived Types
## Comments
## Syntactic Conventions
## Names