1 of 34

Сучасні мови програмування

Нова українська школа

Урок 33

Інформатика 8

teach-inf.com.ua

за підручником

Бондаренко О.О. та ін.

2 of 34

Повторюємо

У 5-7 класі ви вже опанували основи програмування мовою Python.

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

3 of 34

Повторюємо

Знаєте, як мовою Python реалізувати базові алгоритмічні структури, і вмієте створювати програми з використанням:

Слідування

Повторення

Розгалуження

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

4 of 34

Повторюємо

У курсі 7 класу ви розширили уявлення про типи величин і алгоритми опрацювання даних різних типів.

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

5 of 34

Повторюємо

Ви також:

  • оволоділи прийомами роботи в середовищі програмування IDLE
  • навчилися вести діалог в інтерактивному режимі у вікні консолі
  • створювати у вікні програми програмний код і зберігати його для подальшого використання

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

6 of 34

Повторюємо

  1. Що таке тип величини?
  1. Із якими типами даних ви працювали?
  1. Які базові алгоритмічні структури використовуються при конструюванні алгоритмів?
  1. Які види вікон використовують у IDLE?
  1. Опишіть алгоритм створення програмного коду.
  1. Які повідомлення з'являються у вікні консолі?

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

7 of 34

Сучасні мови програмування

Історія створення мов програмування розпочалася в XIX ст., бурхливо розвивалась у XX — із появою ЕОМ.

За цей час створено близько 9000 мов програмування та їх модифікацій.

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

8 of 34

Програма та мова програмування

Розв’язування задач полягає в розробці алгоритму у вигляді програмного коду. Тож пригадаємо основні означення.

Програма — це алгоритм, який записано мовою програмування та призначено для розв’язування певного завдання на комп’ютері. Команди в програмі (програмному коді) подаються мовою програмування.

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

9 of 34

Програма та мова програмування

Мова програмування — це штучна мова, що становить систему позначень і правил для запису алгоритмів у формі, придатній для їх виконання комп’ютером.

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

10 of 34

Програма та мова програмування

Будь-яка мова програмування має такі основні складові:

Алфавіт мови

Синтаксис мови

Семантика мови

Набір символів, із яких утворюються команди

та інші мовні конструкції

Правила побудови

команд мови програмування

Правила виконання команд, записаних мовою програмування

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

11 of 34

Програма та мова програмування

Під час створення програм використовуються такі символи:

  • літери латинського алфавіту: A...Z, a...z
  • цифри: 0...9
  • знаки арифметичних операцій, спеціальні символи: + — * / \ ^ = < > ( ) . , : ; ‘ # _
  • комбінації символів: <=, >=, <>, = =; !=, **
  • службові слова, що мають фіксований зміст: and, elif, if, for, while, as, else, import тощо

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

12 of 34

Програма та мова програмування

Вважають, що теоретичні основи програмування заклала британська науковиця Ада Августа Лавлейс, яка розробила перші програми для аналітичної машини Чарлза Беббіджа.

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

13 of 34

Класифікація мов програмування

Розглянемо розподіл мов за основними ознаками

За рівнем�абстракції

Мови низького рівня

Мови високого рівня

Мови надвисокого рівня

За галуззю застосування

Універсальні

Спеціалізовані

Езотеричні

За парадигмою програмування

Об’єктно-орієнтовані

Процедурні

Функціональні тощо

Мови програмування

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

14 of 34

Класифікація мов програмування

Розподіл за рівнем абстракції

Першими (у 40-х роках XX ст.) створено мови низького рівня — машинно-орієнтовані, тобто зорієнтовані на конкретні тип процесора й архітектуру комп’ютера. Наприклад, машинний код і мова асемблера.

Мови програмування низького рівня

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

15 of 34

Класифікація мов програмування

Програмування на них вимагає від програміста керування пам’яттю й апаратними ресурсами. Це як зводити будинок цеглина за цеглиною. Мови низького рівня використовують для програмування мікроконтролерів або системного програмного забезпечення, де потрібна висока швидкодія.

Машинний

код

10100001

10001011

00011011

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

16 of 34

Класифікація мов програмування

Розподіл за рівнем абстракції

Нагадують людську мову: для побудови команд вони використовують звичайні слова або скорочення (зазвичай із англійської мови).

Мови високого і надвисокого рівнів

Програмування на таких мовах дає можливість людині не зважати на особливості апаратних засобів, а зосередитися на логіці програми. Це як зводити будинок із готових блоків.

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

17 of 34

Класифікація мов програмування

Програми, розроблені на мовах високого і надвисокого рівнів, можна виконувати на будь-яких комп’ютерах, для яких існують транслятори вибраної мови.

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

18 of 34

Ознайомтесь з цікавою інформацією

Перша мова високого рівня, що набула широкого визнання серед фахівців, — Fortran. Її розроблено в 1954 році в електронній корпорації IBM (США).

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

19 of 34

Класифікація мов програмування

Універсальні мови використовуються для розв’язування різних завдань. До універсальних мов належать мови:

За галуззю застосування

Python

C/C++

Java та ін.

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

20 of 34

Класифікація мов програмування

Спеціалізовані мови — для розв’язування завдань певного типу або галузі, наприклад, вебпрограмування. До спеціалізованих мов належать мови:

За галуззю застосування

Perl

VBScript

JavaScript та ін.

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

21 of 34

Класифікація мов програмування

Езотеричні — експериментальні, іноді створені для розваги, проте багато з них є повноцінними мовами програмування.

За галуззю застосування

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

22 of 34

Класифікація мов програмування

Систему ідей і понять, які визначають стиль написання комп’ютерних програм, а також як програміст уявляє роботу програми, називають парадигмою програмування. Парадигм існує ціла низка, а більшість мов програмування (зокрема й Python) підтримують декілька з них.

За парадигмами програмування

Ви вже використовували елементи парадигм:

структурної

процедурної

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

23 of 34

Класифікація мов програмування

За структурної парадигми програма розглядається як послідовність дій.

Базовими поняттями структурного програмування є:

що задає дію з опрацювання даних

команда (інструкція)

які керують послідовністю виконання команд; кожна з конструкцій має один вхід і один вихід

базові алгоритмічні конструкції

якій можна присвоїти значення

змінна

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

24 of 34

Класифікація мов програмування

За процедурної парадигми програма складається з окремих блоків команд — процедур або функцій. Це дозволяє використовувати певний фрагмент коду багато разів, записавши його один раз і надавши назву.

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

25 of 34

Класифікація мов програмування

За об’єктно-орієнтованої парадигми програма розглядається як сукупність об’єктів, що взаємодіють між собою. Об’єкт має набір властивостей, здатний виконувати певний набір дій над даними і може реагувати на події, які з ним відбуваються.

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

26 of 34

Класифікація мов програмування

За декларативної парадигми програма у певний спосіб описує, що потрібно отримати як результат, а не як це треба зробити. Тому декларативне програмування часто називають описовим.

Так, декларативним є опис вебсторінок на HTML — теги описують, що містить сторінка й що має відображатися (заголовок, шрифт, текст, зображення), але не містять інструкцій, як її слід відображати.

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

27 of 34

Класифікація мов програмування

Прикладами декларативних мов є також:

мова логічного програмування Prolog

мова опису запитів до баз даних SQL

мова опису документів XML тощо

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

28 of 34

Інтерпретація та компіляція програм

Для перекладу програм із мов програмування високого та надвисокого рівнів на машинну мову застосовують спеціальні програми — транслятори.

Вони поділяються на дві категорії:

інтерпретатори

компілятори

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

29 of 34

Інтерпретація та компіляція програм

Інтерпретатор перетворює невеликий фрагмент програмного коду на машинний код, який процесор одразу виконує. Далі інтерпретується наступний фрагмент програмного коду. Машинний код не зберігається для повторного виконання.

Прикладом надвисоко-рівневої інтерпретованої мови є Python.

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

30 of 34

Інтерпретація та компіляція програм

Компілятор перетворює відразу всю програму на машинні коди і вміщує їх у пам’ять комп’ютера, не виконуючи. Скомпільовану програму можна зберегти для подальшого використання.

Збережений результат компіляції називають виконуваним файлом (наприклад, із розширенням *.ехе в ОС Windows).

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

31 of 34

Питання для самоперевірки

  1. Опишіть базові алгоритмічні структури, на яких ґрунтується парадигма структурного програмування.
  1. Поясніть різницю між інтерпретатором і компілятором.
  1. Які парадигми програмування підтримує мова Python?
  1. Знайдіть в інтернеті інформацію про рейтинг мов програмування. Обговоріть у групах, які мови є найпопулярнішими в професійному програмуванні.

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

32 of 34

Розгадайте ребус

Компіляція

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

33 of 34

Домашнє завдання

Проаналізувати

с. 150-155

Розділ 5

§ 24

© Вивчаємо інформатику teach-inf.com.ua

34 of 34

Успіхів�у навчанні!

Нова українська школа

Урок 33

Інформатика 8

teach-inf.com.ua

за підручником

Бондаренко О.О. та ін.