Ім'я файлу: Лекція 2.Мови програмування.docx
Розширення: docx
Розмір: 26кб.
Дата: 15.02.2022
скачати
Пов'язані файли:
Конспекти уроку з фізкультури.docx
дз на 18.03.2021.odt
як я розумію.doc
Ревматизм1, лекція із през..doc
40 ідей.docx
Covid 19.docx
Екзаменаційні білети 1-10 ФІКТ 1 курс 1 сем 2017-2018.doc
Лаб_1.docx
Методичка ЦП_лабораторні.pdf
курсова з лісівн. Горголь.docx
Документ без назви (1).docx

Лекція 2. Сутність і мови програмування, особливості мови Python.
1. Види програм і виконувані ними функції.

2. Типи мов програмування і виконувані ними функції

3. Налагодження програми і усунення помилок

4. Основні поняття мови програмування Python
1. Види програм і виконувані ними функції.

Як вже було зазначено, всі можливості роботи комп’ютера забезпечуються програмами.

На попередній лекції було зазначено, що алгоритм може бути розроблений та реалізований на основі комп’ютерної програми.

Таким чином, якщо перефразувати, програма – це послідовність машинних інструкцій, що описує алгоритм.

Сукупність комп’ютерних програм складає програмне забезпечення процесу обробки інформації. Програмне забезпечення можна розділити на три основні частини:

системне, інструментальне і прикладне

Системне програмне забезпечення призначене для:

– управління роботою комп’ютера;

– розподілу його ресурсів;

– підтримки діалогу з користувачем

- забезпечення роботи операційної системи;

- автоматизації процесу розробки та відлагодження програм;

- перекладу мов високого рівня програмування на коди комп’ютера;

- архівація файлів тощо – утиліти;

- забезпечення роботи периферійних пристроїв – драйвери.

Інструментальне забезпечення слугує для розробки пакетів програм, що застосовуються в різних областях знання. В групу інструментальних програм входять:

- транслятори з різних алгоритмічних мов, які переводять текст програми на машинну мову;

- налагоджувачі з допомогою яких знаходять і виправляють помилки, які були допущені при написанні програми;

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

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

- прикладне програмне забезпечення загального призначення, до якого відносяться ті програми, які широко використовуються різними категоріями користувачів (текстові редактори, електронні таблиці, системи управління базами даних, графічні редактори);

- прикладне програмне забезпечення спеціального призначення, до якого відносяться програми, які мають специфічне призначення (засоби розробки програм, статистичні обчислення, мережеві зв’язки тощо).

У категорію засобів розробки програм відносять всі програми, що використовуються для розробки нових програм:

- редактори вихідних текстів (зазвичай забезпечують підсвітку (виділення деяких елементів тексту, що мають значення для користувача: дужки, службові слова та ін.) і перевірку синтаксису програмних конструкцій, що вводяться;

- транслятори: забезпечують запуск програм;

- налагоджувані: призначені для пошуку помилок в програмах та їх виправлення;

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


Програмне забезпечення





Системне:

- управління роботою комп’ютера;

– розподіл ресурсів комп’ютера;

– підтримка діалогу з користувачем

- забезпечення роботи операційної системи;

- автоматизація процесу розробки та налагодження програм;

- переклад мов високого рівня програмування на коди комп’ютера;

- архівація файлів тощо – утиліти;

- забезпечення роботи периферійних пристроїв – драйвери.


Інструментальне:

- транслятори переводять текст програми на машинну мову;

- налагоджувачі забезпечують знаходження і виправлення помилок програмування;

- інтегровані середовища інтегрують редактори з налагоджувачами програм.



Прикладне:

- загального призначення (текстові редактори, електронні таблиці, системи управління базами даних, графічні редактори тощо);

- спеціального призначення (засоби розробки програм, статистичні обчислення, мережеві зв’язки)



Засоби розробки програм:

- редактори;

- транслятори;

- налагоджувані;

- профайлери (виявляють найбільш повільний або вимогливий до ресурсів блок програми).




Рис. 1. Види програмного забезпечення

2. Типи мов програмування і виконувані ними функції

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

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

Мови програмування – штучні мови. Від природних вони відрізняються обмеженою кількістю "слів", значення яких зрозуміло транслятору, строгими правилами запису команд-операторів. Сукупність подібних вимог формує синтаксис мови програмування, а сенс кожної команди та інших конструкцій мови – його семантику. Отже, програма, з якою працює процесор, являє собою послідовність чисел, яку називають машинним кодом. Такий запис містить лише номери команд процесора, необхідні дані та адреси комірок пам’яті. Для зручності двійкові дані найчастіше записуються у шістнадцятирічній формі, де 2 символи відповідають 1 байту даних.

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

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

Існує два типи трансляторів, що перетворюють вихідний код програм в машинні команди: інтерпретатори та компілятори.

Інтерпретатор зчитує вихідний код програми по одній інструкції і, в найпростішому випадку, одразу намагається їх "перекладати" та виконувати. Така програма може бути легко перенесена на іншу машину і, якщо там є потрібний інтерпретатор, виконана ним – незалежно від операційної системи та процесора. А різницю між особливостями різних комп’ютерів покриває сам інтерпретатор, який, звичайно, буде трохи відрізнятися. Логічно, що в такій схемі виконання програми буде займати трохи більше часу – так як при цьому кожного разу відбувається аналіз коду та його перетворення. Тому для підвищення швидкодії більшість сучасних інтерпретаторів насправді працює за змішаною схемою, спочатку транслюючи вихідний код програми у деяку проміжну форму – так званий байт-код. Він є кодом нижчого рівня і ближчий до асемблеру, але машинно-незалежний

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

Програма:

- оператор 1

- оператор 2

- …..

- оператор N

Програма:

- оператор 1

- оператор 2

- …..

- оператор N








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













Транслятори






Інтерпретатор

Компілятор





Машинний код


Рис. 2. Принцип роботи трансляторів програм
Такі програми виконуються швидше за рахунок того, що комп’ютеру не доводиться кожен раз перед запуском програми виконувати її розбір і перетворення в зрозумілий для себе вигляд. Однак, при сучасних потужностях комп’ютерів і обсягах пам’яті різниця в швидкості виконання програм інтерпретаторами і компіляторами вже майже непомітна
3. Налагодження програми і усунення помилок

Програмування – досить складний процес, і цілком природно, коли програміст припускається помилки. Так повелося, що програмні помилки називають "багами" (від англ. bug – жучок). Процес виявлення і усунення помилок в англомовній літературі прийнято позначати терміном debugging. Процес пошуку помилок в програмі називається тестуванням (testing), процес усунення помилок – налагодженням (debugging). Уміння налагоджувати програми є дуже важливим навиком для програміста.

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

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

Останнім часом все більшої популярності набувають так звані гнучкі методології розробки. У них кодування не відділяється від налагодження: програмісти, які пишуть код, також відповідають і за підготовку тестів і виявлення якомога більшої кількості помилок вже в процесі кодування.

Існує три типи помилок, які можуть виникнути в програмах: синтаксичні помилки, помилки виконання і семантичні помилки. Будь-який інтерпретатор зможе виконати програму тільки в тому випадку, якщо програма синтаксично правильна. Відповідно компілятор теж не зможе перетворити програму в машинні інструкції, якщо програма містить синтаксичні помилки.

Другий тип помилок зазвичай виникає під час виконання програми (їх прийнято називати винятковими ситуаціями або, коротко – винятками, англ. exceptions).

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


Помилки программного забезпечення






Синтаксичні

При виконанні

Семантичні













Методи виправлення помилок

Виправлення за допомогою редактора

Виправлення в процесі виконання розрахунків

Виправлення по результатах розрахунків


Рис. 3. Види помилок програмного забезпечення та методи ъх усунення

4. Основні поняття мови програмування Python

Python – молода сценарна мова, історія якого почалася в 1990 році, коли співробітник голандського інституту CWI, тоді ще мало кому відомий Гвідо ван Росум приймав участь в проекті створення мови АВС. Ця мова була призначена для заміни мови BASIC

Інтерпретатори Python існують під всі можливі платформи: Windows. UNIX та ін. Всі вони розповсюджуються безкоштовно.

Головна проблема використання даної мови програмування – не така висока швидкодія. Іноді більш якісний алгоритм (покрокове рішення) для Python перевершує за швидкістю неефективний алгоритм для С. Більш висока швидкість розробки для Python дає більше часу для експериментів над альтернативними рішеннями.

Іноді більш якісний алгоритм (покрокове рішення) для Python перевершує за швидкістю неефективний алгоритм для С. Більш висока швидкість розробки для Python дає більше часу для експериментів над альтернативними рішеннями.

Лаконічна мова.

Популярна.
скачати

© Усі права захищені
написати до нас