Введення в технологію програмування.
1. Яка структура програми на мові Сі?
2. Що таке алфавіт мови програмування? Які символи входять в алфавіт Сі?
4. Які є константи в Сі? Як вони задаються?
5. Які є базові типи даних в Сі?
6. Як оголосити змінну в Сі?
7. Які операції определ ?? єни в Сі?
8. Як організувати розгалуження в Сі?
9. Як організувати цикл в Сі?
10. Що таке директиви препроцесора?
11. Перерахуйте приклади заголовків файлів стандартних бібліотек.
12. Як оголосити функцію в Сі? Як викликати функцію?
13. Що таке покажчик? Які над ним определ ?? єни операції?
14. Як працювати з масивами в Сі? Як реалізувати багатовимірний масив?
15. Що таке рядок в Сі? Згадайте деякі функції обробки рядків.
16. Які класи змінних Ви знаєте? Що таке час життя і область видимості змінної?
17. Що таке потік (stream) в програмуванні? Згадайте функції роботи з потоком.
18. Що таке об'єктно-орієнтоване програмування?
19. Як ідеї ООП реалізовані в С ++?
Технологія програмування - сукупність методів і засобів, що використовуються в процесі розробки програмних засобів.
Технологія програмування включає:
- вказівка послідовності виконання технологічних операцій;
- перерахування умов, при яких виконується операція;
- опис самих операцій;
- способи опису мо ?? їй, що використовуються на різних етапах розробок.
Розглянемо етапи становлення технології програмування.
1. Стихійне програмування (З моменту появи перших обчислювальних машин до середини 60-х років ХХ ст.)
Практично відсутні сформульовані технології, програмування було близько до мистецтва. Перші програми мали найпростішу структуру, складалися з власне програми на машинній мові і оброблюваних нею даних. Складність програм в машинних кодах обмежувалася здатністю програміста одночасно подумки відстежувати послідовність виконуваних операцій і місцезнаходження даних при програмуванні.
З поява ассемблеров стали використовувати символічні імена даних і мнемоніку кодів операцій.
Створення мов програмування високого рівня (Фортран, Алгол) спростило програмування обчислень, збільшило складність програм.
У мовах з'явилися кошти, що дозволяють оперувати подпрограммами. В результаті створені величезні бібліотеки розрахункових і службових підпрограм, які в міру нужнобності викликалися з розроблюваної програми.
Типова програма того часу складалася з основної програми, області глобальних даних і набору підпрограм. Недолік такої архітектури: при збільшенні кількості підпрограм зростала ймовірність спотворення частини глобальних даних будь-якої підпрограмою.
Щоб скоротити кількість помилок запропоновано використовувати локальні дані в підпрограма.
Поява засобів підтримки підпрограм дозволило розробляти програмне забезпечення декільком програмістам паралельно.
2. Структурний програмування (60 - 70-ті роки ХХ ст.):
Структурний підхід - уявлення завдання у вигляді ієрархії подзадач найпростішої структури. Проектування проводилося''сверху-вніз''. Вводилися обмеження на конструкції алгоритмів, рекомендувалися формальні моделі їх опису, спеціальний метод проектування алгоритмів - метод покрокової деталізації
Підтримка принципи структурного програмування закладена в основу процедурних мов програмування (PL-1, ALGOL-68, Pascal, C).
Розвиток структурування даних. У мовах з'явилася можливість определ ?? ення призначених для користувача типів даних. Почала розвиватися технологія модульного програмування.
Модульне програмування передбачає виділ ?? ення груп підпрограм, які використовують одні і ті ж глобальні дані в окремо компільовані модулі. Цю технологію підтримують сучасні версії мов Pascal і C (C ++), мови Ада і Modula.
Структурний підхід в поєднанні з модульним програмуванням дозволяє отримувати досить надійні програми, розмір яких не перевищує 100000 операторів. При збільшенні розміру програми зростає складність міжмодульних інтерфейсів. Для розробки програмного забезпечення великого обсягу запропоновано використовувати об'єктний підхід.
3. Об'єктний підхід (з середини 80-х до кінця 90-х років ХХ ст.).
Об'єктно-орієнтоване програмування - технологія створення складного програмного забезпечення, яка базується на уявленні програми у вигляді сукупності об'єктів, кожен з яких є екземпляром определ ?? енного типу (класу), а класи утворюють ієрархію з наследованіемсвойств. Взаємодія програмних об'єктів в такій системі здійснюється шляхом передачі повідомлень.
Підтримується в мовах програмування Pascal, C ++, Modula, Java. Об'єктний підхід пропонує нові способи організації програм, засновані на механізмах успадкування, поліморфізму, композиції, наповнення. Ці механізми дозволяють конструювати складні об'єкти з порівняно простих. Створюються середовища, підтримують візуальне програмування (Delphi, Visual C ++).
4. Компонентний підхід і CASE-технології.
Компонентний підхід-побудова програмного забезпечення з окремих компонентів - фізично окремо існуючих частин програмного забезпечення, які взаємодіють між собою через стандартизовані виконавчі інтерфейси.В відміну від звичайних об'єктів об'єкти - компоненти можна зібрати в динамічно викликаються бібліотеки або виконувані файли, поширювати в двійковому вигляді (без вихідних текстів) і використовувати в будь-якій мові програмування, що підтримує відповідну технологію.
Компонентний підхід лежить в основі технологій, розроблених на базі COM (компонентна модель об'єктів), і технології створення распредел ?? енних додатків CORBA (загальна архітектура з посередником обробки запитів об'єктів). Ці технології використовують подібні принципи і розрізняються лише особливостями їх реалізації.
Відмітна особливість сучасного етапу розвитку технології програмування - створення і впровадження автоматизованих технологій розробки і супроводу програмного забезпечення, які названі CASE-технологіями. Існують CASE-технології, що підтримують структурний і об'єктний (в тому числі компонентний) підходи до програмування.
Читайте також
Технології програмування Технологією програмування називають сукупність методів і засобів, що використовуються в процесі розробки програмного забезпечення. Як будь-яка інша технологія вона являє собою набір технологічних інструкцій, що включають: -. [Читати далі].
Перший етап - «стихійне» програмування (від появи перших обчислювальних машин до середини 60-х років XX ст). Перші програми мали найпростішу структуру. Вони складалися з власне програми на машинній мові і оброблюваних нею даних (рис. 1). Складність програм в. [Читати далі].