![Введение в программирование](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_0.jpg)
Введение в программирование
![Задачи профессии программиста К основным задачам программиста относятся:](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_1.jpg)
Задачи профессии программиста
К основным задачам программиста относятся:
- разработка/апгрейд программного обеспечения;
- установка/запуск ПО;
- разработка инструкций и правил работы с программой;
- разработка алгоритмов, решающих задачи предприятия/заказчика;
- разработка специальных форм документов;
- обнаружение/исправление ошибок в выпущенном ПО;
- тестирование программ.
![Карьера программиста](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_2.jpg)
Карьера программиста
![Сферы применения программирования Наиболее популярными направлениями программирования являются в наше время следующие направления: веб-разработка; разработка мобильных приложений; разработка компьютерных игр; разработка приложений для десктопов. Нельзя сказать, что за каждым из них жестко закреплены те или иные языки программирования. Например, на Java, C# можно успешно писать программы любой из перечисленных категорий.](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_3.jpg)
Сферы применения программирования
Наиболее популярными направлениями программирования являются в наше время следующие направления:
- веб-разработка;
- разработка мобильных приложений;
- разработка компьютерных игр;
- разработка приложений для десктопов.
Нельзя сказать, что за каждым из них жестко закреплены те или иные языки программирования. Например, на Java, C# можно успешно писать программы любой из перечисленных категорий.
![Сферы применения программирования Мобильная разработка And roid (Java, библиотека (SDK), Kotlin); iOS (Swift и несколько устаревший Objective-C) Разработка настольных приложений Используется широкий спектр ЯП и фреймворков: С++, Python в связке с Qt (простота создания оконных интерфейсов) Java – собственные возможности создания графических интерфейсов (AWT, Swing, JavaFX) JavaScript в связи с фреймворками Electron, Node Webkit. Веб-разработка Существует две специализации: фронтенд – написание программ, работающих на стороне клиента – браузер (HTML, CSS, JavaScript, Ruby, C# и др) Бэкенд – написание кода, работающего на стороне веб сервера (Java, Python, PHP) Разработка игр Раньше– C, C++, Java. Сейчас «движки» – программные ядра с готовыми физическими моделями Например, Unity, в связке с C#, JavaScript](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_4.jpg)
Сферы применения программирования
Мобильная разработка
And roid (Java, библиотека (SDK), Kotlin);
iOS (Swift и несколько устаревший Objective-C)
Разработка настольных приложений
Используется широкий спектр ЯП и фреймворков:
- С++, Python в связке с Qt (простота создания оконных интерфейсов)
- Java – собственные возможности создания графических интерфейсов (AWT, Swing, JavaFX)
- JavaScript в связи с фреймворками Electron, Node Webkit.
Веб-разработка
Существует две специализации:
- фронтенд – написание программ, работающих на стороне клиента – браузер (HTML, CSS, JavaScript, Ruby, C# и др)
- Бэкенд – написание кода, работающего на стороне веб сервера (Java, Python, PHP)
Разработка игр
Раньше– C, C++, Java.
Сейчас «движки» – программные ядра с готовыми физическими моделями
Например, Unity, в связке с C#, JavaScript
![Уровни языков программирования Важное примечание важное примечание](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_5.jpg)
Уровни языков программирования
Важное примечание важное примечание
![Уровни языков программирования Высокоуровневые языки](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_6.jpg)
Уровни языков программирования
Высокоуровневые языки
![Формальные и естественные языки Язык, на котором говорят люди. Например, русский, английский, китайский и т.п. Естественные языки не были разработаны людьми, они развивались естественным путём. Данный язык разрабатывается людьми для определённых целей. Например, язык математических символов - это формальный язык, который придуман для обозначения отношений между числами, для записи формул. Или язык нот, который придуман для записи музыки на бумагу.](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_7.jpg)
Формальные и естественные языки
Язык, на котором говорят люди. Например, русский, английский, китайский и т.п. Естественные языки не были разработаны людьми, они развивались естественным путём.
Данный язык разрабатывается людьми для определённых целей. Например, язык математических символов - это формальный язык, который придуман для обозначения отношений между числами, для записи формул. Или язык нот, который придуман для записи музыки на бумагу.
![Формальные и естественные языки Языки программирования - это формальные языки, предназначенные для записи алгоритмов и вычислений в виде программы. Формальные языки обычно имеют строгие синтаксические правила (правила языка), которым безоговорочно подчиняется структура кода. Например, в математика выражение 3 + 2 = 5 имеет правильный синтаксис. А вот 3 + 2 равно 5 имеет НЕ правильный синтаксис](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_8.jpg)
Формальные и естественные языки
Языки программирования - это формальные языки, предназначенные для записи алгоритмов и вычислений в виде программы.
Формальные языки обычно имеют строгие синтаксические правила (правила языка), которым безоговорочно подчиняется структура кода.
Например, в математика выражение 3 + 2 = 5 имеет правильный синтаксис.
А вот 3 + 2 равно 5 имеет НЕ правильный синтаксис
![Формальные и естественные языки Программа – это описание на формальном языке, «понятном» компьютеру, последовательности действий, которые необходимо выполнить над данными для решения поставленной задачи.](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_9.jpg)
Формальные и естественные языки
Программа – это описание на формальном языке, «понятном» компьютеру, последовательности действий, которые необходимо выполнить над данными для решения поставленной задачи.
![Программа как вид информационной модели Информационная модель – описание объектов или процессов с помощью набора величин и/или изображений, содержащих необходимую информацию об исследуемых объектах или процессах. Информационные модели представляют объекты и процессы в образной или знаковой форме.](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_10.jpg)
Программа как вид информационной модели
Информационная модель – описание объектов или процессов с помощью набора величин и/или изображений, содержащих необходимую информацию об исследуемых объектах или процессах. Информационные модели представляют объекты и процессы в образной или знаковой форме.
![Программа как вид информационной модели Компьютерная модель – это представление объектов, процессов, явлений средствами специальных компьютерных программ: графических, анимационных редакторов, табличных процессоров, программ для создания баз данных, специализированных компьютерных тренажеров-симуляторов, виртуальных лабораторий.](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_11.jpg)
Программа как вид информационной модели
Компьютерная модель – это представление объектов, процессов, явлений средствами специальных компьютерных программ: графических, анимационных редакторов, табличных процессоров, программ для создания баз данных, специализированных компьютерных тренажеров-симуляторов, виртуальных лабораторий.
![Программа как информационный процесс Информационные процессы — это действия над информацией или с ней.](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_12.jpg)
Программа как информационный процесс
Информационные процессы — это действия над информацией или с ней.
- Получение;
- Передача информации;
- Хранение информации;
- Обработка информации.
![Понятие «алгоритм» Алгоритм – описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов.](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_13.jpg)
Понятие «алгоритм»
Алгоритм – описание последовательности действий (план), строгое исполнение которых приводит к решению поставленной задачи за конечное число шагов.
![Понятие «алгоритм» Стадии создания алгоритма: Алгоритм должен быть представлен в форме, понятной человеку, который его разрабатывает. Алгоритм должен быть представлен в форме, понятной тому объекту (в том числе и человеку), который будет выполнять описанные в алгоритме действия. Исполнитель - объект, который выполняет алгоритм.](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_14.jpg)
Понятие «алгоритм»
Стадии создания алгоритма:
Алгоритм должен быть представлен в форме, понятной человеку, который его разрабатывает.
- Алгоритм должен быть представлен в форме, понятной тому объекту (в том числе и человеку), который будет выполнять описанные в алгоритме действия.
Исполнитель - объект, который выполняет алгоритм.
![Элементы блок-схемы](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_15.jpg)
Элементы блок-схемы
![Элементы блок-схемы](http://fsd.mir-olymp.ru/html/2023/02/19/i_63f1b3bc86347/img_php81T4sV_16.jpg)
Элементы блок-схемы