Предмет:
Тип роботи:
Курсова робота
К-сть сторінок:
35
Мова:
Українська
Курсовий проект на тему:
«Об’єктно-орієнтоване програмування»
Зміст
Вступ
1. Реферативна глава (Торговельний офіс, Почтовий офіс, Банківський офіс)
2. Постановка задачі
3. Розробка ієрархії класів
3.1. Створення абстрактного класу Офіс
4. Розробка алгоритму рішення задачі
5. Розробка програми рішення задачі
6. Розробка керівництва користувача
Висновок
Список використаної літератури
Вступ
Курсовий проект з дисципліни «Об’єктно-орієнтоване програмування» дозволяє освоїти принципи і методи об’єктно-орієнтованого стилю програмування, а також є заключним етапом вивчення теоретичних основ і забезпечує закріплення лекційного матеріалу шляхом більш глибокого вивчення основних розділів дисципліни.
Основна мета курсового проектування формування навичок самостійної творчої роботи і закріплення теоретичних знань, отриманих при вивченні курсу.
Для вивчення та закріплення навичок в об’єктно-орієнтованому програмуванні, що є в даний час основним інструментом розробки складного програмного забезпечення в даному курсовому проекті розроблена програма, яка з використанням засобів ООП створює динамічну структуру стек у яку можна додавати об’єкти кожного з класів створеної ієрархії.
Курсовий проект виконував з використанням Microsoft Visual Studio 2008, під час написання придбав навички самостійної роботи над науково-технічною і довідковою літературою за фахом та іншими посібниками; самостійний вибір найбільш доцільних і технічно зроблених рішень та задач за розглянутим курсом.
При виконанні курсового проекту в мене з'явилась необхідність приймати обґрунтовані самостійні рішення з урахуванням призначення програми, технічних вимог до неї зв’язані з умовами експлуатації її користувачами. У ході розробки програмного забезпечення ознайомився з типовими аналогами, критично їх проаналізував і застосував окремі, найбільш раціональні рішення.
1. Реферативна глава (Торговельний офіс, Почтовий офіс,
Банківський офіс)
У платформі. NET Framework всі керовані мови, наприклад, Visual Basic і C#, повністю підтримують концепції об'єктно-орієнтованого програмування, включаючи інкапсуляцію, успадкування і поліморфізм.
Інкапсуляція означає, що група пов'язаних властивостей, методів та інших членів розглядається як єдиний елемент або об'єкт.
Спадкування описує можливість створення нових класів на основі існуючих класів.
Поліморфізм означає, що можна мати кілька взаємозамінних класів, навіть якщо кожен клас реалізує одні й ті ж властивості або методи різними способами.
Класи оголошуються за допомогою ключового слова Class, як показано в наступному прикладі.
class Post
Класи, оголошені безпосередньо в просторі імен і не вкладені в інші класи, можуть бути відкритими або внутрішніми. Класи є внутрішніми, за замовчуванням.
Для членів класу (даних і методів) визначені такі модифікатори доступу:
Public – члени класу доступні за межами даного класу;
Internal – члени класу доступні в межах однієї збірки;
Protected – члени класу доступні усередині даного класу;
Private – члени класу доступні тільки для інших членів даного класу.
За замовчанням застосовується модифікатор Internal. Клас може містити оголошення наступних елементів:
Конструктори, деструктори, константи, поля, методи, властивості, індексатори, оператори, події, делегати, класи, інтерфейси, структури.
Кожен клас може складатися з різних членів класу, які містять властивості, що описують дані класу, методи, що задають поведінку класу, і події, що забезпечують зв'язок між різними класами і об'єктами. Поля і властивості представляють відомості, що містяться в об'єкті. Поля подібні змінним, так як вони можуть бути прочитані або змінені безпосередньо.
Кожен об'єкт містить свій екземпляр полів класу.
class post
public string box;
Методи знаходяться в пам'яті в одному екземплярі і використовуються всіма об'єктами спільно, тому необхідно забезпечити роботу методів нестатичних екземплярів з полями саме того об'єкту, для якого вони були викликані. Для цього в будь-який нестатичний метод автоматично передається прихований параметр this, в якому зберігається посилання на поточний екземпляр об’єкта, що викликав функцію.
Це посилання є прихованим покажчиком на кожний нестатичний метод класу. Будь-який метод може використовувати ключове слово this для доступу до інших нестатичних методів і змінних цього об’єкта.
У мові C# дозволяється оголосити клас, який не розглядається як тип даних, і в якого зберігається єдина роль – роль модуля. Такий клас оголошується з модифікатором static. В цьому класі можуть бути задані константи, лише статичні поля і лише статичні методи. У нього немає конструкторів в звичайному сенсі цього слова, що дозволяють створювати об'єкти – екземпляри класу.
Статичним є клас, всі методи якого є статичними. Статичні класи не потребують створення об’єкту оператором new.
Статичний клас не може розглядатися як тип даних.
Композиція (агрегування за значенням) це більш суворий варіант агрегування, коли включається об'єкт може існувати тільки як частина контейнера. Якщо контейнер буде знищений, то і включений об'єкт теж буде знищений.
Під дружніми функціями розуміють член класу з модифікатором доступу internal доступний для всіх класів всередині однієї збірки.
Перевантаження – це створення більш ніж однієї процедури, конструктора примірника чи властивості в класі з однаковими іменами, але з різними типами аргументів. В своїй курсовій роботі я застосував перевантажений метод ToString
public override string ToString ()
{
return Name + «|» + Adresa + «|» + Employees + «|» + Turnover + «|» + Profit + «|»