Dokumentowanie kodu z AI

Kodowanie wspomagane przez AI dla programistów

Francesca Donadoni

AI Curriculum Manager, DataCamp

Generowanie docstringów z AI

81.png

Kodowanie wspomagane przez AI dla programistów

Generowanie docstringów z AI

  • Prompt użytkownika: Napisz docstring dla tej funkcji
   def sales_trend(self):
       ...        
       if increasing > decreasing:
           return "Increasing trend"
       else:
           return "Decreasing or stable trend"
  • Odpowiedź modelu:
     def sales_trend(self):
         """Analyze sales data to determine the overall trend"""
         [...]
    
Kodowanie wspomagane przez AI dla programistów

Generowanie docstringów z AI

  • Prompt użytkownika: Wygeneruj docstring dla tej funkcji, który zawiera:

    • Proste wyjaśnienie działania funkcji.
    • Opis każdego parametru i jego typu.
    • Opis wartości zwracanej i jej typu.
  • Odpowiedź modelu:

Oto kompletny docstring, którego możesz użyć dla swojej funkcji:

def sales_trend(self):
    """
    Analyze the sales data to determine whether there is an increasing trend 
    or a decreasing/stable trend over time.
    [...]
    """
Kodowanie wspomagane przez AI dla programistów

Generowanie docstringów z AI

Oto kompletny docstring, którego możesz użyć dla swojej funkcji:

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.
    [...]
    """
Kodowanie wspomagane przez AI dla programistów

Dostosowywanie do stylów dokumentacji

82.png

Kodowanie wspomagane przez AI dla programistów

Dostosowywanie do stylów dokumentacji

83.png

Kodowanie wspomagane przez AI dla programistów

Podsumowywanie kodu w plikach README

84.png

Kodowanie wspomagane przez AI dla programistów

Podsumowywanie kodu w plikach README

  • Prompt użytkownika: Wygeneruj plik README w Markdown opisujący klasę SalesAnalyzer i jej metody. Dodaj przykładowy fragment kodu, który pomoże użytkownikom przeanalizować trend sprzedaży w losowym okresie.
  • Odpowiedź modelu:

Oto dopracowany szkic pliku README.md dla Twojej klasy SalesAnalyzer:

SalesAnalyzer

Klasa SalesAnalyzer umożliwia prostą analizę dziennych danych sprzedażowych i wykrywanie, czy trend sprzedaży jest ogólnie rosnący, czy malejący/stabilny. Narzędzie to może być przydatne dla firm lub osób, które chcą uzyskać szybki, ogólny przegląd wyników sprzedaży w czasie.

Kodowanie wspomagane przez AI dla programistów

Wiadomości commitów z diffów kodu

85.png

Kodowanie wspomagane przez AI dla programistów

Wiadomości commitów z diffów kodu

  • Prompt użytkownika: Napisz znaczącą wiadomość commitu na podstawie tego diffa git:
(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) 
Kodowanie wspomagane przez AI dla programistów

Automatyzowanie notek wydań

86.png

Kodowanie wspomagane przez AI dla programistów

Inne przypadki użycia

87.png

Kodowanie wspomagane przez AI dla programistów

Czas na ćwiczenia!

Kodowanie wspomagane przez AI dla programistów

Preparing Video For Download...