Исходный код — это текст, который пишет программист. Обычный текст, набранный буквами и знаками, только по строгим правилам. Из него потом получается программа, сайт или приложение.
Сравнение простое: исходный код — это чертёж и рецепт одновременно. По нему собирают готовую вещь, но сам он вещью не является.
Почему код и программа — это разное
Компьютер не понимает текст, который пишет человек. Он понимает только числа. Между ними стоит преобразование.
В одних языках код заранее переводят в машинный вид целиком — получается файл, который запускается. Исходного текста в нём уже нет, и прочитать его обратно почти невозможно.
В других код переводится на ходу, во время работы. Так устроены сайты: браузер получает текст и выполняет его прямо у вас.
Отсюда практическое следствие: часть кода сайта видна любому посетителю, а часть — та, что работает на сервере, — не видна никому снаружи.
Почему исходный код так важен
Без него нельзя ничего изменить
Готовая программа — как испечённый торт. Съесть можно, а вытащить из него сахар нельзя. Чтобы что-то поправить, нужен рецепт.
Это главная причина, по которой исходный код у заказчика должен быть. Нет кода — любая правка возможна только через того, кто его написал, по его цене и в его сроки.
Он определяет, кому принадлежит результат
Код — объект авторского права. По умолчанию права принадлежат тому, кто его написал, а не тому, кто заплатил.
Чтобы права перешли к заказчику, это должно быть прямо записано в договоре. Формулировка «исполнитель разрабатывает сайт» права не передаёт.
По нему видно качество
Два сайта могут выглядеть одинаково, а внутри отличаться радикально. В одном всё разложено и понятно новому человеку, в другом — свалка, где любая правка ломает соседнее.
Снаружи эта разница не видна. Она проявляется через год, когда понадобится доработка, и выясняется, что дешевле переписать заново.
Что заказчику надо получить на руки
Не «сайт работает» и пароль от админки. Полный комплект — это:
- сам код в системе хранения версий, а не архивом на почте;
- доступы к хостингу, домену и базе данных, оформленные на вас, а не на подрядчика;
- инструкция по запуску — как поднять проект на новом сервере;
- права по договору, прямо прописанные.
Проверить комплектность можно одним вопросом: сможет ли другая команда взять это и продолжить работу без общения с прежней? Если нет — комплект неполный.
Открытый и закрытый код
Открытый — тот, который автор выложил публично и разрешил использовать. На нём построена значительная часть интернета: системы управления сайтом, базы данных, серверы.
Закрытый — тот, который автор никому не показывает и продаёт как готовый продукт.
Для заказчика разница практическая. Решение на открытом коде можно передать любой команде, и вы не привязаны к одному подрядчику. Закрытое решение обычно означает, что обслуживать его сможет только его владелец, и цену он назначает сам.
Частая ошибка
Считать, что доступ в админку — это и есть контроль над сайтом.
Админка позволяет менять тексты и картинки. Всё остальное — как сайт устроен, что происходит при отправке формы, куда уходят заявки — лежит в коде. И если кода у вас нет, то и сайт, по сути, не ваш.
Автор: Рогачев Дмитрий Васильевич, основатель La Chatte. Компания с 2014 года
делает сайты, интеграции и решения на искусственном интеллекте — более 400 проектов.
