Documentarea codului cu AI

Programare asistată de AI pentru dezvoltatori

Francesca Donadoni

AI Curriculum Manager, DataCamp

Generarea docstring-urilor cu AI

81.png

Programare asistată de AI pentru dezvoltatori

Generarea docstring-urilor cu AI

  • Prompt utilizator: Scrieți un docstring pentru această funcție
   def sales_trend(self):
       ...        
       if increasing > decreasing:
           return "Increasing trend"
       else:
           return "Decreasing or stable trend"
  • Răspunsul modelului:
     def sales_trend(self):
         """Analyze sales data to determine the overall trend"""
         [...]
    
Programare asistată de AI pentru dezvoltatori

Generarea docstring-urilor cu AI

  • Prompt utilizator: Generați un docstring pentru această funcție care să includă:

    • O explicație simplă a ceea ce face funcția.
    • O descriere a fiecărui parametru și a tipului său.
    • O descriere a valorii returnate și a tipului său.
  • Răspunsul modelului:

Iată un docstring complet pe care îl puteți utiliza pentru funcția dumneavoastră:

def sales_trend(self):
    """
    Analyze the sales data to determine whether there is an increasing trend 
    or a decreasing/stable trend over time.
    [...]
    """
Programare asistată de AI pentru dezvoltatori

Generarea docstring-urilor cu AI

Iată un docstring complet pe care îl puteți utiliza pentru funcția dumneavoastră:

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.
    [...]
    """
Programare asistată de AI pentru dezvoltatori

Adaptarea la stiluri de documentare

82.png

Programare asistată de AI pentru dezvoltatori

Adaptarea la stiluri de documentare

83.png

Programare asistată de AI pentru dezvoltatori

Rezumarea codului în fișiere README

84.png

Programare asistată de AI pentru dezvoltatori

Rezumarea codului în fișiere README

  • Prompt utilizator: Generați un fișier README în Markdown care explică clasa SalesAnalyzer și metodele sale. Includeți un fragment de cod exemplu pentru a ajuta utilizatorii să analizeze tendința vânzărilor pe o perioadă aleatorie.
  • Răspunsul modelului:

Iată un draft finalizat README.md pentru clasa dumneavoastră SalesAnalyzer:

SalesAnalyzer

Clasa SalesAnalyzer oferă o modalitate simplă de a analiza datele de vânzări zilnice și de a detecta dacă tendința vânzărilor este în general crescătoare sau descrescătoare/stabilă. Acest instrument poate fi util pentru companii sau persoane care doresc o privire de ansamblu rapidă asupra performanței vânzărilor în timp.

Programare asistată de AI pentru dezvoltatori

Mesaje de commit din diferențe de cod

85.png

Programare asistată de AI pentru dezvoltatori

Mesaje de commit din diferențe de cod

  • Prompt utilizator: Scrieți un mesaj de commit relevant pentru această diferență 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) 
Programare asistată de AI pentru dezvoltatori

Automatizarea notelor de lansare

86.png

Programare asistată de AI pentru dezvoltatori

Alte cazuri de utilizare

87.png

Programare asistată de AI pentru dezvoltatori

Să exersăm!

Programare asistată de AI pentru dezvoltatori

Preparing Video For Download...