Баннер мобильный (1) Пройти тест

Апрувить пул-реквест: сленг разработчиков и как его понимать

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

Разбор

1 марта 2024

Поделиться

Скопировано
Апрувить пул-реквест: сленг разработчиков и как его понимать

Содержание

    Айтишников сложно понять: они говорят на своем языке, который для новичка звучит как заклинания из «Гарри Поттера». Давайте разберемся, о чем на самом деле говорят программисты, когда обсуждают проекты и процессы.

    Языки

    Названия языков программирования часто переиначивают для простоты или ради шутки. «Змея» – это Python, а вовсе не рептилия, чудом проникнувшая в офис. А «жаба» – Java, тогда как «жабаскрипт» или даже «жаба-скрип» – это JavaScript. Программисты старшего возраста могут все еще называть эти языки «Ява» и «Яваскрипт» – так было принято раньше.

    В современных IT-компаниях можно встретить сусликов, или гоферов – разработчиков на Go. Милый зверек суслик по-английски называется gopher и считается символом языка программирования. «Пыха» – это PHP, а не PlayStation 4 (впрочем, в некоторых IT-офисах встречается и такое), «крестами» называют C++, «сижкой» – C, а «сионисты» – это не тайный орден, а разработчики на C.

    Стандартное сокращение для языка программирования в целом – ЯП. Современные ЯП полны синтаксического сахара – решений в синтаксисе, которые сами по себе не добавляют новых функций, но делают написание кода удобнее. Обратный термин – синтаксическая соль, конструкции, которые усложняют код.

    Контроль версий

    Самые сложные и страшные слова обычно относятся к системам контроля версий, таких как Git, и к работе с ними. Контроль версий нужен разработчикам, чтобы не терять результаты работы – он функционирует как сохранения в играх. Проект можно «сохранить» в каком-то состоянии, а потом вернуться к любому «сохранению» – они называются коммитами. Соответственно, коммитить – создавать новый коммит.

    Коммиты хранятся в репозиториях, или «репо» – специальных папках или разделах с версиями проекта. Локальные репозитории находятся на компьютере разработчика, а в общий доступ версии выкладывают на GitHub или GitLab – сервисы для работы с Git. Отправить код в репозиторий – значит запушить его: от названия соответствующей команды push.

    Но просто так запушить что-то в общий репо нельзя – сначала понадобится отправить пул-реквест, то есть попросить у старших разработчиков разрешения на изменение версии. Они получат реквест и проведут код-ревью – проверят написанный код на предмет ошибок и недочетов. Если все хорошо, пул-реквест апрувят – то есть одобряют. Стандартный комментарий к апруву – LGTM: looks good to me, то есть, «мне кажется, хорошо».

    Чтобы не смешивать все обновления в одно, версии разветвляют – создают бранчи, то есть отдельные «треки» обновлений. А потом, когда каждый бранч разовьется по отдельности, их мёржат – сливают воедино.

    Технологии и решения

    Не отстают и другие технологии. Например, «мускул» – СУБД MySQL, «апишка» – API, а «либа» – библиотека для языка программирования. Программы, которые предупреждают разработчика об ошибках в коде, называются «линтерами» – они могут даже сами править стилистические недочеты. Если линтер или какая-то другая программа сообщает об ошибке, говорят, что она «ругается».

    Windows – это «окошки», Linux – «линь» или «пингвин», а Android – «ведроид». Продукцию Apple называют «яблоками», а ее фанатов – «яблочниками» или «апловодами».

    У конкретных решений и действий тоже есть названия. В мобильной разработке есть тап – нажатие пальцем на экран, а есть стретч – движение двумя пальцами для увеличения картинки или страницы. Выпадающие меню в приложениях и на сайтах называют «выпадашками» или «дропдаунами», а системы управления контентом – «админками», «движками» или «цээмэсками». Впрочем, движок – это еще и интерпретатор языка, программа, которая отвечает за построчное исполнение кода.

    Задачи и обновления

    Выкатить, зарелизить проект – значит показать его общественности, а задеплоить – отправить на сервер, где он будет работать. Еще можно накатить обновление – это почти как выкатить, только немного иначе: накатывают что-то обычно уже поверх готового проекта, например доработки.

    Куда выкатывают уже написанный код? Сначала, возможно, на тестовый сервер, а потом – на прод, или продакшн: это сервера, на которых запущена «рабочая» версия проекта. Ее видят и с ней взаимодействуют посетители. Поэтому уронить прод – сделать сервис недоступным для пользователей из-за ошибки – это очень плохо. Это факап – то есть серьезный промах.

    Если случилось что-то плохое, нужно откатить проект – вернуть старую версию, которая работала корректно. Хорошо, если есть бэкапы – резервные копии работающего продукта. Потом придется фиксить баги, или же дебажить – то есть, исправлять ошибки. А чтобы данные вводились правильно, нужна валидация – проверка корректности того, что ввел пользователь.

    Потом, когда все хорошо, можно уже подумать о добавлении новых фич – «фишек», возможностей программы. Шуточная фраза «не баг, а фича» означает «это не ошибка, это так задумано» – хотя баги все равно возникают чаще, чем хотелось бы.

    Кстати. Слово «баг» пришло в разработку на заре компьютерной эры. Создательница первого в мире компилятора Грейс Хоппер обнаружила, что ее компьютер не работает. А когда проверила – оказалось, что внутрь устройства залетела бабочка, то есть «жучок» или bug. Так она и описала причину ошибки в журнале. Ранее слово использовали инженеры, когда говорили о необъяснимых недочетах.

    Выстраивание процессов

    С утра разработчики идут на митинги. Но уличные демонстрации тут ни при чем: митингом в IT называют регулярную встречу команды разработчиков, на которой разбирают выполненные задачи и ставят новые. Такая организация процессов характерна для аджайла, или Agile: «гибкой» методологии управления проектами. Ее часто используют в IT. Популярная методика аджайла называется скрам, или scrum, а специалист, который отвечает за организацию скрама – скраммастер.

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

    Какие задачи выдадут на митинге – зависит от грейда разработчика, то есть от уровня его квалификации. Джуниор, или джун – младший разработчик, мидл – «средний», а сеньор – старший. Еще есть тимлид – он управляет командой. В тимлиды идут из сеньоров или, реже, из менеджеров.

    Еще имеет значение стек разработчика – набор технологий, с которыми он умеет обращаться. Например, на галерах – в компаниях, которые «выжимают» из сотрудника максимум и не ценят его, хотят, чтобы человек умел все и сразу. Галеры – это, как правило, аутсорс-компании, то есть такие, которые создают программные решения для чужого бизнеса на заказ.

    Другие слова

    Как бы мы ни пытались классифицировать сленг, пункт «другое» все равно есть. Сюда можно отнести такие словечки, как, например, DRY – «драй», «ди-эр-ай». Эта аббревиатура означает don’t repeat yourself – не повторяйся. Она напоминает избегать ненужных повторов кода там, где это возможно.

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

    Шерить – это делиться чем-то, меншить – упоминать, чаще всего в соцсетях или мессенджерах, а парсить – собирать данные и распределять их. Итерация – всего лишь повторение. Ну а жираJira, сервис для контроля задач. Кстати, задача – это таска, а такие сервисы называются тасктрекерами. Набор текущих, еще не сделанных задач в ней имеет название бэклог, и разработчикам часто бывает больно на него смотреть.

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

    Думаете, это все? Нет. Сленг разработчиков намного обширнее, и мы познакомились лишь с малой его частью. Но надеемся, вы стали лучше понимать айтишников. А если хотите стать одним из них, записывайтесь на наши курсы.

    Разбор

    Поделиться

    Скопировано
    0 комментариев
    Комментарии