Друкарня від WE.UA

Як я написав своє перше розширення до Azure Data Studio і до чого тут ChatGPT

GitHub проєкту

Ідея

Коли ти працюєш над великим проєктом де представлення (View) баз даних використовуються повсюдно, навіть незначна зміна таблиці часом несе за собою неприємні наслідки. Видалення чи заміна стовпця може призвести до того, що представлення перестануть працювати. Іноді про це дізнаєшся вже як “фіча“ пішла у реліз. Коли я черговий раз зіштовхнувся з подібною проблемою, я і вирішив написати розширення, яке б полегшило пошук залежних представлень.

Ідея проста: користувач клацає на табличку чи на представлення правою клавішею миші і в випадаючому меню вибирає “покажи всі залежності”, після цього виконується скрипт, результатом якого є список всіх представлень де використовується вибраний елемент.

Реалізація

Я не буду тут поглиблюватися в технічну сторону реалізації, а тільки стисло опишу порядок дій та як мені допоміг в цьому ChatGPT, зрештою готовий проєкт можна знайти на GitHub.

Перше що я зробив, це пішов в ChatGPT і попросив написати мені скрипт, який би показував всі представлення які залежать від певної таблички. І ChatGPT впорався з цим на відмінно.

З готовим скриптом, що дістався мені без особливих зусиль, я пішов шукати, як мені створити своє розширення для Azure Data Studio. На щастя це зробити дуже легко і Microsoft надає зручну покрокову інструкцію.

Та подальші кроки виявилися вже не такими легкими. Першим викликом було додання нової позиції до випадаючого меню. Я раніше не мав справи з написанням розширень ні до Visual Studio Code, ні до Azure Data Studio. То ж я пішов шукати інформацію в документації від Microsoft. Та в тих матеріалах які представленні в Інтернеті знайти те що мене цікавило було доволі складно, то ж я знову звернувся до ChatGPT. І тут він мене теж не підвів 😁 та показав всю потрібну мені інформацію.

Далі лишалося написати логіку відкриття нового вікна і запуску скрипту. І перша ж моя ідея була знову делегувати цю задачу ChatGPT, але тут ШІ не впорався та генерував якусь маячню. Тож довелося працювати самому 😢.

Методом проб та помилок, зрештою, вдалося досягти жаданого результату. Останнім кроком був рефакторинг коду і тести, з написанням яких ChatGPT впорався без особливих проблем. Мені лишалося тільки їх скоригувати під власні потреби. Варто зазначити, що ChatGPT добре розуміє всі можливі успішні та провальні випадки та пише під них окремий тест, що значно заощаджує час.

Висновки

Результатом роботи я лишився задоволений, ChatGPT теж. Для мене рішення від OpenAI вже стало незамінним помічником і економить багато часу на рутинних задачах. Звісно ж варто розуміти, що бездумний копіпаст коду до добра не доведе, але при правильному підході це чудовий інструмент, який раджу спробувати кожному/кожній.

Статті про вітчизняний бізнес та цікавих людей:

Поділись своїми ідеями в новій публікації.
Ми чекаємо саме на твій довгочит!
Петро Копил
Петро Копил@p.kopyl

👨‍💻 Розробник .NET

4Довгочити
395Перегляди
8Підписники
Підтримати
На Друкарні з 15 квітня 2023

Більше від автора

Це також може зацікавити:

  • З чого починаються зміни?

    На мою думку, не менш сумним є проживання життя себе минулого, замість свого теперішнього. Й я не кажу про сум за минулим, тягар роздумів, жалю та помилок (тут кожен сам вирішує, скільки він готовий тягти на своїх плечах), а про відповіді на досить прості запитання...

    Теми цього довгочиту:

    Психологія
  • До коле?

    Знову вибори, знову все йде неправильно. Чому ми продовжуємо бути пасажирами і чекати, що хтось «зверху» все виправить? Жорсткі роздуми про те, коли ми самі дозволяємо хаосу і що буде, якщо нарешті взяти штурвал у руки. (Читати далі)

    Теми цього довгочиту:

    Роздуми
  • Коли лусне корпоративна бульбашка

    Ця стаття призначена для людей, які володіють просунутими навичками програмування та мають щонайменше один рік досвіду роботи в індустрії. Вона має на меті пролити світло на критичні аспекти, які професіонали такого рівня повинні враховувати для подальшого розвитку своєї кар'єри.

    Теми цього довгочиту:

    Програмування

Коментарі (2)

Цілком погоджуюсь, ChatGPT дуже допомагає в роботі, але потрібно розуміти коли він зможе допомогти, а коли його відповіді будуть не потрібні. Особисто для мене це більше як альтернативний погляд на мою проблему і одне з тисяч вирішень її.

Це також може зацікавити:

  • З чого починаються зміни?

    На мою думку, не менш сумним є проживання життя себе минулого, замість свого теперішнього. Й я не кажу про сум за минулим, тягар роздумів, жалю та помилок (тут кожен сам вирішує, скільки він готовий тягти на своїх плечах), а про відповіді на досить прості запитання...

    Теми цього довгочиту:

    Психологія
  • До коле?

    Знову вибори, знову все йде неправильно. Чому ми продовжуємо бути пасажирами і чекати, що хтось «зверху» все виправить? Жорсткі роздуми про те, коли ми самі дозволяємо хаосу і що буде, якщо нарешті взяти штурвал у руки. (Читати далі)

    Теми цього довгочиту:

    Роздуми
  • Коли лусне корпоративна бульбашка

    Ця стаття призначена для людей, які володіють просунутими навичками програмування та мають щонайменше один рік досвіду роботи в індустрії. Вона має на меті пролити світло на критичні аспекти, які професіонали такого рівня повинні враховувати для подальшого розвитку своєї кар'єри.

    Теми цього довгочиту:

    Програмування