Компьютерная программа: различия между версиями

(→‎Объясните простыми словами, пожалуйста: Версия близкая к финальной)
Строка 4: Строка 4:
Компьютерная программа — это что-то вроде  <code>01100011</code> <code>01101111</code> <code>01101101</code> <code>01110000</code> <code>01110101</code> <code>01110100</code> <code>01100101</code> <code>01110010</code> <code>00100000</code> <code>01110000</code> <code>01110010</code> <code>01101111</code> <code>01100111</code> <code>01110010</code> <code>01100001</code> <code>01101101</code>...
Компьютерная программа — это что-то вроде  <code>01100011</code> <code>01101111</code> <code>01101101</code> <code>01110000</code> <code>01110101</code> <code>01110100</code> <code>01100101</code> <code>01110010</code> <code>00100000</code> <code>01110000</code> <code>01110010</code> <code>01101111</code> <code>01100111</code> <code>01110010</code> <code>01100001</code> <code>01101101</code>...


Ничего не понятно? Всё верно, вы и не должны понимать компьютерные программы, так как они предназначены для компьютеров. Это как пытаться посмотреть фильм, рассматривая кинопленку.
Ничего не понятно? Всё верно, вы и не должны понимать компьютерные программы, так как они предназначены для компьютеров. Это как пытаться посмотреть фильм, рассматривая кинопленку. Компьютерная программа — это «кинопленка», для компьютера.


Но как создавать программы, если их нельзя понять? С помощью вспомогательных инструментов и специально обученных людей. Давайте разберем на примере.
Но как создавать программы, если их нельзя понять? С помощью вспомогательных инструментов и специально обученных людей. Давайте разберем на примере.
Строка 24: Строка 24:
|В исходном коде описаны:
|В исходном коде описаны:
|-
|-
|🔹Эпизоды
|🔹Эпизоды — большие части фильма, состоящие из ряда сцен
|🔸Классы
|🔸Классы — большие части программы, состоящие из набора функций
|-
|-
|🔹Сцены
|🔹Сцены — это группы кадров, объединенные единством места, времени и действия
|🔸Функции
|🔸Функции — группа инструкций, для выполнения действия с определенными условиями
|-
|-
|🔹Кадры
|🔹Кадры — неделимый элемент фильма
|🔸Инструкции
|🔸Инструкции — самые простые уже неделимые операции
|-
|-
|🔹Актеры
|🔹Актеры — не очень постоянные люди, постоянно меняющие роли
|🔸Переменные
|🔸Переменные — контейнеры для хранения изменяющихся значений
|-
|-
|🔹Роли
|🔹Роли — бывают отрицательные и положительные
|🔸Значения переменных
|🔸Значения переменных — бывают отрицательные и положительные (для чисел)
|-
|-
|🔹Статисты
|🔹Статисты — недоактеры, обычно с одной небольшой ролью
|🔸Константы
|🔸Константы — недопеременные, с постоянным одним значением
|-
|-
|🎥 Кинокамера, снимает на пленку
|Сценарий готов и проверен, начинаем процесс съемки:
|🤖Компилятор
|Исходный код готов и проверен, начинаем сборку программы:
|-
|-
|🎬Начался процесс съемки фильма на кинопленку
|🎥 Кинокамера, превращает сценарий в кинопленку
|🗿Начался процесс компиляции исходного кода в машинный код
|🤖Компилятор — специальная программа, превращающая исходный код в машинный
|-
|-
|Некоторые кадры снимаются несколькими дублями
|🎬Некоторые кадры снимаются несколькими дублями
|Некоторые инструкции выполняются многократно раз в циклах
|🔁Некоторые инструкции выполняются многократно раз в циклах
|-
|-
|📣Режиссер
|📣Режиссер следит чтобы актеры играли роли хорошо
|🆘Отладчик
|🆘Отладчик следит чтобы переменные содержали верные значения
|-
|-
|✂️Монтаж
|✂️Монтаж — финальная сборка проигрываемой кинопленки
|🖇Компоновка
|🖇Компоновка — финальная сборка исполняемой программы
|-
|-
|🎞Получившаяся кинопленка
|🎞Получившаяся кинопленка ▣▣▣▣▣▣▣▣
|💯💯💯Машинный код
|💯💯💯Машинный код <code>101001010010012(упс)000110001</code>
|-
|-
|🔘Катушка с кинопленкой
|🔘Катушки с кинопленкой — '''Кинофильм'''
|⚙️Программа
|⚙️Файлы с машинным кодом — '''Компьютерная программа'''
|-
|-
|🎦Кинотеатр
|Кинофильм готов, теперь нужно доставить его зрителю
|🖥️Компьютер
|Программа готова, теперь нужно доставить её пользователю
|-
|-
|🗄️Склад кинопленки в катушках
|🎦Кинотеатр — большой зал, вмещающий много зрителей
|💽Жесткий диск с установленными программами
|🖥️Сервер — большой мощный компьютер, вмещает много пользователей
|-
|-
|📽Кинопроектор
|🗄️Склад кинопленки в катушках в кинотеатре
|🚀Центральный процессор компьютера
|💽Жесткий диск с установленными программами на сервере
|-
|-
|👨‍🔧Киномеханик загружает катушку в кинопроектор
|📽Кинопроектор — умеет проигрывать кинопленку
|🦥Системный администратор запускает программу
|🚀Центральный процессор компьютера — умеет исполнять программы
|-
|👨‍🔧Киномеханик загружает катушку в кинопроектор и запускает его
|🦥Системный администратор устанавливает и запускает программу
|-
|-
|😨Кинокритик посмотрел фильм первым и написал рецензию
|😨Кинокритик посмотрел фильм первым и написал рецензию
Строка 79: Строка 82:
|-
|-
|🍿Зрители смотрят фильм
|🍿Зрители смотрят фильм
|😱Пользователи работают с веб-приложением
|😱Пользователи работают с программой
|-
|-
|😍Зрители в восторге, ваш фильм великолепен
|😍Зрители в восторге, ваш фильм великолепен
|🤦Вы молодец, что дочитали этот бред.
|🤦Пользователи «в восторге», ваша программа «великолепна»
|}
|}