Запитання з тегом «object-oriented»

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

7
Обхід Правил у Чарівниках та Воїнах
У цій серії публікацій блогу Ерік Ліпперт описує проблему в об'єктно-орієнтованому дизайні, використовуючи в якості прикладів майстрів та воїнів, де: abstract class Weapon { } sealed class Staff : Weapon { } sealed class Sword : Weapon { } abstract class Player { public Weapon Weapon { get; set; } …

3
Чи правильно інтерфейси залежати від конкретних класів?
Я створюю в Java інтерфейс для користувальницького обробника помилок. Хочете передати об’єкт помилки аргументу, але мені потрібно, щоб він був дочірнім Exceptionкласом. Чи добре використовувати моє визначене ім’я класу в інтерфейсі? Чи не зробить це менш інтерфейсом з точки зору того, що він не залежить від будь-якої реалізації? Я намагаюся …

1
Здається, приєднання Python орієнтоване не на елементи, які потрібно приєднати, а на символ, порівняно з Ruby або Smalltalk, з причини дизайну?
Я подумав, що одним із наріжних каменів ООП є те, що у нас є об'єкти, які є предметами, з якими ми зацікавлені мати справу, а потім ми надсилаємо їм повідомлення. Тож може здатися природним, що у мене є колекція елементів, і мені потрібно скласти їх в один рядок, щоб це …

2
Принцип поділу інтерфейсу: Що робити, якщо інтерфейси мають значне перекриття?
З розробки програмного забезпечення Agile, принципів, моделей та практик: Нова міжнародна версія Pearson : Іноді методи, на які посилаються різні групи клієнтів, будуть перетинатися. Якщо перекриття невелике, то інтерфейси для груп повинні залишатися окремими. Загальні функції повинні бути оголошені у всіх інтерфейсах, що перекриваються. Клас сервера успадкує загальні функції від …

2
Чому недоцільно використовувати діаграми UML для планування того, як буде організовано ваш код?
Отже, так, діаграми можуть бути часом невідповідними. Коли вони недоречні? Коли ви створюєте їх без коду, перевіряйте їх, а потім збираєтесь слідувати за ними. Немає нічого поганого в тому, щоб скласти схему для дослідження ідеї. Розробка програмного забезпечення Agile: принципи, зразки та практики - Роберт К. Мартін Що саме він …

2
Чи має бути відомий бізнес-ідентифікатор суб'єкта господарювання представленим типом у DDD / OOP?
На практиці це означає використання користувацького (незмінного) classнад тим stringчи іншим примітивним типом. Приклади: Видавництво: Міжнародний стандартний номер книги. Фінанси: Міжнародний ідентифікаційний номер цінних паперів. Переваги: Може забезпечити формат ідентифікатора. Стає першокласним членом моделі. Недоліки: Додає стійке тертя (наприклад, Entity Framework). Більше коду.

4
Як я можу мати об'єкти, які взаємодіють і спілкуються один з одним, не примушуючи ієрархії?
Я сподіваюся, що ці сутички дадуть зрозуміти моє запитання - я б повністю зрозумів, якщо вони не збираються, тому повідомте мені, чи це так, і я спробую зробити себе зрозумілішим. Зустріньте BoxPong , дуже просту гру, яку я зробив для ознайомлення з об'єктно-орієнтованою розробкою гри. Перетягніть коробку, щоб керувати м'ячем …

5
Чи завжди має сенс "програмувати інтерфейс" на Java?
Я бачив дискусію в цьому питанні щодо того, як клас, який реалізується з інтерфейсу, буде екземпляром. У моєму випадку я пишу дуже маленьку програму на Java, яка використовує екземпляр TreeMap, і, на думку кожного, вона має бути створена таким чином: Map<X> map = new TreeMap<X>(); У своїй програмі я викликаю …

4
Чи дійсний шаблон відвідувача в цьому сценарії?
Мета мого завдання - розробити невелику систему, яка може виконувати заплановані повторювані завдання. Повторне завдання - це на кшталт "надсилати електронному листу адміністратору щогодини з 8:00 до 17:00, з понеділка по п’ятницю". У мене базовий клас під назвою RecurringTask . public abstract class RecurringTask{ // I've already figured out this …

8
Співвідношення між орієнтацією об'єкта та алгоритмами
Коли я читаю деякі підручники з алгоритмами, вони сповнені розумних процедур для деяких проблем (сортування, найкоротший шлях) або якихось загальних методів (рекурсивні алгоритми, ділення та перемоги, динамічне програмування ...). Я знайшов там мало слідів об’єктно-орієнтованого програмування; (Чому вони більш орієнтовані на процедури?). Тоді я думав: Яке співвідношення між алгоритмами та …

5
клас з мови та типу OOP
У теорії мови програмування тип - це набір значень. Наприклад, тип "int" - це набір усіх цілих значень. У мовах OOP клас - це тип, чи не так? Коли клас визначено з більш ніж одним членом, наприклад class myclass{ int a; double b; } Коли ми говоримо про клас, маємо …

4
Коли метод класу повинен повернути той самий екземпляр після зміни себе?
У мене є клас, який має три методи A(), B()і C(). Ці методи змінюють власний екземпляр. Хоча методи повинні повертати екземпляр, коли екземпляр є окремою копією (так само Clone()), я отримав вільний вибір повернути voidабо той самий екземпляр ( return this;), коли змінював той самий екземпляр у методі і не …

6
Значну кількість часу я не можу придумати причину мати об'єкт замість статичного класу. Чи мають об’єкти більше переваг, ніж я думаю? [зачинено]
Закрито . Це питання має бути більш зосередженим . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно зосередило увагу на одній проблемі, лише відредагувавши цю публікацію . Закрито 5 років тому . Я розумію поняття об’єкта, і як програміст Java, я відчуваю, що парадигма ОО на …

9
Чи є різниця в навчанні OOP на різних мовах програмування? [зачинено]
Закрито . Це питання має бути більш зосередженим . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно зосередило увагу на одній проблемі, лише відредагувавши цю публікацію . Закрито 6 років тому . Я хочу навчитися OOP. Я знаю Python і знаю дуже мало речей про OOP. …

4
.NET програмування та класи POCO
Я думав сьогодні ввечері, розмірковуючи над якоюсь програмою, яку мені потрібно змінити, і це змусило мене задуматися. Елементами Entity Framework є POCO (Plain Old CLR Objects), а моделі, що використовуються в ASP.NET MVC, зазвичай також є POCO. Це в основному означає просто властивості, ніяких методів. Тепер програмування OO зазвичай дозволяє …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.