Инструменты искусственного интеллекта автоматизируют так много задач, что разработчики могут обнаружить, что некоторые из приобретенных ими навыков больше не нужны, пишет на портале The New Stack Эран Яхав, технический директор и соучредитель компании Tabnine.
Распространенное мнение о том, что «ИИ изменит все», устарело; ИИ уже оказал колоссальное влияние, и возможно нигде так сильно, как в разработке ПО, благодаря быстрому внедрению ИИ-помощников по кодированию. Согласно исследованию Stack Overflow, проведенному в 2023 г., 44% профессиональных разработчиков уже используют ИИ в процессе разработки ПО, а по некоторым данным, к концу 2025 г. это число более чем удвоится.
Быстрое внедрение ИИ в разработку ПО отчасти объясняется заслуженной репутацией разработчиков как первопроходцев, которые узнают о повышении производительности на собственном опыте. Тем не менее, название «ИИ-помощник по кодированию» преуменьшает его преимущества. Последние предложения выходят далеко за рамки завершения строк кода и помогают разработчикам прорабатывать функциональность, создавать UX, выбирать правильные библиотеки, применять правильный синтаксис, проводить специальные тесты и многое другое — и все это через взаимодействие, подобное тому, которое пользователи получают при общении со своим любимым ИИ-чатботом.
Прелесть ИИ-помощников по кодированию в том, что они помогают как опытным, так и начинающим разработчикам. Даже самые опытные и квалифицированные разработчики не знают всего, поэтому предложения, полученные из огромных хранилищ обширного, глубокого и разнообразного кода, только приветствуются. Аналогичным образом, новички в разработке ПО получают от ИИ рекомендации в контексте конкретных задач, что ускоряет процесс обучения и даже позволяет опытным бизнес-пользователям впервые создавать приложения.
Инструменты ИИ для кодирования автоматизируют так много задач, что разработчики, скорее всего, обнаружат, что некоторые из приобретенных ими навыков больше не нужны. Но это не страшно, ведь многие из них связаны с рутинной работой, от которой разработчики с радостью откажутся.
Вот навыки разработчиков, которые ИИ сделает устаревшими:
1. Героическое выяснение непонятных деталей
Даже самые опытные разработчики тратят непомерное количество времени на выяснение всевозможных деталей в Google или Stack Overflow. Инструменты ИИ великолепно справляются с поиском нужной информации в мгновение ока — как для таких деталей, как правильный синтаксис API, так и для более широких запросов, таких как «какие аргументы у этой функции?» или «найдите компонент, который делает X». Да, разработчикам приходится проверять ответы ИИ, но экономия времени и снижение утомительности могут быть феноменальными.
2. Написание чудовищных тестов и документации в конце цикла
Agile-методология разработки уже предписывает разработчикам тестировать по ходу, а не в конце цикла разработки ПО. Но это требует работы. ИИ-помощники по кодированию позволяют разработчикам генерировать тесты на гранулярном уровне автоматически, как побочный продукт создания самого кода. Кроме того, значительно упрощается работа по написанию документации: ИИ-помощники могут подготовить хорошо организованный драфт, основанный только на коде. Такая документация не будет идеальной (как правило, она не включает такой важный аспект, как объяснение выбора дизайна), но отредактировать ее будет гораздо проще, чем начинать с нуля. ИИ позволяет нам тратить больше времени именно на создание приложений.
3. Упорная работа по сопровождению кода
С помощью ИИ-помощников по кодированию разработчикам, которым поручено сопровождение кода, не придется изучать чужую работу, чтобы понять, что именно другие люди пытались сделать. Разработчики могут просто выбрать фрагмент кода и попросить ИИ-помощника объяснить его.
4. Кропотливое отслеживание ошибок путем анализа сложного кода
Не только тесты «на лету» могут отлавливать ошибки, но и ИИ-помощники по кодированию могут предупреждать разработчиков о потенциальных ошибках до того, как они будут внедрены в код. Они также позволяют разработчикам просто выбрать блок кода, выявить ошибки или проблемы с помощью ИИ-инструментов и получить рекомендации по изменению кода. Можно выявлять и недостатки в системе безопасности, но помните, что ИИ-помощники не заменят комплексных тестов безопасности.
5. Написание повторяющихся блоков кода
Хотя ИИ-помощники по кодированию полезны не только для завершения кода, разработчики будут особо рады возможности устранения наиболее избыточных аспектов кодирования. Завершение кода в IDE с помощью ИИ позволит автоматически заполнять классы, функции и имена, устраняя повторяющиеся задачи. Создание ПО с помощью ИИ-инструментов означает уменьшение количества утомительных задач и больше творчества.
ИИ-помощники по кодированию позволяют меньше заниматься выполнением тех задач, которые разработчики любят делать меньше всего.
Еще лучше то, что они предоставляют жизненно важную информацию тогда, когда она больше всего нужна разработчикам — во время работы. Сотрудничество с ИИ-помощниками по кодированию позволяет разработчикам быстро осваивать новые области и восполнять пробелы в кадрах на наиболее важных для организации направлениях разработки ПО.