Вот как это работает на практике. У вас есть проект из 50 файлов. Вам нужно добавить новую фичу. В обычном мире вы бы начали открывать файлы один за другим, вспоминать, что где лежит, какая функция за что отвечает. В Cursor вы просто открываете чат (`Cmd+K`) и пишете: «Добавь возможность для пользователей загружать аватар. Вот требования: изображение должно быть в формате PNG или JPG, не больше 2МБ. На бэкенде нужно создать новый эндпоинт `/upload-avatar`, который будет сохранять файл в папку `/uploads`. На фронтенде, в компоненте `UserProfile.tsx`, добавь кнопку "Загрузить фото" и реализуй логику отправки файла на сервер».
И вы идете пить чай. Когда вы вернетесь, Cursor покажет вам предлагаемые изменения. Он сам найдет `UserProfile.tsx` и добавит туда нужный JSX и CSS. Он откроет файл с роутами на сервере и добавит `/upload-avatar`. Он создаст новый контроллер для обработки загрузки, включая проверку размера и типа файла. Он даже может установить нужную библиотеку для обработки `multipart/form-data`, если ее не было. Вам останется только нажать кнопку «Применить» и проверить результат.
Cursor превращает фразы типа «Сделай калькулятор калорий с тёмной темой» в готовый код. Просто шепчи ему в чат – он даже через тайпскрипт пролезет! Его сила в контексте. Вы можете выделить кусок кода и попросить: «Найди баги в этом фрагменте», «Отрефактори этот код, сделай его более читаемым», «Объясни мне, что здесь происходит, как будто мне 5 лет». Он не просто даст ответ, он даст его с учетом того, как этот код взаимодействует с остальной частью вашей программы. Это и есть работа старшего инженера – видеть картину целиком и принимать решения, основанные на глобальном контексте, а не на локальной проблеме.
Конечно, он не идеален. Иногда он может «задуматься» или предложить не самое элегантное решение. Но это происходит все реже. Главное – научиться правильно с ним разговаривать. Чем точнее и детальнее ваш запрос, тем лучше будет результат. Это основа `промпт-инжиниринга`, о которой мы поговорим позже. Но даже с базовыми навыками Cursor экономит часы, которые раньше уходили на навигацию по проекту и написание шаблонного кода.
Claude 3.5 Sonnet – «Архитектор»
Если Cursor – это ваш старший инженер, который отлично справляется с тактическими задачами, то Claude – это ваш главный архитектор, который отвечает за стратегию. Я обращаюсь к нему, когда задача выходит за рамки написания кода и требует высокоуровневого мышления, анализа и планирования.