Программирование
Оригинальное название: programming
Коротко
Создание программ: разбор задачи, придумывание способа её решения и запись этого способа на языке, который понимает компьютер.
Что такое «Программирование»
Писать код — самая заметная, но не самая большая часть работы. Сначала нужно понять задачу: что считается правильным результатом, какие бывают входные данные, что делать с ошибками. Потом придумать алгоритм — последовательность действий, которая приведёт к результату. И только после этого записать его на конкретном языке программирования, проверить и отладить. Первой программой часто называют алгоритм вычисления чисел Бернулли, который Ада Лавлейс описала в 1843 году для так и не построенной вычислительной машины Бэббиджа.
Пример: от условия к коду
Задача: определить, високосный ли год. Условие из календаря звучит так: год делится на 4, но не на 100, либо делится на 400. Перевод в код почти дословный:
function is_leap_year( int $year ): bool {
return ( $year % 4 === 0 && $year % 100 !== 0 )
|| $year % 400 === 0;
}
is_leap_year( 2024 ); // true
is_leap_year( 1900 ); // false — делится на 100, но не на 400
Самое ценное здесь не синтаксис, а проверка на 1900 годе: программист заранее думает о граничных случаях, где наивное «делится на 4» дало бы ошибку.
Из чего состоит работа программиста
- Чтение чужого кода — его в реальных проектах больше, чем своего нового.
- Проектирование: как разбить задачу на части, где хранить данные, как части будут общаться.
- Отладка и тестирование — поиск расхождений между тем, что задумано, и тем, что работает.
- Сопровождение: исправления, обновления библиотек, доработки под новые требования.
Программирование и разработка
В быту слова взаимозаменяемы, но разница есть. Программирование — навык превращать задачу в работающий код. Разработка ПО шире: в неё входят сбор требований, дизайн, тестирование, развёртывание, поддержка, работа в команде. Дисциплину, которая изучает весь этот путь, называют программной инженерией. Хороший программист отличается не знанием множества языков, а умением писать код, который понятен другому человеку через год и который можно изменить, не боясь сломать соседнее.

