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

Прежде чем мы начнем, немного о себе. В настоящее время я являюсь разработчиком iOS, специализирующимся на Swift, но для своих обычных повседневных задач я также использую команды git, регулярные выражения, javascript и т. д. Разрабатывая приложения для iOS в течение нескольких лет, я довольно хорошо знаю этот язык, но с трудом запоминаю. мелкие детали других языков, которыми я не пользуюсь изо дня в день.

В этом посте я покажу вам, как я использовал ИИ, чтобы помочь сократить исследования для незнакомых задач разработки.

Прежде чем мы начнем, на момент написания этой статьи OpenAI предлагает вам бесплатную бета-программу, с которой вы можете поиграть, вы можете зарегистрироваться здесь. По моему опыту, чтобы получить доступ, потребовалось 24 часа, и ожидание того стоило.

Гит

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

# create git command to print the author for each branch

который возвращает

git for-each-ref — format=’%(refname:short) %(authorname)’ refs/heads |

Как легко это было, заняло около 10 секунд, что сэкономило мне немного времени на поиски ответа.

Чтобы упростить чтение ввода и вывода, в следующих примерах я буду представлять ввод/вывод так:

# create git command to print the author for each branch
git for-each-ref — format=’%(refname:short) %(authorname)’ refs/heads |

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

# create git command to remove all files not tracked by git
git clean -f -d

Если вы не чувствуете себя достаточно храбрым, чтобы удалить файлы без проверки, добавьте термин dry run

# create git command dry run to remove all files not tracked by git
git clean -n -d

Так что, если вы ищете конкретную команду git, почему бы сначала не обратиться к инструменту ИИ.

регулярное выражение

Не совсем уверен, что у меня с мозгом, но по какой-то причине запоминание регулярных выражений не входит в число моих талантов. ИИ спешит на помощь.

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

# regex pattern to check a string is between 24–40 characters long
pattern = re.compile(r’^.{24,40}$’)

Или, может быть, нам нужно проверить, соответствует ли строка адресу электронной почты. На этот раз давайте изменим вопрос, чтобы посмотреть, сможем ли мы удалить re.compile часть ответа.

# given a string is between 24–40 characters long the output is "^.{24,40}$"
# what is a regex pattern to check a string is an email address?

given a string is an email address the output is "^[a-zA-Z0-9_.+-]+@[a-zA-Z0-9-]+\.[a-zA-Z0-9-.]+$"

Теперь, если вы похожи на меня и все еще не уверены в ответе, вы можете поместить регулярное выражение в инструмент, этот это, и проверить его работу, как и ожидалось.

Сценарии оболочки

Недавно мне понадобился способ изменить строку, вставив символ по определенному индексу, например, учитывая, что «123» возвращает «12–3». Исследовательская задача заняла добрых 15 минут. С использованием ИИ это заняло около 2 минут. Стоит отметить, что мне все еще нужно было немного изучить, чтобы найти правильную подсказку для подачи ИИ, но мне нужно было знать только основы, чтобы получить нужный мне ответ.

Для начала я попытался просто спросить,

# shell script to inject character — at index 8

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

После быстрого поиска в Google shell script to manipulate strings я наткнулся на волшебные ключевые слова, которые мне нужны были после stream editor . Давайте поместим эти ключевые слова в нашу подсказку.

# shell script zsh stream editor that inserts char “-” into the input at position 2
sed -e ‘s/^\(..\)/\1-/’

SwiftUI

Наконец, я начинаю разрабатывать больше функций SwiftUI для своих повседневных задач. Когда я изучаю новую библиотеку, я использую ИИ, чтобы упростить такие вещи, как…

  • как добавить тень к прямоугольнику
  • как отобразить текст определенным цветом и шрифтом

Примечание: для этого примера мне нужно было изменить способ комментирования вопроса, поскольку # не является стандартным комментарием для SwiftUI, чтобы помочь ИИ, переключите комментарии на /*. */, чтобы улучшить ответы.

Ввод

/*
 swiftUI
 create a view called BestViewEver that draws the text “hello world” with the color red and body font
 underneath the text draw a rectangle with a black shadow
 create a preview for the view
*/

Вывод

struct BestViewEver: View {
   var body: some View {
     VStack {
       Text(“Hello World”)
         .font(.body)
         .foregroundColor(.red)
       Rectangle()
         .frame(width: 100, height: 100)
         .foregroundColor(.blue)
         .shadow(color: .black, radius: 10, x: 0, y: 0)
     }
   }
}
struct BestViewEver_Previews: PreviewProvider {
   static var previews: some View {
      BestViewEver()
   }
}

Заключение

Лучший способ для меня объяснить использование ИИ таким образом — это думать об ИИ как о переполнении стека/руководстве/документе на стероидах. Это может быть ваш друг, который поможет сократить незнакомые задачи, которые вам обычно нужно немного изучить, чтобы получить работу, которую вы после этого сделали.