Розробка програм мовою С++ з використанням технології об’єктно-орієнтованого програмування

Дослідження методології та принципів комп’ютерної інженерії, що використовуються в процесі об’єктно-орієнтованого програмування. Особливості створення вхідного файлу "inputc.txt". Огляд прикладу лістингу програми, розробленої за допомогою мови С++.

Рубрика Программирование, компьютеры и кибернетика
Вид реферат
Язык украинский
Дата добавления 28.04.2014
Размер файла 354,5 K

Отправить свою хорошую работу в базу знаний просто. Используйте форму, расположенную ниже

Студенты, аспиранты, молодые ученые, использующие базу знаний в своей учебе и работе, будут вам очень благодарны.

Размещено на http://www.allbest.ru/

Міністерство освіти і науки України

Вінницький національний технічний університет

Інститут інформаційних технологій і комп'ютерної інженерії

Кафедра обчислювальної техніки

РЕФЕРАТ

з дисципліни "Програмування"

РОЗРОБКА ПРОГРАМ МОВОЮ С++ З ВИКОРИСТАННЯМ ТЕХНОЛОГІЇ ОБ'ЄКТНО-ОРІЄНТОВАНОГО ПРОГРАМУВАННЯ

Розробив:

Марчук А.Ю.

Зміст

Вступ

1. Аналіз сучасного стану технологій програмування та обґрунтування теми

2. Розробка програми виконання основного завдання

2.1 Розробка методу виконання основного завдання

2.2 Структура даних і функцій

3. Розробка та виконання прикладу

4. Інструкція користувача

Висновки

Переліг посилань

Додаток

Вступ

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

Мова С++ дозволяє програмісту визначити новий тип даних - клас. Клас в свою чергу дозволяє визначити об'єкти даних та зв'язати із ними операції і функції. Класи і притаманні їм властивості складають основу об'єктно-орієнтованого програмування, найпростіші елементи якого обговорюються далі. Кен Томпсон передбачив багато можливостей в своїй мові В - копії ВСРL і використав В для створення ранніх копій операційної системи UNIX в Bell Laboratories в 1970 році. Мова програмування С була розвинута із В Деннісом Річчі в Bell Laboratories в 1972 році. С використовує багато важливих концепцій ВСРL і В, а також додає типи даних та інші особливості. С++ - розширений С - був розроблений Б'єрном Страуструпом на початку 80-х років в Bell Laboratories. С++ забезпечує можливість, що найважливіше, об'єктно-орієнтованого програмування. Це виявилось революційною ідеєю в світі програмного забезпечення. Об'єкти - це ефективні компоненти програмного забезпечення, що повторно використовуються, і в свою чергу моделюють елементи реального світу.

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

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

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

- усе являється об'єктом;

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

- кожен об'єкт має незалежну пам'ять, яка складається з інших об'єктів;

- кожен об'єкт є представником класу, який виражає загальні властивості об'єктів даного типу;

- у класі задається функціональність (поведінка об'єкту), тим самим усі об'єкти, які являються екземплярами одного класу, можуть виконувати одні і ті ж дії;

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

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

Інкапсуляція (encapsulation) - техніка, при якій несуттєва з точки зору інтерфейсу об'єкту інформація ховається усередині нього.

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

Поліморфізм (polymorphism) - властивість, що дозволяє використовувати один і той же інтерфейс для різних дій, поліморфній змінній, наприклад, може відповідати декілька різних методів.

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

Об'єкт (object) - конкретна реалізація класу, що володіє характеристиками стану, поведінки і індивідуальності, синонім екземпляра.

Як це вже відзначалося на самому початку курсу, Java - лише одна з об'єктно-орієнтованих мов. Іншим активно використовуваним професійними програмістами мовою ТОП. Слід мати на увазі, що в різних об'єктно-орієнтованих мовах для позначення одних і тих же концепцій ТОП використовуються ті, що злегка відрізняються один від одного терміни.

1. Аналіз сучасного стану технологій програмування та обґрунтування теми

C++ (Сі-плюс-плюс) - універсальна мова програмування високого рівня з підтримкою декількох парадигм програмування: об'єктно-орієнтованої, узагальненої та процедурної. Розроблена Б'ярном Страуструпом (англ. Bjarne Stroustrup) в AT&T Bell Laboratories (Мюррей-Хілл, Нью-Джерсі) у 1979 році та названа «С з класами». Страуструп перейменував мову на C++ у 1983 р.

2. Розробка програми виконання основного завдання

2.1 Розробка методу виконання основного завдання

Для розв'язання поставленої задачі було розроблено окремі функції, на кожну з яких покладена певна роль. Суть розв'язання полягає в визначенні площ кожного кола та вписаного в нього квадрата (рис. 1).

Рис. 1. - Коло:

Для знаходження площі кола застосовуємо формулу (1):

Для знаходження сторони квадрата використаємо функцію для знаходження відстані між двома точками (2):

Для знаходження площі квадрата використаємо формулу (3):

Частина програми, яка визначає вершини вписаного квадрату, а також перевіряє чи відповідають задані в файлі координати квадрату.

Рис. 2:

2.2 Структура даних і функцій

Розглянемо структуру MyStryct про коло та квадрати.

Рис. 3:

Рис. 4. - Функція для перевірки чи лежить точка на квадраті:

Рис. 5. - Функція знаходження відстані між двома точками:

Рис. 6. - Масив для збереження всіх фігур:

3. Розробка та виконання прикладу

Для перевірки роботи програми створимо файли inputc.txt та inputr.txt з вхідними даними, та передамо їх програмі.

Приклад вхідного файлу inputc.txt наведено на (рис. 7).

Рис. 7. - Вміст файлу "inputr.txt":

Приклад вхідного файлу inputr.txt наведено на (рис. 8).

Рис. 8. - (файл inputr.txt):

Після запуску програми на виконання, програма виконує дії, необхідні для вирішення задачі, тобто:

- зчитує з вхідного файлу данні;

- виконує необхідні розрахунки, обраховує результат та виводить його на екран у графічному режимі (рис. 4).

Це свідчить про те, що програма працює коректно. Результат виконання програми наведено на (рис. 9).

Рис. 9. - (результат роботи програми):

4. Інструкція користувача

Запуск програми виконується через файл l31.sln.

Програма потребує такого програмного забезпечення:

1. Блокнот (notepad); комп'ютерний програмування лістинг

2. Microsoft Visual Studio 2013.

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

Усі файли мають знаходитися в одному каталозі. Файли inputc.txt та inputr.txt потрібно розмістити в тій же папці, що й проект програми. Для зміни адреси потрібно відредагувати її у файлі l31Dlg.cpp.

Висновки

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

Переліг посилань

1. Черняк О.І. Методичні вказівки до виконання курсової роботи з дисципліни «Програмування» для студентів напрямів підготовки - «Комп'ютерна інженерія», «Інформаційна безпека» / О.І. Черняк, О.М. Ткаченко, Вінниця: ВНТУ, 2006. - 47 с.

2. Страуструп Б. Язык программирования C++, специальное издание, пер. с англ. / Б. Страуструп. - М.: Издательство Бином, 2011. - 1136 с.

3. Либерти Дж. Освой самостоятельно С++ за 21день: пер. с англ. / Дж. Либерти - М.: Издательский дом «Вильямс», 2006. - 784 с.

4. Страуструп Б. Дизайн и эволюция C++ / Б. Страуструп. - М.: ДМК Пресс, 2006. - 448 с.

5. Бутузов В.Ф. Планиметрия / В.Ф. Бутузов. - М.: ФИЗМАТЛИТ, 2005. - 488 с.

6. Введение в Visual С++. MFC - Kvodo. Mode of access: URL.

Додаток

Размещено на Allbest.ru

...

Подобные документы

  • Редагування за допомогою текстового редактора NotePad вхідного файлу даних. Програмна реалізація основного алгоритму з використанням засобів об'єктно-орієнтованого програмування. Об’ява та опис класів і об'єктів. Розробка допоміжних програмних засобів.

    курсовая работа [69,4 K], добавлен 14.03.2013

  • Концепції об'єктно-орієнтованого програмування. Методи створення класів. Доступ до методів базового класу. Структура даних, функції. Розробка додатку на основі діалогових вікон, програми меню. Засоби розробки програмного забезпечення мовами Java та С++.

    курсовая работа [502,5 K], добавлен 01.04.2016

  • Особливості редагування за допомогою текстового редактора NotePad вхідного файлу. C++ як універсальна мова програмування, знайомство с функціями. Характеристика графічних засобів мови С. Аналіз основних понять об’єктно-орієнтованого програмування.

    курсовая работа [123,3 K], добавлен 14.03.2013

  • Об’єктно-орієнтоване програмування мовою С++. Основні принципи об’єктно-орієнтованого програмування. Розробка класів з використанням технології візуального програмування. Розробка класу classProgressBar. Базовий клас font. Методи тестування програми.

    курсовая работа [211,3 K], добавлен 19.08.2010

  • Зчитування числової інформації з файлу DATA.txt, аналізування, обробка та виконання графічного відображення. Редагування файлу тексту програми. Метод відображення кнопки з надписом на екрані. Створення нових класів на основі інших, вже створених.

    курсовая работа [196,2 K], добавлен 14.03.2013

  • Прототип об'єктно-орієнтованого програмування. Управління процесом реалізації програми. Розвиток апаратних засобів. Об'єктно-орієнтовані мови програмування. Надійність і експлуатаційні якості програм. Візуальне об’єктна-орієнтовне проектування Delphi.

    контрольная работа [28,9 K], добавлен 18.05.2009

  • Розробка програми на мові програмування С++ з використанням об’єктно-орієнтованого програмування, яка включає в себе роботу з файлами, класами, обробку числової інформації і роботу з графікою. Структура класів і об’єктів. Лістинг та алгоритм програми.

    курсовая работа [104,4 K], добавлен 14.03.2013

  • Принципи об'єктно-орієнтованого підходу. Розробка програмного комплексу з використанням цього алгоритму і користувальницьких класів на мові програмування С++. Реалізація простого відкритого успадкування. Тестування працездатності системи класів.

    курсовая работа [98,0 K], добавлен 06.05.2014

  • Програма на мові програмування С++. Аналіз стану технологій програмування та обґрунтування теми. Розробка програми виконання завдання, методу вирішення задачі. Робота з файлами, обробка числової інформації і робота з графікою. Розробка програми меню.

    курсовая работа [41,0 K], добавлен 17.02.2009

  • Розробка програми на мові програмування С++ з використанням об'єктно-орієнтованого програмування. Робота з файлами, графікою, класами, обробка числової інформації. Графічні засоби мови програмування. Алгоритм задачі та допоміжні програмні засоби.

    курсовая работа [102,5 K], добавлен 14.03.2013

  • Особливості об'єктно-орієнтованого програмування. Розробка програми для елементарних математичних розрахунків, виведення результату на екран та запису у файлі. Сортування слів у рядку. Програма, яка реалізовує ходи шахових фігур. Програма-калькулятор.

    отчет по практике [2,0 M], добавлен 19.03.2015

  • Використання комп'ютерних навчальних систем. Розуміння основних принципів об’єктно-орієнтованої ідеології програмування. Закріплення теоретичних знань та практичних навичок програмування мовою С/С++. Створення файлу, поповнення його з клавіатури.

    курсовая работа [229,4 K], добавлен 09.09.2015

  • Розробка програми імітації схеми життя лісового біому. Алгоритм пересування по головному полю. Основні глобальні функції програми. Динамічна ідентифікація типу даних. Вирішення завдань в області об’єктно-орієнтованого програмування засобами C++.

    курсовая работа [423,1 K], добавлен 26.11.2014

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

    курсовая работа [1,6 M], добавлен 25.04.2015

  • Реалізація, за допомогою технології Windows Forms, програми обліку даних про волонтерів та подій, на які вони зареєстровані. можливості об'єктно-орієнтованого програмування. Створення класів. Методи, властивості. Використання Multiple Document Interface.

    курсовая работа [1,5 M], добавлен 02.12.2015

  • Розробка програми для моделювання роботи алгоритму Дейкстри мовою C# з використанням об’єктно-орієнтованих принципів програмування. Алгоритм побудови робочого поля. Програмування графічного інтерфейсу користувача. Тестування програмного забезпечення.

    курсовая работа [991,4 K], добавлен 06.08.2013

  • Основні принципи об’єктно-орієнтованого програмування. Типові середовища програмування та особливості мови С++. Етапи проектування БД. Розробка програмного забезпечення для реалізації створення бази відеофільмів. Основні положення та моделі БД.

    курсовая работа [2,7 M], добавлен 24.03.2011

  • Розроблення додатка за допомогою об'єктно-орієнтованого візуального проектування Delphi для виконання арифметичних операцій або з використанням меню. Створення інтерфейсу користувача з використанням компонентів SYSTEM і WIN32. Обробка двовимірного масиву.

    методичка [326,1 K], добавлен 13.01.2010

  • Концепції об'єктно-орієнтованого програмування. Спеціалізовані засоби розробки програмного забезпечення мовою Delphi. Загальні питання побудови та використання сучасних систем об’єктно-орієнтованного та візуального проектування програмних засобів.

    курсовая работа [201,4 K], добавлен 01.04.2016

  • Мова C++ є як одна з найпоширеніших сучасних мов програмування. Базові засоби мови С++, її специфічні риси. Технологія складу програм, специфіка організації процесу програмування. Модульне програмування. Особливості об’єктно-орієнтованого програмування.

    курсовая работа [49,6 K], добавлен 26.03.2010

Работы в архивах красиво оформлены согласно требованиям ВУЗов и содержат рисунки, диаграммы, формулы и т.д.
PPT, PPTX и PDF-файлы представлены только в архивах.
Рекомендуем скачать работу.