Використання ШІ у вашому щоденному робочому процесі розробника
ШІ не замінює інженерне мислення. Він скорочує час між моментом, коли ви зайшли в глухий кут, і пошуком рішення.
Перестаньте просити ШІ «зробити код кращим». Замість цього використовуйте ці п'ять практичних методів.
- Пошук вузьких місць у продуктивності Використовуйте ШІ для створення чек-листів для ваших аудитів. Запитуйте конкретні показники, такі як:
- Кількість викликів бази даних
- Мережеві «водоспади» (waterfalls)
- Розмір бандлів
- RUM та часові показники сервера
- Показники Lighthouse
- Генерація неочікуваних тест-кейсів Надайте ШІ сигнатуру функції або специфікацію. Запитуйте про:
- Граничні випадки
- Незвичайні вхідні дані
- Стан гонитви (race conditions)
- Ідеї для тестування на основі властивостей (property-based testing) Перетворюйте ці пропозиції на реальні тести, щоб підвищити надійність.
- Рефакторинг із обмеженнями Нечіткі промпти призводять до поганого коду. Використовуйте конкретні інструкції:
- «Зменш цикломатичну складність, не змінюючи поведінку».
- «Винеси чисті функції та зроби побічні ефекти явними».
- «Залиш публічний API незмінним, але покращ іменування». Обмеження полегшують перевірку результату.
- Запитуйте пояснення з урахуванням контексту ШІ допомагає навчатися швидше, якщо ви надаєте деталі свого проєкту. Запитуйте:
- «Чому цей рендеринг React відбувається двічі в StrictMode?»
- «Виходячи з цього плану SQL-запиту, у чому причина затримки?»
- «Де мені варто розмістити цю валідацію в цій конкретній кодовій базі?»
- Дотримуйтесь циклу валідації ШІ часто видає невірні деталі з високою впевненістю. Дотримуйтесь цих правил:
- Якщо воно компілюється — протестуйте його.
- Якщо це стосується безпеки — перевірте двічі.
- Якщо воно стверджує факт — перевірте джерело.
Використовуйте цей шаблон промпту для кращих результатів:
- Goal (Мета): Чого ви хочете досягти.
- Context (Контекст): Ваша мова та фреймворк.
- Input (Вхідні дані): Ваш код, логи або помилки.
- Output format (Формат виводу): Списки, кроки або diff.
- Constraints (Обмеження): Продуктивність, читабельність або відсутність нових залежностей.
Приклад: Goal: Зменшити затримку API. Context: Node.js та Postgres. Input: Код ендпоінту та запит. Output: Список із 5 покращень. Constraints: Жодних змін схеми в цьому спринті.
Як ви використовуєте ШІ у своїй щоденній роботі?
Джерело: https://dev.to/imkrunal/using-ai-in-your-daily-dev-workflow-without-the-hype-57b1
Додаткова спільнота для навчання: https://t.me/GyaanSetuAi
