Основні компоненти програми для ОС з графічним інтерфейсом


     Інтерфейс - це комплекс засобів і правил взаємодії між окремими елементами однієї системи.
Інтерфейс користувача або користувацький інтерфейс - різновид інтерфейсів, в якому одна сторона представлена ​​людиною(користувачем), інша -  машиною/пристроєм. Являє собою сукупність засобів і методів, за допомогою яких користувач взаємодіє з різними, найчастіше складними, машинами чи пристроями.
     Командний рядок Windows - приклад інтерфейсу. Користувач вводить команди, система реагує - виконує команди і видає повідомлення.
     Але головне, це графічний інтерфейс Windows. Усе представлено у вигляді графічних об'єктів(вікон, кнопок, меню тощо), за допомогою них відбувається взаємодія між нами і комп'ютером. Маніпулюючи графічними об'єктами,  ми подаємо команди, комп'ютер їх виконує, видає повідомлення. Ми на його дії теж реагуємо. Так відбувається "спілкування", взаємодія.

Кожного разу, коли запускається програма з графічним інтерфейсом, на екрані з'являються пов'язані з нею графічні об'єкти.
     Коли ми запускаємо редактор IDLE, на екрані з'являється багато графічних об'єктів, наприклад, вікно і стрічка меню
меню, що розкривається,
кнопки та полоса прокрутки
Програма IDLE повністю написана на Python з використанням компонентів Tkinter.

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


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


Цикли, розгалуження, функції - усе це елементи так званого структурного програмування. Для написання невеликих програм можливостей структурного програмування зазвичай достатньо. Однак великі проекти, роботу над якими ведуть групи людей, набагато раціональніше виконувати використовуючи парадигму об'єктно-орієнтованого програмування. Чому? Це ми з'ясуємо пізніше. ООП - абревіатура (скорочена назва) об'єктно-орієнтованого програмування.
Отже, що ж таке ООП? Судячи з назви, ключову роль в цій парадигмі грає якийсь об'єкт, а точніше безліч об'єктів. Реальний світ складається з об'єктів і їхніх взаємодій між собою. В результаті взаємодій об'єкти можуть змінюватися самі або змінювати інші об'єкти. Тому, можна сказати, що ООП є більш природним в якомусь сенсі.
У світі можна умовно виділяти різні системи, що реалізують певні цілі (змінюються з одного стану в інший). Наприклад, група на занятті. Це система, що складається з таких об'єктів як діти, учитель, столи, комп'ютери, проектор тощо. В цієї системи можна виділити основну мету - збільшення частки знань дітей на якусь величину. Щоб досягнути мети, об'єкти системи повинні певним чином взаємодіяти між собою.
      Приклад із заняттям - це свого роду програма. Припустимо, що якомусь «глобального програмісту» потрібно було, щоб на планеті люди володіли великими знаннями. Для цього він придумав спеціальну програму, яка вбирає на вході людей з N-кількістю знань, а на виході повертає з N+1 кількістю знань. Він наділив певними здібностями об'єкти цієї системи, щоб можна було досягти результату. Так, грубо кажучи, «об'єкти-діти» здатні сприймати інформацію, «об'єкт-учитель» - її транслюють, «об'єкти-предмети» допомагають сприймати і транслювати. Незважаючи на те, що всі учні так чи інакше здатні сприймати інформацію, вони різні за своїми властивостями (за швидкістю і об'ємом сприйняття, способам обробки знань). Виконання програми може відбуватися приблизно таким чином: «об'єкт-учитель», використовуючи «об'єкт-дошка», «об'єкт-комп'ютер», «об'єкти-картинки», передає інформацію «об'єктам-дітям». Ті, в свою чергу, приймають інформацію та змінюють свою властивість «кількість знань». На виході ми отримуємо «об'єкти-діти» з новими властивостями (більшими знаннями). 

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

За допомогою середовища Python розв’язати задачі:

     1.      Учень-невдаха Сашко сів виконувати домашнє завдання і просидів за столом 2 години. З них х  хвилин він чухав потилицю і дивився у вікно, у  хвилин шукав у письмовому столі гумку, щоб стерти у підручнику з англійської мови карикатуру на свого товариша, на малювання якої він витратив перед цим  z  хвилин. Решту часу Сашко перекладав англійські слова. Скільки слів він встиг перекласти, якщо переклад одного слова у нього займав хвилин?
     2.      Якщо на одну шальку терезів посадити Даринку, яка важить n  кг, і Тетянку, яка важить на кг більше, а на іншу насипати m  кг цукерок, то скільки кілограм цукерок доведеться з'їсти дівчаткам, щоб шальки терезів врівноважились? Дівчатка можуть брати цукерки лише з великої цукерниці, а не з іншої шальки терезів.
    3.      Петро задумав число і нікому його не назвав. Друзі спіймали його і примусили подвоїти задумане число, а потім додати до нього 5. І тільки після того, як вони пообіцяли Петрові благодійну допомогу на контрольній з математики, він зізнався, що вийшло число n. Визначте, яке число задумав і приховав від своїх друзів Петро.
      4.      Із тераріуму втекли х  гадюк, у  кобр та z  гюрз. Довжина кожної гадюки 1 м, кожної кобри - 1 м 30 см, а гюрзи - 1 м 15 см. Яка довжина у сантиметрах отруйних змій втекла з тераріуму?

Комментариев нет:

Отправить комментарий