---
# System prepended metadata

title: Convention

---

# Convention

## Objectif
Le but de ce document est de définir une convention de codage qui est utilisée dans ce projet. Le code est effectué en Java.
## Organisation des répertoires de projet

## Convention de nommage
### Variable et méthode
Les noms de fonctions ou méthodes suivent la convention de nommage camelCase. Les fonctions d’accès aux variables internes « protected » ou « private » d’une classe se font en utilisant le préfixe "get" ou "set". Les fonctions d’initialisation commencent par "init" et les fonctions retournant des booléens commencent par "is".
### Classe et interface
Les noms de classes et interfaces suivent la convention de nommage PascalCase.

### Exemple
```java    
public class Stock
{
    private int nombrePommes;
    
    public int getNombrePommes
    {
        return nombrePommes;
    }
    
    public setNombrePommes(int value)
    {
        nombrePommes = value;
    }
    
    public initPommes(int nombrePommes)
    {
        this.nombrePommes = nombrePommes;
    }
    
    public boolean isEmpty()
    {
        if(nombrePommes <= 0)
        {
            return true;
        }
        else
        {
            return false;
        }
    }
}
```
### Constante
Le nom est entièrement écrit en majuscule et s'il est composé de plusieurs mots, ces mots sont séparés par un underscore : 
```java 
final int NOMBRE_DE_POMMES_MAX = 50;
```

## Indentation
La manière d'indenter notre code se fera selon le style Allman. C'est-à-dire : 
```java 
public exemple()
{
    if(...)
    {
        ...
    }
    else
    {
        ...
    }
}
```
