Aller au contenu

Divers et bonus

·2 mins·
Industrialisation
IndustrialisationProjet - Cet article fait partie d'une série.
Partie 9: Cet article

9. Bonus
#

9.1. Respecter les conventions de codage PEP8
#

Les conventions de codage PEP8 améliorent la lisibilité et la maintenabilité de votre code. Intégrez Flake8 dans votre éditeur de texte ou votre IDE pour obtenir un retour d’information en temps réel sur les violations du PEP8.

pip install flake8
flake8 src/  # Checks src file for PEP8 compliance

Conventions de dénomination, par exemple, conformément à la PEP8 :

  • classes : MyGreatClass. Majuscules au début du mot
  • exceptions : MyGreatError. Similaire aux classes, mais avec une erreur à la fin.
  • fonctions : my_function(). Minuscules et traits de soulignement
  • méthodes : my_method(self). Minuscules, soulignés et self comme premier paramètre
  • variables : ma_variable. Identique aux fonctions
  • constantes : I_WILL_NEVER_CHANGE. Tout en majuscules, avec des traits d’union si nécessaire.

9.2. Écrire un code modulaire et réutilisable
#

Le code modulaire est plus facile à tester, à déboguer et à réutiliser dans différents projets. Utilisez des fonctions et des classes pour encapsuler la logique de l’entreprise. Documentez chaque fonction à l’aide de docstrings.

# src/utils/data_preprocessing.py
def clean_data(df):
    """Cleans data by removing missing values."""
    return df.dropna()

# src/models/train_model.py
def train_model(X, y):
    """Trains a model and returns the model object."""
    from sklearn.ensemble import RandomForestClassifier
    model = RandomForestClassifier()
    model.fit(X, y)
    return model

9.3. Gestion des secrets et des variables d’environnement
#

Les secrets (tels que les clés d’API et les mots de passe) ne doivent jamais être codés en dur dans le code pour des raisons de sécurité.

Outil recommandé : dotenv pour charger les variables d’environnement à partir d’un fichier .env.

Utilisez des gestionnaires de secrets tels que AWS Secrets Manager ou HashiCorp Vault pour stocker et accéder aux secrets en toute sécurité.

# .env
SECRET_KEY=secret_key
DATABASE_URL=postgres://user:password@localhost/dbname
# src/config.py
from dotenv import load_dotenv
import os

load_dotenv()

SECRET_KEY = os.getenv('SECRET_KEY')
DATABASE_URL = os.getenv('DATABASE_URL')

Sources
#

Thibault CLEMENT - Intechnia
Auteur
Thibault CLEMENT - Intechnia
Data scientist
IndustrialisationProjet - Cet article fait partie d'une série.
Partie 9: Cet article