Компьютерная программа: различия между версиями
AE (обсуждение | вклад) (Как создаются программы) |
AE (обсуждение | вклад) мНет описания правки |
||
(не показано 8 промежуточных версий этого же участника) | |||
Строка 1: | Строка 1: | ||
Набор инструкций для выполнения компьютером. Результатом выполнения инструкций является обработка данных для получения полезного результата. | Набор инструкций для выполнения компьютером. Результатом выполнения инструкций является обработка данных для получения полезного результата. | ||
== Объясните простыми словами, пожалуйста == | |||
Компьютерная программа — это что-то вроде <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>... | |||
Ничего не понятно? Всё верно, вы и не должны понимать компьютерные программы, так как они предназначены для компьютеров. Это как пытаться посмотреть фильм, рассматривая кинопленку. Компьютерная программа — это «кинопленка», для компьютера. | |||
Но как создавать программы, если их нельзя понять? С помощью вспомогательных инструментов и специально обученных людей. Давайте разберем на примере. | |||
{| class="wikitable" | |||
|+ | |||
!Кинофильм | |||
!Компьютерная программа | |||
|- | |||
|🏆 Допустим, вы кинопродюсер и хотите создать уникальный и самый лучший фильм | |||
|💰 Допустим, вы предприниматель и хотите создать очередной посредственный стартап | |||
|- | |||
|💡 Вы находите сценариста и подробно описывайте ему свои идеи | |||
|🤨 Вы находите программиста и формируете ему подробное техническое задание | |||
|- | |||
|✍️ Сценарист написал подробный и точный сценарий фильма | |||
|🧑💻 Программист написал исходный код программы | |||
|- | |||
|'''В сценарии описаны:''' | |||
|'''В исходном коде описаны:''' | |||
|- | |||
|🔹Эпизоды — большие части фильма, состоящие из ряда сцен | |||
|🔸Классы — большие части программы, состоящие из набора функций | |||
|- | |||
|🔹Сцены — это группы кадров, объединенные единством места, времени и действия | |||
|🔸Функции — группа инструкций, для выполнения действия с определенными условиями | |||
|- | |||
|🔹Кадры — неделимый элемент фильма | |||
|🔸Инструкции — самые простые уже неделимые операции | |||
|- | |||
|🔹Актеры — не очень постоянные люди, постоянно меняющие роли | |||
|🔸Переменные — контейнеры для хранения изменяющихся значений | |||
|- | |||
|🔹Роли — бывают отрицательные и положительные | |||
|🔸Значения переменных — бывают отрицательные и положительные (для чисел) | |||
|- | |||
|🔹Статисты — недоактеры, обычно с одной небольшой ролью | |||
|🔸Константы — недопеременные, с постоянным одним значением | |||
|- | |||
|'''Сценарий готов и проверен, начинаем процесс съемки:''' | |||
|'''Исходный код готов и проверен, начинаем сборку программы:''' | |||
|- | |||
|🎥 Кинокамера, превращает сценарий в кинопленку | |||
|🤖 Компилятор — специальная программа, превращающая исходный код в машинный | |||
|- | |||
|🎬 Некоторые кадры снимаются несколькими дублями | |||
|🔁 Некоторые инструкции выполняются многократно раз в циклах | |||
|- | |||
|📣 Режиссер следит чтобы актеры играли роли хорошо | |||
|🆘 Отладчик следит чтобы переменные содержали верные значения | |||
|- | |||
|✂️ Монтаж — финальная сборка проигрываемой кинопленки | |||
|🖇 Компоновка — финальная сборка исполняемой программы | |||
|- | |||
|🎞 Получившаяся кинопленка ▣▣▣▣▣▣▣▣ | |||
|💯 Машинный код <code>10011002(упс)01…</code> | |||
|- | |||
|🔘 Катушки с кинопленкой — '''<u>''Кинофильм''</u>''' | |||
|⚙️ Файлы с машинным кодом — '''''<u>Компьютерная программа</u>''''' | |||
|- | |||
|'''Кинофильм готов, теперь нужно доставить его зрителям:''' | |||
|'''Программа готова, теперь нужно доставить её пользователям:''' | |||
|- | |||
|🎦 Кинотеатр — большой зал, вмещающий много зрителей | |||
|🖥️ Сервер — большой мощный компьютер, вмещает много пользователей | |||
|- | |||
|🗄️ Склад кинопленки в катушках в кинотеатре | |||
|💽 Жесткий диск с установленными программами на сервере | |||
|- | |||
|📽 Кинопроектор — умеет проигрывать кинопленку | |||
|🚀 Центральный процессор компьютера — умеет исполнять программы | |||
|- | |||
|👨🔧 Киномеханик загружает катушку в кинопроектор и запускает его | |||
|🦥 Системный администратор устанавливает и запускает программу | |||
|- | |||
|🧐 Кинокритик посмотрел фильм первым и написал рецензию | |||
|😨 Тестировщик протестировал программу и написал отчет о багах | |||
|- | |||
|🍿 Зрители смотрят фильм | |||
|😱 Пользователи работают с программой | |||
|- | |||
|😍 Зрители в восторге, ваш фильм великолепен | |||
|🤦 Пользователи «в восторге», ваша программа «великолепна» | |||
|} | |||
== Зачем нужны программы == | == Зачем нужны программы == | ||
Программы решают простые задачи: | Программы решают простые задачи: | ||
* Логические операции | |||
* Математические вычисления. | * Математические вычисления. | ||
* Обработка текстов. | * Обработка текстов. | ||
Строка 26: | Строка 114: | ||
Такой текст с описанием понятных для человека инструкций назвали программным кодом. А правила его написания — языком программирования. | Такой текст с описанием понятных для человека инструкций назвали программным кодом. А правила его написания — языком программирования. | ||
Важно не путать программу и её программный код. | Важно не путать программу и её программный код. Чтобы не было путаницы, рекомендуется называть программный код — исходным кодом программы. | ||
[[Категория:Информационные технологии]] |
Текущая версия от 23:25, 8 ноября 2022
Набор инструкций для выполнения компьютером. Результатом выполнения инструкций является обработка данных для получения полезного результата.
Объясните простыми словами, пожалуйста[править | править код]
Компьютерная программа — это что-то вроде 01100011
01101111
01101101
01110000
01110101
01110100
01100101
01110010
00100000
01110000
01110010
01101111
01100111
01110010
01100001
01101101
...
Ничего не понятно? Всё верно, вы и не должны понимать компьютерные программы, так как они предназначены для компьютеров. Это как пытаться посмотреть фильм, рассматривая кинопленку. Компьютерная программа — это «кинопленка», для компьютера.
Но как создавать программы, если их нельзя понять? С помощью вспомогательных инструментов и специально обученных людей. Давайте разберем на примере.
Кинофильм | Компьютерная программа |
---|---|
🏆 Допустим, вы кинопродюсер и хотите создать уникальный и самый лучший фильм | 💰 Допустим, вы предприниматель и хотите создать очередной посредственный стартап |
💡 Вы находите сценариста и подробно описывайте ему свои идеи | 🤨 Вы находите программиста и формируете ему подробное техническое задание |
✍️ Сценарист написал подробный и точный сценарий фильма | 🧑💻 Программист написал исходный код программы |
В сценарии описаны: | В исходном коде описаны: |
🔹Эпизоды — большие части фильма, состоящие из ряда сцен | 🔸Классы — большие части программы, состоящие из набора функций |
🔹Сцены — это группы кадров, объединенные единством места, времени и действия | 🔸Функции — группа инструкций, для выполнения действия с определенными условиями |
🔹Кадры — неделимый элемент фильма | 🔸Инструкции — самые простые уже неделимые операции |
🔹Актеры — не очень постоянные люди, постоянно меняющие роли | 🔸Переменные — контейнеры для хранения изменяющихся значений |
🔹Роли — бывают отрицательные и положительные | 🔸Значения переменных — бывают отрицательные и положительные (для чисел) |
🔹Статисты — недоактеры, обычно с одной небольшой ролью | 🔸Константы — недопеременные, с постоянным одним значением |
Сценарий готов и проверен, начинаем процесс съемки: | Исходный код готов и проверен, начинаем сборку программы: |
🎥 Кинокамера, превращает сценарий в кинопленку | 🤖 Компилятор — специальная программа, превращающая исходный код в машинный |
🎬 Некоторые кадры снимаются несколькими дублями | 🔁 Некоторые инструкции выполняются многократно раз в циклах |
📣 Режиссер следит чтобы актеры играли роли хорошо | 🆘 Отладчик следит чтобы переменные содержали верные значения |
✂️ Монтаж — финальная сборка проигрываемой кинопленки | 🖇 Компоновка — финальная сборка исполняемой программы |
🎞 Получившаяся кинопленка ▣▣▣▣▣▣▣▣ | 💯 Машинный код 10011002(упс)01…
|
🔘 Катушки с кинопленкой — Кинофильм | ⚙️ Файлы с машинным кодом — Компьютерная программа |
Кинофильм готов, теперь нужно доставить его зрителям: | Программа готова, теперь нужно доставить её пользователям: |
🎦 Кинотеатр — большой зал, вмещающий много зрителей | 🖥️ Сервер — большой мощный компьютер, вмещает много пользователей |
🗄️ Склад кинопленки в катушках в кинотеатре | 💽 Жесткий диск с установленными программами на сервере |
📽 Кинопроектор — умеет проигрывать кинопленку | 🚀 Центральный процессор компьютера — умеет исполнять программы |
👨🔧 Киномеханик загружает катушку в кинопроектор и запускает его | 🦥 Системный администратор устанавливает и запускает программу |
🧐 Кинокритик посмотрел фильм первым и написал рецензию | 😨 Тестировщик протестировал программу и написал отчет о багах |
🍿 Зрители смотрят фильм | 😱 Пользователи работают с программой |
😍 Зрители в восторге, ваш фильм великолепен | 🤦 Пользователи «в восторге», ваша программа «великолепна» |
Зачем нужны программы[править | править код]
Программы решают простые задачи:
- Логические операции
- Математические вычисления.
- Обработка текстов.
- Преобразование данных из одного формата в другой.
- Обработка структурированных данных.
Объединяя программы для решения простых задач, можно собрать приложения для решения более сложных прикладных задач.
Наборы программ и приложений формируют программное обеспечение для вычислительных систем.
Данные системы уже могут решать сложные комплексные задачи, например:
- Управлять автоматизированным заводом.
- Быть автопилотом самолета.
- Организовать инфраструктуру и процессы аэропорта.
- Безопасно доставить ракету до Марса.
- Сделать красивую фотографию в вашем смартфоне.
Как создаются программы[править | править код]
Инструкции, которые может выполнить компьютер, достаточно примитивны, состоят из набора состояний вкл/выкл 1100110010
. Первоначально люди писали эти инструкции напрямую в виде машинного кода, но это было неудобно. Возникла идея писать инструкции понятным человеку текстом (компьютер, сложи эти числа, пожалуйста)
, а получившийся текст преобразовывать в машинный код с помощью вспомогательных программ — компиляторов.
Такой текст с описанием понятных для человека инструкций назвали программным кодом. А правила его написания — языком программирования.
Важно не путать программу и её программный код. Чтобы не было путаницы, рекомендуется называть программный код — исходным кодом программы.