- •Кафедра твердотільної електроніки Тереля Олександра Василівна
- •Києво-Могилянської академії ”
- •Мета курсової роботи
- •Інших мов програмування
- •Розділ II.
- •2.1. База даних і субд
- •2.2. Структура бази даних
- •Розділ III. Мови запитів sql
- •Розділ IV.
- •Списку викладачів кафедри Інформаційних технологій Києво-Могилянської академії
- •4.1. Створення таблиці бази даних
- •4.2. Створення субд для отриманої таблиці
- •4.3. Створення точки входу в програму шляхом логінізації
- •Висновки
- •Список використаної літератури
Інших мов програмування
На зорі комп'ютерної цивілізації, ще задовго до появи клану IBM PC\XT\AT, на електронних конвеєрах збиралися мало сумісні обчислювальні архітектури такі як AT&T, DEC, Motorola, Bell і ін. Для кожної архітектури створювалася своя операційна оболонка, а нерідко й своя унікальна мова програмування. Для написання того й іншого використалася мова машинних команд. Обмін досягненнями в області інформаційних технологій у таких умовах був досить скрутним – з появою чогось цікавого на одній платформі - наприклад, мови ALGOL і експертних додатків на його основі - і реалізації його на інших платформах були потрібні гігантські затрати людських-годин.
У цих умовах виник проект «Unix» - проект створення універсальної операційної системи. За задумом укладачів проекту ця система повинна бути мобільною - тобто легко переносимою від однієї обчислювальної платформи до іншої - для цього її ядро повинне бути написане мовою високого рівня. Крім того вона має бути універсальною - тобто програма, розроблена під Unix на DEC VAX повинна працювати й на Unix під AT&T.
Мова для ядра Unix покинена була виявляти основну увагу до засобів досить низького рівня, що дозволяє вирішувати самі складні завдання системного програмування. У той момент аналогів такої мови не було.
Ним стала створена в 1972 році Денисом Ритчи мова С, що багато запозичила у свого попередника – BCPL. Одна з первісних цілей створення мови С – замінити розробку програм мовою Асемблера для найбільш складних завдань системного програмування.
Отже, мова створена, Unix написаний, С працює скрізь і на всьому і стає самою популярною мовою системного програмування. Створено стандарт ANSI (Американський Національний Інститут Стандартів) цієї мови.
-5-
Однак улітку 1983 р. відбувається ще один знаменний етап - Брайан Страуструп доповнює С підтримкою класів або засобами об'єктного орієнтування. Джерелом натхнення є мова Simula67. З'являється мова С++ («++» - оператор інкрементації в мові С).
З філософської точки зору виникнення мови С++ можна пояснити у такий спосіб: мова програмування переслідує дві взаємозалежні цілі: вона дає програмістові засіб визначити дії, які слід виконати, і задає набір понять, якими програміст користується, обмірковуючи можливості виконання. В ідеалі для першої мети потрібна мова, «близька до машинного», для того, щоб всі особливості комп'ютера оброблялися простими й ефективними способами, досить зрозумілими з погляду програміста. Саме це й було початковою метою створення С. Для другої мети в ідеалі потрібна мова, «близька до розв'язуваної проблеми», для того, щоб конструкції рішення можна було виразити точно й прямо. Саме це й було початковою метою створення засобів, що розширюють С до С++.
Різниця між С та С++ у першу чергу, полягає в ступені уваги до типів і структур. Основна увага до структур при проектуванні С++ відбиває ріст розміру програм із часу створення мови С. Конструкція С++ дозволяє раціонально структурувати дуже великі програми, так що програму в 25 000 рядків зможе розробити й одна людина, що на традиційному С було б важко.
С++ покликаний вирішити проблему складності при розробці великих сучасних програмних продуктів.
У цей момент багато популярних мов програмування запозичили засоби об'єктного орієнтування в С++: Pascal-Delphi, Visual Basic, Visual FoxPro, Paradox ObjectPal і ін.
-6-
1.2. Особливості та переваги мови CI++
При створенні С++ прагнули зберегти сумісність з мовою С. Більшість програм на С справно працюватимуть і з компілятором С++. С++ має синтаксис, заснований на синтаксисі С.
Нововведеннями С++ порівняно з С є:
підтримка об'єктно-орієнтованого програмування через класи;
підтримка узагальненого програмування через шаблони;
доповнення до стандартної бібліотеки;
додаткові типи даних;
обробка винятків;
простори імен;
вбудовані функції;
перевантаження операторів;
перевантаження імен функцій;
посилання і оператори управління вільно розподіленою пам'яттю.
У 1998 році ратифіковано міжнародний стандарт мови С++: ISO/IEC 14882 «Standard for the C++ Programming Language». Поточна версія цього стандарту — ISO/IEC 14882:2003.
Переваги мови C++:Швидкодія.Швидкість роботи програм на С++ практично не поступається програмам на С, хоча програмісти отримали в свої руки нові можливості і нові засоби. Масштабованість. На мові C++ розробляють програми для найрізноманітніших платформ і систем. Можливість роботи на низькому рівні з пам'яттю, адресами, портами. (Що, при необережному використанні, може легко перетворитися на недолік.) Можливість створення узагальнених алгоритмів для різних типів даних, їхня спеціалізація, і обчислення на етапі компіляції, з використанням шаблонів. Підтримуються різні стилі та технології програмування, включаючи традиційне директивне програмування, ООП, узагальнене програмування, метапрограмування (шаблони, макроси).
-7-
1.3. Об’єктно-орієнтоване програмування на мові С++
Клас у С++: Клас є фундаментальним механізмом, із введенням якого мова С здобуває об’єктно-орієнтовані риси й стає С++. Клас є розширення поняття структури мови С. Він дозволяє створювати типи й визначати функції, які задають поведінку типу. Кожний представник класу називається об'єктом. Визначення Класу:
нагадує визначення структури за винятком того, що :
воно звичайно містить одну або кілька специфікацій доступу, що задають за допомогою ключ слів public, protected, private;
замість ключ слова struct може застосовуватися class (відмінність у доступі до елементів за замовчуванням);
воно звичайно містить у собі функції (функції елементи або методи) поряд з елементами даних;
звичайно в ньому є деякі спец функції, такі як конструктор (функція з тим же ім’ям, що й сам клас) і деструктор (функція, ім’ям якої є ім’я класу із префіксом- тильдою (~) ).
Керування доступом: У С елементи структури доступні для будь-яких функцій в межах області структури. Це часто приводить до зміни даних через неуважність. У С++ можна обмежити видимість даних і функцій класу за допомогою міток public, protected, private. Мітка-специфікатор доступу застосовується до всіх елементів класу, що випливає за нею, поки не зустрінеться інша мітка або скінчиться визначення класу. Опис:
Мітка доступу |
Опис |
public |
елементи класу доступні для функцій–елементів і інших функцій програми, у якій є представник класу |
protected |
елементи класу доступні для функцій –елементів даного класу й класів, похідних від нього |
private |
елементи класу доступні тільки для функцій –елементів даного класу |
-8-
У С++ структура, клас і об'єднання розглядаються як типи класів. Структура й клас походять один на одного за винятком доступу за замовчуванням: у структурі елементи мають за замовчуванням доступ public, у той час як у класі - private. Аналогічно структурі, об'єднання замовчуванню надає доступ public.
Елементи класу
діляться на дві категорії:
дані (data memmbers)
код, називаний елементами-функціями (member functions) або методами.
Елемент-функція – це функція, об’явлена усередині визначення класу. Тіло функції може також визначатися усередині визначення класу; у цьому випадку функція називається вбудованою (inline) функцією-елементом. Коли тіло функції визначається поза тілом класу, перед ім’ям функції ставиться префікс із імені класу й операції дозволу видимості (::).
Доступ до елементів даних:
Функції-елементи перебувають в області дії класу, у якому вони визначені. Таким чином, вони можуть звертатися до будь-якого елемента класу, використовуючи просто ім’я змінної. Звичайні функції або функції-елементи іншого класу можуть одержати доступ до елементів даних за допомогою операцій.
Виклик функцій-елементів:
Функції-елементи класу можуть викликати інші функції-елементи того ж класу, використовуючи тільки ім’я функції. Звичайні функції або функції-елементи іншого класу можуть викликати функції-елементи класу за допомогою операцій.
Спеціальні функції-елементи:
Від них залежать способи створення, копіювання, перетворення й знищення представників класу (деякі з них неявно викликаються компілятором). Опис:
-9-
Функція |
Опис |
Конструктор |
Ініціалізує представник |
Конструктор копії |
Ініціалізує новий представник, використовуючи значення вже існуючого представника. |
Операція присвоювання |
Привласнює вміст представника іншому представникові |
Деструктор |
робить очищення представників з пам'яті |
Операція new |
Розподіляє пам'ять під динамічні представники |
Операція delete |
Звільняє динамічну пам'ять зайняту під динамічні представники |
Ф-ції перетворення |
Перетворять представники класу до іншого типу |
-10-
