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

