Научиться программировать. Урок 1
Описание
-Смогу ли я научиться программировать?
-Ответ да. Более того, способность к программированию у Вас уже есть.
-Как это?
-Да. С самого рождения мы программируем своих родитетей, а они программируют нас. Будучи ещё младенцем мы уже знали язык программирования, назовём его "младенческий". Захотели есть - подали команду (заревели). Захотели на ручки - покричали. Захотели спать - захныкали. Что самое интересное, так это то, что родители распознают язык своих детей и в точности выполняют, что нужно было ребёнку.
Программа - это последовательность команд понятных исполнителю.
Исполнитель - это объект, способный выполнять команды. Если исполнитель выполняет программу с одними и теми же данными, то должен получиться один и тот же результат.
Программист - это человек, который пишет, проверяет на работоспособность и исправляет ошибки в программе (делает отладку программы).
Пользователь - это человек, который использует программу (программист так же может быть пользователем).
По мере того как мы растём и развиваемся, начинаем изъясняться словами. А не только криками, крехтением и плачем. Этот язык (со словами) становится более понятен. Исполнителями "словесного" языка уже становятся большее количество людей, а не только родители. Если вы выучили русский язык, то исполнителями могут быть русскоговорящие люди. В конечном итоге на русском языке очень сложно объяснить компьютеру что надо делать. Да что там компьютеру, человеку толком объяснить порой тяжело. Даже если и скажет, что он понял, то может сделает это не так как ожидал "программист". С Вами такое бывало?
- Да бывало, даже очень часто. Попросишь друга сделай одно, а он делает это совсем по другому.
- Но всё же, даже язык программирования на русском языке был создан в середине 1980-х годах академиком А. П. Ершовым школьный алгоритмический язык для использования в качестве основы для «безмашинного» курса информатики. Т.е. программы на этом языке пригодны только если исполнитель человек. Основные приемущества этого языка такие:
1. Вы учитесь писать программы которые дают одинаковый результат при одинаковых условиях.
2. Этот язык уже как можно близок для написания программ для компьютеров.
Далее в процессе жизни мы начинаем изучать различные языки, например, английский. Для чего мы это делаем?
- Для того чтобы общаться с другими людьми.
- Правильно! Но для того чтобы общаться с компьютерами на их языке существуют языки программирования. Такие как Python, Assembler, C++, 1С, Pascal и так далее. С каждым годом количество языков растёт.
- Зачем придумывают столько языков программирования?
- Из-за потребностей пользователей, требованиям к скорости разработки, качеству программ и происходит развитие языков программирования. Языки становятся более понятными, скорость обучения и написания программ, поиска и исправления ошибок в программах увеличивается, а качество программ для пользователя только улучшается.
Но за всё надо платить :) например, скоростью выполнения программы, затратами времени на компиляцию.
-А что такое компиляция?
-Компиляция - это преобразование программы с одного языка программирования на другой язык программирования, например в машинные коды.
Рассмотрим процесс создания программы на примере из жизни.
Представьте себе, что вы находитесь со своей подругой на курорте в тайском ресторане. Подруга знает только русский язык, а Вы знаете 2 языка русский и английский. Официант же знает только английский и тайский, а все повара в хорошем тайском ресторане должны быть тайцами и общаются только на тайском.
Подруга захотела отведать экзотическое тайское блюдо суп "Том ям", и рассчитаться. Подруга точно знает что надо сделать (позвать официанта, заказать ему суп "Том ям", дождаться приготовления свежего, вкусного супчика, отведать его и рассчитаться). Но знание только русского языка доставляет ей некоторые неудобства. У подруги есть Вы :) она просит Вас заказать этот вкусный суп, т.к. только вы знаете английский. Вы подзываете официанта (естественно на английском) и объясняете что ему нужно принести. Официант с улыбкой принимает ваш заказ и идет к поварам, а им уже делает заказ на тайском. Когда же повара приготовят блюдо, они отдают официанту, а официант уже отдает Вам, а Вы отдаете вкусный суп своей подруге.
А как Вы думаете, что сделает подруга когда ей нужен будет счёт на оплату? :)
Этот не большой пример как раз и иллюстрирует процесс создания программы на любом языке программирования.
Вот вам и термины.
Подруга выбирает блюда - процесс постановки задачи.
Мысли подруги о том как ей поесть в ресторане - составление математической модели и создания алгоритма.
Вы это интерпетатор - Переводите её алгоритм на язык программирования.
Официант компилятор - переводит с языка программирования на машинные коды, понятные команды процессору.
Повара - это уже компьютер, который и выполняет работу.
Время на приготовление - это ресурсы процессора.
А программа это последовательность команд (может даже и одна команда). Которые Вам позволят хорошенько наесться в ресторане. И назовем эту программу "Вкусный ресторан" .
Надеюсь я ответил на все ваши вопросы?
-Да.
-Тогда ждём Вас на сайте www.programishka.ru