
- •Лекція №1.
- •Тема 1. Історичний і соціальний контекст програмування. Загальні принципи розробки програмних продуктів.
- •2. Застосування функцій Application Program Interface (api) для розробки програм для Windows.
- •3. Загальні відомості про об’єктно-орієнтоване програмування та автоматизацію проектування, програми програмування для Windows.
- •Лекція №2.
- •Тема 2. Введення у програмне середовище візуального програмування
- •Властивості компонентів.
- •Лекція №3.
- •2. Застосування модулів при програмуванні. Загальний вміст файлу модуля Unit1.Cpp .
- •Лекція №4.
- •Тема 4. Візуальне програмування компонентів при створенні програми.
- •Структура vcl.
- •Клас tObject.
- •Клас tPersistent.
- •Клас tComponent.
- •Клас tControl.
- •Клас tForm.
- •Клас tTimer.
- •Клас tStrings.
- •Клас tStringList.
- •Клас tFont.
- •Властивості.
- •Значення властивостей.
- •Типи властивостей.
- •Методи.
- •Лекція №5.
- •Тема 5. Подійно-орієнтована взаємодія між компонентами при створенні програми.
- •1. Взаємодія між компонентами та діями користувача при створенні програми та подальшого її використання.
- •2. Характеристика основних подій що виникають з об’єктами: OnActivate, OnClose, OnCreate, OnDestroy, OnHide, OnPaint, OnResize, OnShow, OnClick, OnDblClick, OnMouseDown, OnKeyDown, OnEnter та інші.
- •Лекція №6.
- •2. Змінні. Типизовані константи. Класифікація типів даних. Об’ява типів.
- •Модифікатори.
- •Користувацькі типи.
- •Розмір об’єктів.
- •3. Програмна схема опрацювання подій. Перетворення типів даних.
- •Зведення типів.
- •Основні визначення.
- •Області видимості змінних.
- •Правило одного визначення.
- •Лекція№ 7.
- •Тема 7. Об’єктно-орієнтований підхід до класів.
- •1. Об’єктно-орієнтований підхід. Об’єкт.
- •2. Взаємозв’язки об’єктів, класів. Поля та методи класів. Статичні, динамічні методи. Класи. Об’ява класу. Модель вказників. Методи. Події та вказники на методи.
- •3. Три групи методів. Інкапсуляція. Спадковість. Поліформізм. Конструктори і деструктори.
- •Розробка класів.
- •Поняття про конструктори і деструктори.
- •Лекція № 8.
- •Тема 8. Обробка виняткових ситуацій.
- •Механізм обробки виняткових ситуацій.
- •Обробка виняткових ситуацій.
- •2. Застосування виняткових ситуацій. Протоколювання виняткових ситуацій. Коди помилок в виняткових ситуаціях. Виняткова ситуація eAbort. Функція Assert.
- •Ієрархія виняткових ситуацій.
- •Тотальне перехоплення виняткових ситуацій.
- •Генерація виняткових ситуацій
- •Повторні виняткові ситуації.
- •Непередбачені виняткові ситуації.
- •Лекція № 9.
- •Тема 9. Візуальні компоненти бібліотеки vcl.
- •1. Бібліотека візуальних компонент vcl і її базові класи. Ієрархія базових класів. Класи: tObject, tPersistent, tComponent.
- •Візуальні та невізуальні компоненти.
- •2. Класи елементів керування: tControl, tWinControl, tCustomControl, tGraphicControl.
- •Клас форм tForm. Форми для головного вікна.
- •Форми для діалогових, інформаційних та інших вторинних вікон.
- •Модальні та немодальні вікна.
- •Основні властивості компонентів (форми).
- •Властивості, що доступні під час розробки та виконання програми.
- •Властивості, що доступні тільки під час виконання програми.
- •Основні методи компонентів (форми).
- •Основні події компонентів (форми).
- •Лекція № 10. Компоненти для введення та редагування тексту.
- •1. Клас tStrings. Властивості Text, Lines, Items.
- •2. Методи для роботи і текстом: AddString, AddObject, Assing, Equals, Delete, Move, IndexOf, Pos.
- •Введення та відображення цілих чисел.
- •Багаторядкові вікна редагування.
- •Компоненти вибору зі списків.
- •Компоненти – меню.
- •Панелі та компоненти зовнішнього оформлення.
- •Панелі загального призначення.
- •Багатосторінкові панелі.
- •Рядок стану.
- •Організація управління додатком. Список зображень.
- •3. Конструкції коду для обмеження типів символів. Конструкції коду для створення комбінацій клавіш.
- •Лекція № 11.
- •1. Принципи побудови баз даних.
- •Локальні і віддалені бази даних.
- •Створення форми для роботи з базами даних (вручну).
- •Створення форми для роботи з базами даних (майстром).
- •Створення бази даних.
- •Лекція № 12.
- •Тема 12. Створення баз даних за допомогою Database Desktop.
- •1. Створення нової таблиці. Задання полів. Задання властивостей таблиці. Створення псевдонімів баз даних у Database Desktop.
- •Створення нової таблиці.
- •2. Створення та редагування псевдонимів баз даних та каталогів.
- •Лекція № 13.
- •Тема 13. Компоненти, що використовуються у bde для зв’язку з базами даних.
- •Механізм доступ до бази даних. Псевдоніми dbe.
- •Компоненти доступу до баз даних.
- •Лекція № 14
- •Тема 14. Народження дочірніх процесів.
- •1. Потоки та клас tThread. Властивості класу.
- •2. Методи класу: DoTerminate, Execute, Resume, Suspend, Synchronize, Terminate, WaitFor. Технологія com.
- •Запуск зовнішньої програми функцією execlp.
- •Запуск зовнішньої програми функцією spawnlp.
- •Породження процесу функцією CreateProcess.
- •Лекція №15
- •Тема 15. Побудова багатовіконних програм.
- •1. Приклади розробки програми переглядання текстових файлів, графічних файлів, та відображення показів годинника.
- •2. Розробка графічного інтерфейсу користувача. Вимоги до інтерфейсу користувача додатків для Windows.
- •Багатовіконні додатки.
- •Стиль вікон додатку.
- •Колірне рішення додатку.
- •Шрифти текстів.
- •Лекція № 16.
- •Тема 16. Кросплатформне програмування для Linux.
- •1. Проект clx. Об’єктна концепція кросплатформного програмування. Бібліотека компонент clx. Подібність та різність візуальних компонент clx і vcl.
- •На рівні мови програмування.
- •На рівні прикладних програм.
- •Компонента модель .Net Framework. Типи компонентів.
- •Динамічна бібліотека dll як приклад компонента.
МІНІСТЕРСТВО ОСВІТИ І НАУКИ УКРАЇНИ
Волинський технікум
НАЦІОНАЛЬНОГО УНІВЕРСИТЕТУ ХАРЧОВИХ ТЕХНОЛОГІЙ
Відділення «Інформатики та комп’ютерної техніки»
ПОГОДЖЕНО Н на засіданні навчально-методичної ради технікуму
Протокол №. 6 від 03.06.2013 р. |
ЗАТВЕРДЖУЮ
Директор Корчук І.В. ____________ 2013р.
|
Конспект лекцій
(опорний конспект лекцій)
Навчальної дисципліни Інструментальні засоби візуального програмування
Галузь знань 0501 “Інформатика та обчислювальна техніка”
Напрям підготовки 6.050103 “Програмна інженерія”
Спеціальність 5.05010301 “Розробка програмного забезпечення”
Освітньо-кваліфікаційний рівень молодший спеціаліст
Луцьк, 2013
Лекція №1.
Тема 1. Історичний і соціальний контекст програмування. Загальні принципи розробки програмних продуктів.
План.
Етапи трансформування мов програмування: Pascal, Turbo Pascal, Turbo Vision, C++ Builder.
Застосування функцій Application Program Interface (API) для розробки програм для Windows.
Загальні відомості про об’єктно-орієнтоване програмування та автоматизацію проектування, програми програмування для Windows.
1. Етапи трансформування мов програмування: Pascal, Turbo Pascal, Turbo Vision, C++ Builder.
Прикладні програмісти пишуть власні програми, використовуючи різні мови програмування. Всі мови програмування можна умовно поділити на три основні типи: машинні мови, мови Аssembler та мови високого рівня.
Машинні мови є безпосередньо зрозумілими комп'ютерним системам і не потребують транслювання у машинні коди. Машинна мова - це внутрішня мова чітко визначеної комп'ютерної системи, яка є мало доступною для розуміння людини. Машинні мови в загальному випадку складаються із стрічок чисел, що є зрозумілими комп'ютерній системі і перетворюються нею у комбінацію одиниць і нулів двійкового числення. Машинні мови є залежними, тобто кожна машинна мова використовується лише з мікропроцесором одного визначеного типу. Кожна команда має свою цільову виконавчу адресу ( effective аddress). Так наприклад, Леланд Л. Бек у своїй спрощеній учбовій машині ілюструє як всі арифметичні команди виконуються із вмістом суматора та вмістом оперативної пом'яті. Результат обчислення залишається в суматорі. Машинний код команди завантаження суматора, її цільова адреса та завантажувальне значення наведено нижче.
Машинна команда ( шістнадцяткове значення)
Код Цільова адреса Значення, що завантажується
у регістр А
032600 3600 103000
030300 6390 000303
022030 3030 103000
010030 30 000030
003600 3600 103000
0310C303 C303 003030
2. Застосування функцій Application Program Interface (api) для розробки програм для Windows.
В подальшому розвиток процесу програмування пішов шляхом створення машинних мов, що є більш зрозумілими для людини. Замість застосування числових стрічок машинних команд програмісти починають використовувати абревіатури, схожі на англійську мову, що поступово витискають числові машинні команди. В подальшому ці абревіатури формують основу мов Аssembler (assembly languages). У мові Аssembler використовуються символьні позначення команд, які легко зрозуміти і запам'ятати. Замість послідовності двійкових кодів команд записуються їх символьні позначення, а замість двійкових адрес даних, що використовуються під час виконання команди - символьні імена цих даних, що обираються програмістом. Іноді мову Аssembler називають мнемокодом або автокодом.
Для перетворення програм, що були написані мовами Аssembler у машинні команди були розроблені спеціальні програми, які отримали назву трансляторів (assemblers). Наведемо приклад коду на мові Аssembler, що виводить символ, отриманий з клавіатури на екран монітору:
MOV DL, AL
MOV AH, 02h
INT 21h
Хоча такий код є вже більш зрозумілим людині, він залишається недосяжним для комп'ютерної системи до тих пір, доки він не буде трансльований у машинний код.
З поширенням мови Аssembler застосування комп'ютерних систем значно поширилось. Прикладні програмісти почали з успіхом поширювати процес автоматизації збирання, організації, обробки, збереження та передачі інформації. Більшість прикладних програм того періоду були написані на мові Аssembler. Це дозволяло кодувати програми значно швидше і розробляти прикладні програми, які займали невеликий об'єм оперативної пам'яті і виконувались з найбільш можливою швидкістю для існуючих на той час "повільних" комп'ютерів.
Поступово швидкодія комп'ютерів підвищувалася, об'єми програм значно збільшувались і ставали ще більш складнішими. Для створення таких програм виникла потреба у мовах програмування високого рівня (high-level languages ), таких як С, FORTRAN, ВАSІС, Pascal, Basic та інших.
Мови високого рівня виконують роль посередника між людиною і комп'ютером, надаючи людині можливість спілкуватися з комп'ютером у більш звичний для неї спосіб. Мови програмування високого рівня мають свій алфавіт, який складається з певної кількості символів, наприклад, латинських. Із цих символів складаються так звані ключові слова мови. Кожне з ключових слів виконує свою функцію так само, як і слова в звичній для нас мові. Ключові слова складаються у мовні конструкції за певним синтаксисом. Синтаксис мови програмування - це набір правил, які визначають способи побудови програм з символів алфавіту. Згідно синтаксису, правильність транслювання у машинні команди оцінюється відповідно до розробленого алгоритму мови високого рівня. Кожна синтаксична конструкція визначає певну послідовність машинних команд, які мусить виконати комп'ютер.
Кожній мові програмування високого рівня притаманна своя семантика. Семантика мови - це набір правил, згідно яких програміст кодує на даній мові програму.
Мова програмування С була розроблена як інструмент для програмістів-практиків. Відповідно до цього головною метою його автора було створення зручної і корисної в усіх відношеннях мови.
Мова С є знаряддям системного програміста і дозволяє глибоко проникати в найтонші механізми обробки інформації на ЕОМ. Хоча мова вимагає від програміста високої дисципліни, вона не є суворою у формальних претензіях і допускає короткі формулювання.
С - сучасна мова. Вона включає ті конструкції управління, які рекомендовані теорією і практикою програмування. Її структура спонукає програміста використовувати в своїй роботі низхідне проектування, структурне програмування і покрокову розробку модулів.
FORTRAN широко поширена мова, особливо серед користувачів, які займаються чисельним моделюванням. Це пояснюється декількома причинами:
- існуванням величезних фондів прикладних програм на FORTRAN, накопичених за ці роки, а також наявністю величезної кількості програмістів, що ефективно використовують цю мову;
- наявністю ефективних трансляторів FORTRAN на всіх типах ЕОМ, причому версії для різних машин достатньо стандартизовані і перенесення програм з машини на машину зазвичай не складає великих труднощів;
- початковою спрямованістю FORTRAN на фізико-математичні і технічні застосування; зокрема, це виявилося в тому, що протягом довгого часу вона залишалась єдиною мовою з вбудованим комплексним типом змінних і великим набором вбудованих функцій для роботи з такими змінними.
Більшість великих науково-технічних прикладних програм написані на мові FORTRAN тому, що вона володіє стійкістю і є портативною, має широкі обчислювальні можливості завдяки наявності вбудованих математичних і тригонометричних функцій. Додатковою, невід'ємною частиною будь-якої прикладної програми на мові FORTRAN є розширена графічна бібліотека, що дозволяє використовувати різні графічні дані і зображення.
BASIC (Beginner's All-Purpose Symbolic Instruction Code -"універсальний символічний код інструкцій для початківців") - прямий нащадок FORTRAN і, до цих пір, найпопулярніша мова програмування для персональних комп'ютерів. Розроблені могутні компілятори BASIC, які забезпечують не тільки багату лексику і високу швидкодію, але і можливість структурного програмування. На думку деяких програмістів, найцікавішими версіями є GWBASIC, Turbo-Ваsic і Quick Basic.
Свого часу появу Quick Basic ознаменувало народження другого покоління систем програмування на мові ВАSІС. Вона надавала можливість модульного і процедурного програмування, створення бібліотек, компіляції готових програм та інше, що вивело її на рівень таких класичних мов програмування, як С, FORTRAN, Pascal і інші.
Мова програмування Pascal була розроблена професором кафедри обчислювальної техніки Швейцарського Федерального інституту технології Ніколасом Віртом в 1968 році як альтернатива існуючим мовам програмування, таким як: PL/1, Аlgol, FORTRAN та інші. Інтенсивний розвиток Pascal привів до появи вже в 80-х роках його стандарту і значної кількості трансляторів цієї мови, наприклад, таких як МS-Pascal і Turbо-Pascal. З того часу Pascal стає однією з найбільш широко використовуваних мов програмування.
Істотним є те, що мова Pascal вже давно вийшла за рамки академічного і вузькопрофесійного інтересу та використовується в більшості університетів високо розвинутих країн як початкова мова програмування для навчання сучасних програмістів. Найважливішою особливістю Pascal є втілена ідея структурного програмування і концепції структури даних, як одного з фундаментальних понять.
Основні причини популярності Pascal полягають в наступному:
- простота мови дозволяє швидко його освоїти і створювати алгоритмічно складні програми;
- розвинені засоби представлення структур даних забезпечують зручність роботи як з числовою, так і з символьною та бітовою інформацією;
- наявність спеціальних методик створення трансляторів з Pascal спростила їх розробку і сприяла широкому розповсюдженню мови;
- оптимізуючі властивості трансляторів з Pascal дозволяють створювати ефективні програми. Це послужило одній з причин використання Pascal як мови системного програмування;
- у мові Pascal реалізуються ідеї структурного програмування, що робить програму наочнбю і дає хороші можливості для розробки і налагодження.
Як було зазначено, результатом появи мов високого рівня стало можливість структурування прикладних програм, що полегшує їх кодування, налагодження і тестування. Програми транслювання з мов високого рівня отримали назву компіляторів (compilers). Мови високого рівня є значно зручнішими для програмування внаслідок максимальної наближеності їх команд до англійської мови. Так, наприклад, виведення результату обчислення на екран монітора мовою Pascal може бути виконано лише однією стрічкою програмного коду: WRITELN ('X=',X);