Документування коду за допомогою ШІ

Кодування з підтримкою ШІ для розробників

Francesca Donadoni

AI Curriculum Manager, DataCamp

Створення docstring за допомогою ШІ

81.png

Кодування з підтримкою ШІ для розробників

Створення docstring за допомогою ШІ

  • User prompt: Напишіть docstring для цієї функції
   def sales_trend(self):
       ...        
       if increasing > decreasing:
           return "Increasing trend"
       else:
           return "Decreasing or stable trend"
  • Model's response:
     def sales_trend(self):
         """Analyze sales data to determine the overall trend"""
         [...]
    
Кодування з підтримкою ШІ для розробників

Створення docstring за допомогою ШІ

  • User prompt: Згенеруйте docstring для цієї функції, що містить:

    • Просте пояснення, що робить функція.
    • Опис кожного параметра та його типу.
    • Опис значення, що повертається, та його типу.
  • Model's response:

Ось повний docstring, який ви можете використати для своєї функції:

def sales_trend(self):
    """
    Analyze the sales data to determine whether there is an increasing trend 
    or a decreasing/stable trend over time.
    [...]
    """
Кодування з підтримкою ШІ для розробників

Створення docstring за допомогою ШІ

Ось повний docstring, який ви можете використати для своєї функції:

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.
    [...]
    """
Кодування з підтримкою ШІ для розробників

Адаптація до стилів документації

82.png

Кодування з підтримкою ШІ для розробників

Адаптація до стилів документації

83.png

Кодування з підтримкою ШІ для розробників

Переказ коду у README

84.png

Кодування з підтримкою ШІ для розробників

Переказ коду у README

  • User prompt: Згенеруйте файл README у Markdown, який пояснює клас SalesAnalyzer і його методи. Додайте зразок коду, щоб допомогти користувачам проаналізувати тренд продажів за випадковий період.
  • Model's response:

Ось доопрацьований чернетковий README.md для вашого класу SalesAnalyzer:

SalesAnalyzer

Клас SalesAnalyzer забезпечує простий спосіб аналізувати щоденні продажі та визначати, чи тренд загалом зростає, чи знижується/стабільний. Інструмент корисний для бізнесу або окремих користувачів, яким потрібен швидкий огляд динаміки продажів у часі.

Кодування з підтримкою ШІ для розробників

Повідомлення про коміти з code diff

85.png

Кодування з підтримкою ШІ для розробників

Повідомлення про коміти з code diff

  • User prompt: Напишіть інформативне повідомлення коміту для цього 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) 
Кодування з підтримкою ШІ для розробників

Автоматизація нотаток про релізи

86.png

Кодування з підтримкою ШІ для розробників

Інші варіанти використання

87.png

Кодування з підтримкою ШІ для розробників

Давайте потренуємось!

Кодування з підтримкою ШІ для розробників

Preparing Video For Download...