Connect with us

Программирование

ChatGPT для Swift: 5 лучших промптов для генерации кода

Опубликовано

/

     
     

Использование ChatGPT для генерации кода на Swift может значительно повысить вашу производительность. Хотя я не уверен, что ИИ займет место разработчиков, я уверен, что разработчики, не знающие, как использовать ИИ в своих интересах, станут писать код гораздо медленнее.

Сегодня мы рассмотрим несколько моих любимых способов использования ChatGPT для ускорения процесса разработки. Задавая правильные вопросы, вы сможете получить на выходе код, близкий к тому, что вы, скорее всего, ищете. Даже если результат не всегда будет идеальным, это уже шаг в правильном направлении. Давайте приступим!

Общие советы по использованию ChatGPT в Swift

Прежде чем мы перейдем к рассмотрению моих 5 любимых подсказок для ChatGPT, важно рассказать об основных принципах. ChatGPT — это чат-бот с искусственным интеллектом, который будет пытаться ответить на ваши вопросы. Вопрос называется подсказкой (промптом) и может быть любым. Я часто удивляюсь, когда вижу качественный ответ, хотя заранее думал: «Он никак не может на это ответить».

Для начала можно зайти на сайт chatgpt.com и создать учетную запись. Войдя в систему, вы можете начать задавать вопросы, введя свой вопрос. Например, мы можем спросить: «Когда Apple анонсировала Swift?».

ChatGPT для Swift: 5 лучших промптов для генерации кода

Видно, что он отлично справился с ответом на вопрос!

Для вопросов, связанных с кодом, я придерживаюсь нескольких правил, которые помогут вам получить полезные ответы:

  • Упомяните, что вы пишете код на Swift.
  • Предоставьте любой контекст, который у вас есть (например, предысторию, связанный код, определения протоколов или перечислений и т д.)
  • Не сомневайтесь и всегда спрашивайте. Лучше попробовать и получить неправильный ответ, чем заранее предсказать, сможет ли он ответить на ваш вопрос. Вы часто будете удивлены.
  • Всегда проверяйте выходной код на наличие ошибок. ИИ отлично справляется со своей работой, но часто в нем встречаются ошибки или устаревший код.

Учитывая это, давайте рассмотрим 5 моих любимых подсказок при разработке приложений на Swift.

1. Создание структур для заданного JSON

Первая подсказка поможет вам сгенерировать код для заданного JSON. Подсказка выглядит следующим образом:

Результатом будет полезная структура, соответствующая протоколу Codable. Если вы новичок в декодировании JSON в Swift, прочитайте статью “Парсинг JSON в Swift с примерами кода”. В ответе будет даже приведен пример, чтобы попробовать сгенерировать код с помощью декодера JSON. Это отличный пример использования ChatGPT для генерации кода в Swift, чтобы ускорить процесс разработки.

2. Написание модульных тестов для заданного фрагмента кода

Этот вариант часто генерирует больше всего кода из всех подсказок. Также вероятно, что результаты не будут соответствовать вашему стилю кодирования тестов, но это способ быстро начать работу с тестами. Идея заключается в том, чтобы позволить ChatGPT генерировать модульные тесты для заданного фрагмента кода.

Подсказка выглядит следующим образом:

Например, мы можем попросить его написать тесты для следующего фрагмента кода:

Вывод довольно подробный, в общей сложности пять различных юнит-тестов:

Как видите, вы можете прекрасно использовать ChatGPT для генерации юнит-тестов Swift.

2.1 Бонус: генерация моков

Этот небольшой бонусный совет также связан с тестами и вы можете попросить ChatGPT сгенерировать Swift-код для заданного протокола. Запрос выглядит следующим образом:

Например, создание заглушки для следующего протокола:

В результате получается следующий код:

Довольно простой, но вполне применимый и достаточно хороший код для юнит-тестов.

3. Конкретные вопросы по коду

Использование ChatGPT для генерации Swift-кода полезно в самых разных случаях. Третья подсказка — это не конкретная подсказка, а скорее общий совет задать ChatGPT любые вопросы по программированию, которые у вас могут возникнуть.

Например, недавно я спросил ChatGPT, как получить 95-й процентиль для заданного массива временных интервалов, чтобы использовать его в RocketSim Xcode Build Insights:

Сгенерированный код выглядит следующим образом:

К нему прилагается подробное описание:

Другими словами, ChatGPT может стать вашим знающим коллегой, к которому всегда можно обратиться с вопросами. Возможно, полученный код не всегда будет соответствовать вашим стандартам, но это отличная отправная точка для продолжения. Сначала сделайте так, чтобы это работало, а затем сделайте так, чтобы это блистало!

4. Добавление документации

Мы, разработчики, любим писать код, но часто не любим писать подробную документацию. А жаль, ведь это отличный способ поднять уровень вашей кодовой базы и сделать ее доступной для коллег, которые будут смотреть ваш код.

Хотя мы уже использовали ChatGPT для генерации Swift-кода в других заданиях, теперь мы будем использовать его для генерации документации:

Рекомендуется давать некоторые пояснения, чтобы ChatGPT знал, что делает ваш код. Однако я слышу, как вы думаете: «В таком случае, наверное, будет быстрее написать документацию самому».

Вы правы, так что попробуйте следующую подсказку и посмотрите, достаточно ли удовлетворителен результат:

В качестве примера я попросил его сгенерировать документацию для довольно простого метода обработки строки, который мы использовали ранее. Результат выглядит следующим образом:

Получившаяся документация очень подробна и, скорее всего, намного больше, чем вы могли бы написать. Избыточна ли эта документация? Зависит от ваших предпочтений, но вы всегда можете оставить ту часть, которая вам нужна.

5. Предложения по улучшению кода

Последняя подсказка использует ChatGPT для улучшения кода Swift. Возможно, вы написали код, который работает, но кажется, что его можно было бы оптимизировать.

Например, я написал следующий фрагмент кода, чтобы получить первый контакт в массиве для заданного запроса:

Код работает и, возможно, выглядит неплохо, но я все же решил попросить ChatGPT об улучшениях. Вывод выглядит следующим образом:

ИИ улучшил код и добавил документацию и пример, чтобы опробовать оптимизированный метод. ChatGPT также поделился ключевыми улучшениями, которые он сделал:

  1. Производительность: Использование first(where:) останавливается на первом совпадении.
  2. Нечувствительность к регистру: Поиск теперь не зависит от регистра.
  3. Обработка пробелов: Обрезка запроса для предотвращения проблем со случайными пробелами.
  4. Документация: Добавлены комментарии для ясности.

Эти изменения делают функцию более надежной и эффективной и показывают, как использовать ИИ для оптимизации существующего кода.

Заключение

ChatGPT для генерации кода Swift — отличный способ повысить производительность. Важно предоставить достаточно контекста, чтобы чат-бот мог давать ценные ответы, но если вы потратите на это время, то, скорее всего, будете писать код гораздо быстрее.

Спасибо!

Источник

Если вы нашли опечатку - выделите ее и нажмите Ctrl + Enter! Для связи с нами вы можете использовать info@apptractor.ru.
Telegram

Популярное

Сообщить об опечатке

Текст, который будет отправлен нашим редакторам: