Запитання з тегом «oop»

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

3
Чи можете ви пояснити принцип заміщення Ліскова на гарному прикладі C #? [зачинено]
Закрито . Це питання має бути більш сфокусованим . Наразі відповіді не приймаються. Хочете покращити це питання? Оновіть питання, щоб воно зосереджувалось на одній проблемі, лише відредагувавши цю публікацію . Закрито 10 місяців тому . Удосконалюйте це питання Чи можете ви пояснити Принцип заміщення Ліскова ("L" ТВЕРДОГО) на гарному прикладі …

8
Посередник проти спостерігача об’єктно-орієнтовані шаблони дизайну
Я читав " Банду чотирьох" , щоб вирішити деякі мої проблеми, і натрапив на зразок Посередника . Раніше я використовував Observer у своїх проектах для створення деяких графічних програм. Я трохи розгублений, оскільки не знаходжу великої різниці між ними. Я переглянув, щоб знайти різницю, але не зміг знайти жодної відповіді …


5
Якщо одиночні люди погані, то чому контейнер послуг хороший?
Ми всі знаємо, наскільки погані самотні , тому що вони приховують залежності та з інших причин . Але у фреймворку може бути багато об’єктів, які потрібно створити лише один раз і викликати їх звідусіль (реєстратор, db тощо). Для вирішення цієї проблеми мені сказали використовувати так званий "Менеджер об’єктів" (або Службовий …

6
Що таке поліморфізм у Javascript?
Я прочитав кілька можливих статей, які міг знайти в Інтернеті про поліморфізм . Але я думаю, що я не міг повністю зрозуміти значення цього та його значення. У більшості статей не сказано, чому це важливо і як я можу досягти поліморфної поведінки в ООП (звичайно, у JavaScript). Я не можу …

9
Доступ до приватного поля іншого об’єкта в тому ж класі
class Person { private BankAccount account; Person(BankAccount account) { this.account = account; } public Person someMethod(Person person) { //Why accessing private field is possible? BankAccount a = person.account; } } Будь ласка, забудьте про дизайн. Я знаю, що ООП визначає, що приватні об'єкти є приватними для класу. Моє питання полягає …
91 java  c++  .net  oop 

13
Абстрактні атрибути в Python [дублікат]
Тут вже є відповіді на це питання : Як створити абстрактні властивості в абстрактних класах python (3 відповіді) Закрито 6 місяців тому . Який найкоротший / найелегантніший спосіб реалізації наступного коду Scala з абстрактним атрибутом у Python? abstract class Controller { val path: String } Для Controllerвизначення "шляху" компілятором Scala …

12
Агрегація проти складу [закрито]
Закрито . Це питання ґрунтується на думках . Наразі відповіді не приймаються. Хочете покращити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито 5 років тому . Удосконалюйте це питання Мені було важко зрозуміти різницю між складом та агрегацією в UML. …
90 java  oop  uml 

2
Коли впроваджувати та продовжувати? [зачинено]
Закрито . Це питання ґрунтується на думках . Наразі відповіді не приймаються. Хочете покращити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито минулого року . Удосконалюйте це питання Коли слід implementабо extendзастосовувати? Які є реальні приклади? Це правильно? Здається, реалізація …
90 php  oop  extend 

10
У чому перевага використання статичних методів у Python?
Я зіткнувся з помилкою незв'язаного методу в python з кодом import random class Sample(object): '''This class defines various methods related to the sample''' def drawSample(samplesize,List): sample=random.sample(List,samplesize) return sample Choices=range(100) print Sample.drawSample(5,Choices) Прочитавши тут багато корисних постів, я зрозумів, як можна додати @staticmethodвище, щоб змусити працювати код. Я новачок у пітоні. …

6
Як слід оголосити значення за замовчуванням для змінних екземпляра в Python?
Чи повинен я давати своїм учасникам класу такі значення за замовчуванням: class Foo: num = 1 чи ось так? class Foo: def __init__(self): self.num = 1 У цьому питанні я виявив, що в обох випадках bar = Foo() bar.num += 1 є чітко визначеною операцією. Я розумію, що перший метод …
90 python  class  oop 

7
Покажчик функції на функцію-член
Я хотів би встановити вказівник на функцію як член класу, який є вказівником на іншу функцію в тому ж класі. Причини, чому я це роблю, складні. У цьому прикладі я хотів би, щоб результат був "1" class A { public: int f(); int (*x)(); } int A::f() { return 1; …

7
Інжекція залежності та шаблон одиночного дизайну
Як ми визначаємо, коли використовувати ін’єкцію залежностей або одиночний шаблон. Я читав на багатьох веб-сайтах, де кажуть: "Використовувати ін’єкцію залежності за одношаровим шаблоном". Але я не впевнений, чи повністю з ними згоден. У своїх невеликих або середніх проектах я однозначно бачу використання одинарного візерунка просто. Наприклад Logger. Я міг би …

3
Об’єктно-орієнтований дизайн для гри в шахи [закрито]
Закрито . Це питання ґрунтується на думках . Наразі відповіді не приймаються. Хочете покращити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито 1 рік тому . Удосконалюйте це питання Я намагаюся зрозуміти, як проектувати та мислити об’єктно-орієнтовано, і хочу отримати …
88 chess  oop 

6
занижене і занижене
Я новачок у C # (і ООП ). Коли у мене є такий код, як наведений нижче: class Employee { // some code } class Manager : Employee { //some code } Питання 1 : Якщо у мене є інший код, який робить це: Manager mgr = new Manager(); Employee …
88 c#  oop  downcast  upcasting 

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