Студопедия
Новини освіти і науки:
МАРК РЕГНЕРУС ДОСЛІДЖЕННЯ: Наскільки відрізняються діти, які виросли в одностатевих союзах


РЕЗОЛЮЦІЯ: Громадського обговорення навчальної програми статевого виховання


ЧОМУ ФОНД ОЛЕНИ ПІНЧУК І МОЗ УКРАЇНИ ПРОПАГУЮТЬ "СЕКСУАЛЬНІ УРОКИ"


ЕКЗИСТЕНЦІЙНО-ПСИХОЛОГІЧНІ ОСНОВИ ПОРУШЕННЯ СТАТЕВОЇ ІДЕНТИЧНОСТІ ПІДЛІТКІВ


Батьківський, громадянський рух в Україні закликає МОН зупинити тотальну сексуалізацію дітей і підлітків


Відкрите звернення Міністру освіти й науки України - Гриневич Лілії Михайлівні


Представництво українського жіноцтва в ООН: низький рівень культури спілкування в соціальних мережах


Гендерна антидискримінаційна експертиза може зробити нас моральними рабами


ЛІВИЙ МАРКСИЗМ У НОВИХ ПІДРУЧНИКАХ ДЛЯ ШКОЛЯРІВ


ВІДКРИТА ЗАЯВА на підтримку позиції Ганни Турчинової та права кожної людини на свободу думки, світогляду та вираження поглядів



ЛЕКЦИЯ №1

Вступ

Лекція №1

НЕ 1.1. Мета і задачі дисципліни.Основні розділи комп‘ютерних наук. Місце мов програмування в інформаційних технологіях. Курс «Конструювання програм та мови програмування» логічно продовжує вивчення комп‘ютерних дисциплін, започатковане предметом «Інформатика». Головна мета курсу - сформувати знання, що необхідні для свідомого, раціонального і ефективного використання сучасних програмних продуктів як загального, так і спеціального призначення. Об‘єм курсу - 36 аудиторних годин лекцій і 18 аудиторних годин лабораторних робіт. Дисципліна вивчається на протязі 1 семестра. Зрозуміло, що за такий короткий термін неможливо навчитись створювати професійнні програмні продукти. Така задача і не ставиться. Але: для того, щоб користуватись наявним (розробленим професійними програмістами) програмним забезпеченням, необхідно мати уяву про те, як це працює. Необхідно підкреслити, що в межах даного курсу будуть вивчатись тільки основні принципи конструювання програм, такі як: машинні команди і машинна мова (низького рівня); основи теорії алгоритмів; порівняльний аналіз мов програмування високого рівня С, С++, Pascal, Fortran на прикладі простої програми; основні концепції програмування, технологічні вимоги до розробки і якості програмного забезпечення. Особлива увага буде напрямлена на об‘єктно-орієнтоване програмування як на найбільш прозорий, наочний і ефективний шлях отримання результатів як в обчислювальних, так і в графічних задачах. З урахуванням специфіки спеціальностей «Інженерна геодезія» та «Землевпорядкування та кадастр», а саме - великий об‘єм картографічного матеріалу, більш докладно, ніж інші розділи курсу, буде розгянуто питання програмування графіки. Базовим для вивчення основ візуального програмування обране інтегральне середовище Delphi, критерієм для вибору саме цієї системи є вивчення мови Pascal в курсі «Інформатика». Теоретичний курс буде завершено оглядовими лекціями, присвяченими основам проектування інтелектуальних систем, таким як системи розпізнавання образів і нейронні мережі.

Основні розділи комп‘ютерних наук. Комп‘ютерні науки ( або більш поширений в Україні термін - інформатика) - це комплекс теоретичних і практичних знань, який використовують в своїй роботі спеціалісти в області обчислювальної техніки, програмування, інформаційних систем і технологій. На даний час в комп‘ютерних науках зазвичай відокремлюють 11 основних напрямків.

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

· Мови програмування. Вивчає засоби запису алгоритмів і даних.

· Архітектура комп‘ютерів. В цей розділ відносять цифрову логіку, булеву алгебру, теорію кодування інформації.

· Операційні системи і комп‘ютерні мережі. Вивчає механізми керування обчисленнями, які розподілені по багаточисельних комп‘ютерних системах, що об‘єднані в локальні та глобальні мережі.

· Розробка програмного забезпечення.Створення великих програмних систем з виконанням наступних вимог: відповідають критеріям замовника, безпечні, захищені, надійні, з дружнім інтерфейсом.

· Бази даних і інформаційно-пошукові системи.Організація великих наборів даних, що постійно зберігаються і використовуються, із забезпеченням ефективного доступу до них ( ефективного виконання запитів на отримання інформації).

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

· Комп‘ютерна графіка.Візуальне представлення реальних і віртуальних об‘єктів, імітація руху об‘єктів на площині та в просторі.

· Взаємодія людини і комп‘ютера.Ця область займається питаннями ефективної координації дій та передачі інформації між людьми та машинами (інтерфейс користувача).

· Обчислювальна математика.Розробка теоретичної бази для організації обчислювальних процесів, що потребують великої кількості обчислень, відповідно - машинного часу і ресурсів комп‘ютера.

· Ділова інформатика.Питання обміну інформацієй і створення програмних систем для роботи підприємств і координації дій співробітників.

В даній класифікації мови програмування трактуються як засоби для запису алгоритмів та даних. Значення мов програмування високого рівня полягає в тому, що вони дозволяють записувати алгоритми в формі, що сприйнятна для людини, і в той же час є достатньо зручною для перетворення в інструкції машинного коду для виконання задачі. Мови програмування дозволяють сконцентруватись на особливостях тієї задачі, що розв‘язується ( при написанні програми на мові низького рівня програмісту необхідно слідкувати за реєстрами, адресами пам‘яті, машинними циклами, що робить взагалі неможливим створення складних систем програмного забезпечення, наприклад, операційної системи або мережного програмного забезпечення).

НЕ 1.2. Принципи алгоритмізації процесів. Значення абстракції в програмному забезпеченні. Для комп‘ютерних наук поняття алгоритму є фундаментальним. Якщо дати нестроге визначення, то алгоритм - це послідовність дій, що визначає спосіб розв‘язку деякої задачі. Точне визначення поняття алгоритм формулюється наступним чином: алгоритм - це впорядкована множина однозначних дій, що можуть бути реалізовані і визначають деякий кінцевий результат.

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

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

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

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

НЕ 1.3. Концепції програмування. Історичо склалося так, що незалежно розвивались чотири основні напрямки програмування, а саме:

· функціональний напрямок. Процес розробки програм розглядається як конструювання програмного продукта із набору так званих «чорних скринь», кожна із яких отримує на вході дані і повертає на виході результат. В математиці такі «чорні скрині» називають функціями, тому такий піхід названо функціональним. Приклад: задача обчислення середньоарифметичного для списка чисел (рис. 1.1).

 

 

Рис. 1.1 Функція обчислення середньоарифметичного, складена із трьох простих функцій

 

Перша функція Sum отримує на вхід список чисел і обчислює іх суму; друга функція Count отримує на вхід список чисел і обчислює їх кількість; третя функція Divide отримує на вхід два числа і обчислює іх частку.

· процедурний або імперативний ( імператив - вказівка) напрямок. Це традиційний підхід до процесу програмування. Визначає процес програмування як запис послідовності команд, при виконанні яких буде отриманий бажаний результат. Задача при такому підході вже з самого початку формулюється у вигляді алгоритма, який можливо реалізувати.

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

· об‘єктно-орієнтований напрямок. Застосовує методи об‘єктно-орієнтованого програмування (скорочено ООП). Інакша назва напрямку - візуальне проектування. Розвиток цього напрямку викликаний тим, що із появою операційної системи Windows та стрімким ростом її популярності стало практично неможливим створити прикладний додаток під Windows звичайними засобами програмування. Суть ООП: розробляються активні ( на відміну від функціонального напрямку) програмні модулі, вони носять назву об‘єктів. Об‘єкти мають свої властивості і вміщують процедури, що визначають реакцію модуля на різні вхідні сигнали (події). При цьому в кожній системі візуального програмування ( Visual Basic, C++ Builder, Delphi та ін.) створені бібліотеки готових об‘єктів або компонентів. Тобто не треба програмувати вікна, кнопки, панелі , інші елементи інтерфейсу - ці об‘єкти вже існують. Достатньо вибрати необхідні елементи з бібліотеки , визначити їх властивості і запрограмувати події, що з цими об‘єктами відбуваються. Наприклад: об‘єкт - мітка (Label). Використовується для відображення тексту, який не може бути змінений користувачем. Основні властивості - заголовок мітки (Caption), колір мітки (Color) та колір тексту (Font - Color), розміри. Після вибору властивостей необхідно запрограмувати реакцію мітки на таку подію, як натискання миші OnClick. Правила написання програмного коду в різних системах різні, але при використанні ООП навіть користувачі-нефахівці мають можливість створити власні програми під Windows.

НЕ 1.4. Необхідні відомості для виконання лабораторної роботи 2.1. Лабораторні роботи курсу «Конструювання програм та мови програмування» будуть виконуватись в інтегрованому середовищі Delphi. Вибір саме Delphi зумовлений тим, що програмний код пишеться на мові Object Pascal, а синтаксис запису операторів на мові Паскаль викладався в курсі «Інформатика та програмування». Планується 4 роботи: 1) розв‘язок квадратного рівняння; 2) побудова графіка функції; 3) побудова графічного примітиву (простої геметричної фігури з заливкою); 4) анімація або проста мультиплікація.

Після запуску інтегрованого середовища Delphi з‘являються такі основні елементи для роботи: головне меню (на переше заняття будуть необхідні тільки стандартні команди Save і Save As в пункті File для збереження файлів в Вашому особистому каталозі); рядок з назвами палітр компонентів (Вам поки що необхідно використовувати компоненти із Standard); вікно форми Form1; вікно редактора кода Unit1.pas (нижче форми), вікно інспектора об‘єктів Object Inspector (рис. 1.1). Форма є основою, на якій розташовуються всі компоненти, її можна розглядати як типове вікно Windows. В редакторі кода записуються оператори (команди), що визначають власне роботу додатка (програми). Інспектор об‘єктів забезпечує простий і зручний інтерфейс для зміни властивостей компонентів та керування подіями, що відбуваються (або можуть відбутися) з об‘єктами.

 

Рис. 1.1 - Вікно середовища Delphi

Приклад: створити додаток, в якому при натисканні користувача на кнопку з‘являється будь-який текст. Послідовність дій:

1. Відмітьте мишкою об‘єкт кнопка (Button, піктограма кнопки з Ok), потім натисніть мишкою в будь-якому місці на формі. На формі з‘явиться кнопка, якій Delphi по замовчуванню надасть ім‘я Button1.

2. Аналогічно винесіть на форму з тієї ж сторінки Standard мітку Label (піктограма з літерою А). Плануємо, що в процесі виконання в полі цієї мітки з‘явиться надпис. Delphi надасть мітці ім‘я Labell.

Після відмітки об‘єкта можна по бажанню змінити його розміри.

3. Розташуйте цих два об‘єкта по власному бажанню.

4. Відмітьте на формі об‘єкт Button1 - кнопку. Перейдіть в вікно Інспектора об‘єктів (зліва від форми) і поміняйте назву кнопки, для цього треба змінити властивість Caption (заголовок, назва), по замовчуванню Button1 на, наприклад, «Пуск» або «Ок». Властивості міняються в Інспекторі об‘єктів, в вікні Properties.

5. Відмітьте на формі мишкою мітку. Тепер задайте такі властивості мітки, як колір (Color) самої мітки та колір надпису, який з‘явиться в полі даної мітки (Font - Color, Font - Style - Bold (жирний шрифт) або Font - Style - Italic (курсив)). Зітріть текст властивості Caption для мітки для того, щоб назва Label1 не з‘являлась при роботі Вашої програми з початку.

6. Тепер залишилось тільки написати команду, яка б забезпечила появу текста після натискання кнопки. Натискання кнопки - це подія (Event), на яку кнопка повинна відреагувати так: змінити властивість мітки Caption (ми попередньо знищили будь-які символи в цьому полі) на текст, який задається Вами. При натискані кнопки відбувається подія, яка носить назву OnClick. Тому необхідно написати так званий обробник подій. Для цого відмітьте на формі кнопку Button1, потім перейдіть в вікно Інспектора об‘єктів, відкрийте в ньому вікно подій (Events) знайдіть подію OnClick (вона перша зверху) і зробіть подвійне швидке натискання лівої кнопки мишки (Double Click) в вікні праворуч від цієї події. Автоматично Ви перейдете в вікно редактора кода Unit1 і побачите там наступний текст:

 

procedure TForm1.Label1Click(Sender: TObject);

begin

 

end;

 

Це - процедура, що задає реакцію об‘єкта кнопка Button1 на натискання мишкою. Ім‘я процедури складається із імені класа Вашої форми TForm1, імені компонента Button1 та назви події Click без префікса On. Delphi автоматично створює заготовку для написання команд, що необхідно виконати, якщо станеться ця подія ( натискання кнопки).

Запишемо в цій процедурі оператор, що задає текст надпису мітки Label1. Цей оператор може мати вигляд:

Label1.Caption:=’Це моя перша програма!’;

Отже, повністю Ваш обробник події буде мати вигляд:

 

procedure TForm1.Label1Click(Sender: TObject);

begin

Label1.Caption:=’Це моя перша програма!’;

end;

 

Оператор, який Ви записали, означає наступне: символи := в мові Паскаль означають операцію присвоєння, в якій тому виразу, що записаний зліва, надається значення того виразу, що записаний з правого боку. В даному випадку властивості Caption об‘єкта Label1 надається значення рядкової змінної ’Це моя перша програма!’.

На цьому розробка Вашої першої програми завершена. Тепер для її виконання необхідно або натиснути команди Run-Run (головне меню в верхній частині вікна), або натиснути гарячу клавішу F9. Якщо Ви все зробили правильно, перед Вами з‘явиться вікно з кнопкою «Пуск» або «Ок», при натисканні на кнопку з‘явиться текст ’Це моя перша програма!’. Для того, щоб закрити програму, натисніть хрестик в правому верхньому куті. Ви знову перейдете в середовище Delphi. Спробуйте, наприклад, поміняти колір Вашого основного вікна. Для цього натиснить мишку на полі форми Form1, назва цього об‘єкта з‘явиться в заголовку Інспектора об‘єктів. Тепер в вікні Properties виберіть властивість Color, задайте бажаний колір. Можна також змінити розміри форми. Запустіть додаток з новими властивостями на виконання.

Збереження проекта. Зберегти проект треба командою File - Save All. При першому зберіганні Delphi зробить запит на ім‘я файла модуля (по замовчуванню Unit1.pas), потім запит на ім‘я файла проекта (по замовчуванню Project1.dpr). Імена цих файлів обов‘язково повинні бути різними. Зберігати файли необхідно в Вашому особистому каталозі.

Деякі властивості об‘ктів.

· Caption - надпис (текст, заголовок) на об‘єкті

· Cursor - тип (вигляд курсора)

· Font - шрифт. Color - колір літер; Size - розмір літер.

Style - стиль, Bold - жирний, Italic - курсив.

· Name - ім‘я об‘єкта, бажано задавати відразу після створення об‘єкта, причому треба задавати такі імена, щоб було зрозуміло, для яких дій призначено цей об‘єкт.

· ShowHint - показувати вспливаючу на декілька секунд коротку підказку, підказка з‘являється при русі курсора над цим об‘єктом.

· Hint - текст короткої підказки.

· Visible - властивість візуалізації об‘єкта. Може бути True - видимий, і False - невидимий.

Інтегроване середовище Делфі названо на честь стародавнього грецького міста в Фокіді, на схилах Парнаса. В цьому місті існував з 8 сторіччя до нашої ери храм Аполона, в якому був відомий оракул (дельфійський оракул, провидець). Вислови цього оракула оголошувала піфія (жриця). В цьому ж місті проводились спортивні змагання, які носили назву піфійських ігр. Храм з оракулом був закритий лишень в 390 році нашої ери, тобто проіснував майже 12 століть. Дельфи були загальним релігійним центром стародавніх греків.

 

 

Контрольні запитання

 

1. Поняття алгоритму.

2. Програмне і апаратне забезпечення.

3. Принципи функціонального програмування.

4. Принципи об‘єктно-орієнтованого програмування.

5. Поняття об‘єкта в ООП.

6. Які властивості об‘єктів в наведеному прикладі простої програми Ви запам‘ятали?

7. Що Ви розумієте під терміном «подія» в ООП?

 

 


Читайте також:

  1. Лекция 1
  2. ЛЕКЦИЯ 1
  3. Лекция 1.
  4. Лекция 1.
  5. Лекция 1. Введение
  6. Лекция 1. Векторная графика. Macromedia Flash MX Инструменты и технологии рисования во Flash
  7. Лекция 1. МАКРОЭКОНОМИКА. НАЦИОНАЛЬНАЯ
  8. ЛЕКЦИЯ 10
  9. Лекция 10.
  10. Лекция 11. Растворы электролитов. Электролитическая
  11. Лекция 11. Растворы электролитов. Электролитическая
  12. Лекция 11. Растворы электролитов. Электролитическая




Переглядів: 1049

<== попередня сторінка | наступна сторінка ==>
ПРИСТРОЇ ДЛЯ ЗАПУСКУ ЕЛЕКТРОДВИГУНІВ | ОСНОВНІ РІЗНОВИДИ АПАРАТІВ КЕРУВАННЯ І ПРИКЛАДИ ЇХНЬОГО ЗАСТОСУВАННЯ

Не знайшли потрібну інформацію? Скористайтесь пошуком google:

  

© studopedia.com.ua При використанні або копіюванні матеріалів пряме посилання на сайт обов'язкове.


Генерація сторінки за: 0.01 сек.