Почему кухонный прибор обрастает программным кодом
Разница возникает не потому, что микроволновка выполняет более сложную задачу, чем космический корабль. Она решает множество небольших задач одновременно: управляет нагревом и датчиками, показывает меню, принимает команды с панели, подключается к сети, взаимодействует с мобильным приложением и может получать обновления. За каждой функцией стоят инструкции, а за ними — программные компоненты, которые связывают устройство с экраном, сетью и электроникой.
Кроме того, современный бытовой прибор может опираться на готовые программные библиотеки — наборы заранее написанных функций для связи, интерфейса или работы операционной системы. Если считать весь этот слой, объём кода быстро растёт, даже когда сама функция выглядит простой: например, показать время приготовления или принять команду через приложение.
Разные способы считать сложность
Полётное ПО шаттла создавалось для другой среды. Оно управляло критически важными операциями в строго ограниченном контуре, где требовалось тщательно проверять поведение каждой части. Поэтому число строк здесь отражает прежде всего объём специализированного управляющего кода, а не весь возможный программный «багаж» устройства.
Сравнение зависит от того, что именно включили в подсчёт: только код, написанный для конкретного прибора, или также операционную систему, библиотеки и другие компоненты. Поэтому миллион строк не означает миллион уникальных решений и не служит прямой мерой сложности или надёжности. Количество кода говорит о масштабе программной оболочки, но не о том, насколько трудна главная задача устройства.
В итоге умная микроволновка может иметь больше строк именно потому, что она одновременно похожа на кухонный прибор, сетевой компьютер и экранный интерфейс. А шаттлу требовалось не быть универсальным: его программное обеспечение было сосредоточено на управлении полётом.






