Dokumentera kod med AI

AI-assisterad kodning för utvecklare

Francesca Donadoni

AI Curriculum Manager, DataCamp

AI-genererade docstrings

81.png

AI-assisterad kodning för utvecklare

AI-genererade docstrings

  • Användarprompt: Skriv en docstring för den här funktionen
   def sales_trend(self):
       ...        
       if increasing > decreasing:
           return "Increasing trend"
       else:
           return "Decreasing or stable trend"
  • Modellens svar:
     def sales_trend(self):
         """Analyze sales data to determine the overall trend"""
         [...]
    
AI-assisterad kodning för utvecklare

AI-genererade docstrings

  • Användarprompt: Generera en docstring för den här funktionen som inkluderar:

    • En enkel förklaring av vad funktionen gör.
    • En beskrivning av varje parameter och dess typ.
    • En beskrivning av returvärdet och dess typ.
  • Modellens svar:

Här är en komplett docstring du kan använda för din funktion:

def sales_trend(self):
    """
    Analyze the sales data to determine whether there is an increasing trend 
    or a decreasing/stable trend over time.
    [...]
    """
AI-assisterad kodning för utvecklare

AI-genererade docstrings

Här är en komplett docstring du kan använda för din funktion:

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-assisterad kodning för utvecklare

Anpassa sig till dokumentationsstilar

82.png

AI-assisterad kodning för utvecklare

Anpassa sig till dokumentationsstilar

83.png

AI-assisterad kodning för utvecklare

Sammanfatta kod i README-filer

84.png

AI-assisterad kodning för utvecklare

Sammanfatta kod i README-filer

  • Användarprompt: Generera en README-fil i Markdown som förklarar klassen SalesAnalyzer och dess metoder. Inkludera ett kodexempel som hjälper användare att analysera försäljningstrenden under en slumpmässig period.
  • Modellens svar:

Här är ett genomarbetat utkast till README.md för klassen SalesAnalyzer:

SalesAnalyzer

Klassen SalesAnalyzer är ett enkelt verktyg för att analysera daglig försäljningsdata och avgöra om försäljningstrenden är generellt stigande eller sjunkande/stabil. Verktyget kan vara användbart för företag eller privatpersoner som vill få en snabb överblick över sin försäljningsutveckling över tid.

AI-assisterad kodning för utvecklare

Commit-meddelanden från koddiff

85.png

AI-assisterad kodning för utvecklare

Commit-meddelanden från koddiff

  • Användarprompt: Skriv ett beskrivande commit-meddelande utifrån denna 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-assisterad kodning för utvecklare

Automatisera release notes

86.png

AI-assisterad kodning för utvecklare

Andra användningsområden

87.png

AI-assisterad kodning för utvecklare

Nu kör vi en övning!

AI-assisterad kodning för utvecklare

Preparing Video For Download...