Dokumentace kódu pomocí AI

AI-Assisted Coding for Developers

Francesca Donadoni

AI Curriculum Manager, DataCamp

Generování docstringů pomocí AI

81.png

AI-Assisted Coding for Developers

Generování docstringů pomocí AI

  • Uživatelský dotaz: Napiš docstring pro tuto funkci
   def sales_trend(self):
       ...        
       if increasing > decreasing:
           return "Increasing trend"
       else:
           return "Decreasing or stable trend"
  • Odpověď modelu:
     def sales_trend(self):
         """Analyze sales data to determine the overall trend"""
         [...]
    
AI-Assisted Coding for Developers

Generování docstringů pomocí AI

  • Uživatelský dotaz: Vygeneruj docstring pro tuto funkci, který obsahuje:

    • Stručné vysvětlení, co funkce dělá.
    • Popis každého parametru a jeho typu.
    • Popis návratové hodnoty a jejího typu.
  • Odpověď modelu:

Zde je kompletní docstring, který můžete použít pro svou funkci:

def sales_trend(self):
    """
    Analyze the sales data to determine whether there is an increasing trend 
    or a decreasing/stable trend over time.
    [...]
    """
AI-Assisted Coding for Developers

Generování docstringů pomocí AI

Zde je kompletní docstring, který můžete použít pro svou funkci:

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.
    [...]
    """
AI-Assisted Coding for Developers

Přizpůsobení stylům dokumentace

82.png

AI-Assisted Coding for Developers

Přizpůsobení stylům dokumentace

83.png

AI-Assisted Coding for Developers

Shrnutí kódu do souborů README

84.png

AI-Assisted Coding for Developers

Shrnutí kódu do souborů README

  • Uživatelský dotaz: Vygeneruj soubor README ve formátu Markdown, který vysvětluje třídu SalesAnalyzer a její metody. Přidej ukázku kódu, která uživatelům pomůže analyzovat trend prodejů za náhodné období.
  • Odpověď modelu:

Zde je připravený návrh souboru README.md pro vaši třídu SalesAnalyzer:

SalesAnalyzer

Třída SalesAnalyzer poskytuje jednoduchý způsob, jak analyzovat denní prodejní data a zjistit, zda trend prodejů obecně roste nebo klesá/stagnuje. Tento nástroj může být užitečný pro firmy i jednotlivce, kteří chtějí rychlý přehled o výkonnosti svých prodejů v čase.

AI-Assisted Coding for Developers

Zprávy commitů z rozdílů kódu

85.png

AI-Assisted Coding for Developers

Zprávy commitů z rozdílů kódu

  • Uživatelský dotaz: Napiš smysluplnou zprávu commitu na základě tohoto 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) 
AI-Assisted Coding for Developers

Automatizace poznámek k vydání

86.png

AI-Assisted Coding for Developers

Další případy použití

87.png

AI-Assisted Coding for Developers

Pojďme si procvičit!

AI-Assisted Coding for Developers

Preparing Video For Download...