Documenter le code avec l'IA

Programmation assistée par l'IA pour développeurs et développeuses

Francesca Donadoni

AI Curriculum Manager, DataCamp

Génération de docstrings avec l'IA

81.png

Programmation assistée par l'IA pour développeurs et développeuses

Génération de docstrings avec l'IA

  • User prompt : Rédigez une docstring pour cette fonction
   def sales_trend(self):
       ...        
       if increasing > decreasing:
           return "Increasing trend"
       else:
           return "Decreasing or stable trend"
  • Réponse du modèle :
     def sales_trend(self):
         """Analyze sales data to determine the overall trend"""
         [...]
    
Programmation assistée par l'IA pour développeurs et développeuses

Génération de docstrings avec l'IA

  • User prompt : Générez une docstring pour cette fonction qui inclut :

    • Une explication simple de ce que fait la fonction.
    • La description de chaque paramètre et son type.
    • La description de la valeur de retour et son type.
  • Réponse du modèle :

Voici une docstring complète à utiliser pour votre fonction :

def sales_trend(self):
    """
    Analyze the sales data to determine whether there is an increasing trend 
    or a decreasing/stable trend over time.
    [...]
    """
Programmation assistée par l'IA pour développeurs et développeuses

Génération de docstrings avec l'IA

Voici une docstring complète à utiliser pour votre fonction :

def sales_trend(self):
    """
    Analyze the sales data to determine whether there is an increasing trend 
    or a decreasing/stable trend over time.

    Parameters
    ----------
    self : object
        An object that contains an attribute `daily_sales` (list of int or float),
        which represents daily sales values in chronological order.
    [...]
    """
Programmation assistée par l'IA pour développeurs et développeuses

S'adapter aux styles de documentation

82.png

Programmation assistée par l'IA pour développeurs et développeuses

S'adapter aux styles de documentation

83.png

Programmation assistée par l'IA pour développeurs et développeuses

Résumer du code dans des README

84.png

Programmation assistée par l'IA pour développeurs et développeuses

Résumer du code dans des README

  • User prompt : Générez un fichier README en Markdown qui explique la classe SalesAnalyzer et ses méthodes. Incluez un extrait de code pour aider les utilisateurs à analyser la tendance des ventes sur une période aléatoire.
  • Réponse du modèle :

Voici une ébauche soignée de README.md pour votre classe SalesAnalyzer :

SalesAnalyzer

La classe SalesAnalyzer offre un moyen simple d'analyser les ventes quotidiennes et de détecter si la tendance est généralement à la hausse ou en baisse/stable. Cet outil est utile pour les entreprises ou les personnes qui veulent un aperçu rapide et global de la performance des ventes dans le temps.

Programmation assistée par l'IA pour développeurs et développeuses

Messages de commit à partir des diffs de code

85.png

Programmation assistée par l'IA pour développeurs et développeuses

Messages de commit à partir des diffs de code

  • User prompt : Rédigez un message de commit pertinent à partir de ce git diff :
(base) datacamp@test:~/datacamp/docstring-generation$ git diff
+
+        Raises:
+            ValueError: If daily_sales contains non-numeric values.
         """
-        return sum(self.daily_sales)
+        if not all(isinstance(sale, (int, float)) for sale in self.daily_sales):
+            raise ValueError("All sales figures must be numeric.")
+        return sum(sale for sale in self.daily_sales) 
Programmation assistée par l'IA pour développeurs et développeuses

Automatiser les notes de version

86.png

Programmation assistée par l'IA pour développeurs et développeuses

Autres cas d'usage

87.png

Programmation assistée par l'IA pour développeurs et développeuses

Passons à la pratique !

Programmation assistée par l'IA pour développeurs et développeuses

Preparing Video For Download...