Вопросы с тегом «object-oriented»

Методология, которая позволяет моделировать систему как набор объектов, которыми можно управлять и манипулировать модульным способом

3
Объектно-ориентированное программирование: почему «ориентировано»?
Я прошел большую часть учебного курса по программированию игр. Это не степень в области компьютерных наук, поэтому большая часть теории отвергается в пользу практического создания портфолио и того, что я вижу как обучение JIT, которое, очевидно, более важно в игровой индустрии. Первым предметом была «Введение в объектно-ориентированное программирование». Эта фраза …

5
Является ли наличие классов «Util» поводом для беспокойства? [закрыто]
В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и, возможно, вновь открыть, обратитесь за …

1
Как проверить принцип подстановки Лискова в иерархии наследования?
Вдохновленный этим ответом: Лиск принцип замещения требует , что Предпосылки не могут быть усилены в подтипе. Постусловия не могут быть ослаблены в подтипе. Инварианты супертипа должны быть сохранены в подтипе. Ограничение истории («правило истории»). Объекты считаются изменяемыми только через их методы (инкапсуляция). Поскольку подтипы могут вводить методы, которых нет в …

5
Способы обеспечения уникальных экземпляров класса?
Хотите улучшить этот пост? Предоставьте подробные ответы на этот вопрос, включая цитаты и объяснение того, почему ваш ответ правильный. Ответы без достаточной детализации могут быть отредактированы или удалены. Я ищу различные способы гарантировать, что каждый экземпляр данного класса является уникально идентифицируемым экземпляром. Например, у меня есть Nameкласс с полем name. …

6
Советы о том, как распространять объектно-ориентированные практики [закрыто]
Закрыто. Этот вопрос не по теме . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он соответствовал теме разработки программного обеспечения стека Exchange. Закрыто 4 года назад . Я работаю в средней компании, которая имеет около 250 разработчиков. К сожалению, многие из них застряли …

9
Как разбить большие, тесно связанные классы?
У меня есть несколько огромных классов из более чем 2 тыс. Строк кода (и их число растет), которые я хотел бы реорганизовать, если это возможно, чтобы получить более легкий и чистый дизайн. Причина, по которой он так велик, заключается главным образом в том, что эти классы обрабатывают набор карт, к …

10
Влияет ли объектная ориентация на производительность алгоритма?
Объектная ориентация очень помогла мне в реализации многих алгоритмов. Тем не менее, объектно-ориентированные языки иногда ведут вас к «простому» подходу, и я сомневаюсь, что этот подход всегда полезен. ОО действительно помогает быстро и легко кодировать алгоритмы. Но может ли этот ООП быть недостатком для программного обеспечения, основанного на производительности, то …

3
Советы / советы о том, как сократить использование классов «менеджер»?
Я иногда слышу, что наличие слишком большого количества классов «менеджера» в дизайне вашей программы - это запах кода и добавляет ненужный уровень сложности. Для меня имеет смысл, что люди хотят использовать классы менеджера для манипулирования объектами и управления ими из контекста, который имеет для них смысл, но выяснение того, как …

3
Абстрактный базовый класс с интерфейсами как поведением?
Мне нужно спроектировать иерархию классов для моего проекта на C #. По сути, функциональные возможности классов аналогичны классам WinForms, поэтому давайте возьмем в качестве примера инструментарий WinForms. (Однако я не могу использовать WinForms или WPF.) Есть некоторые основные свойства и функциональные возможности, которые должен обеспечить каждый класс. Размеры, положение, цвет, …

6
Реальные сценарии для защищенных методов
Сегодня я заметил, что я в основном никогда не использую protectedметоды в коде C ++, потому что я редко чувствую необходимость вызывать непубличные методы родителя. Я использую защищенный в Java в шаблоне шаблонного метода, но так как вы можете переопределить закрытые методы в C ++, мне это тоже не нужно …

8
Как можно преподавать ОО, не ссылаясь на физические объекты реального мира? [закрыто]
Закрыто . Этот вопрос должен быть более сфокусированным . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы он был сосредоточен только на одной проблеме, отредактировав этот пост . Закрыто 6 лет назад . Я помню, как читал где-то, что первоначальные концепции ОО заключались в …

3
Должны ли мы добавить конструкторы к структурам?
Мы часто используем структуры c ++ для определения структуры данных, а не класса, который может быть законченным модулем с методами-членами. Теперь, в глубине души, мы знаем, что они оба одинаковы (грубо говоря). Тот факт, что мы часто используем / относимся к структурам как к объектам, содержащим только данные, заставляет нас …

2
Объектно-ориентированное и векторное программирование
Я разрываюсь между объектно-ориентированным и векторным дизайном. Я люблю способности, структуру и безопасность, которые объекты дают всей архитектуре. Но в то же время скорость очень важна для меня, и наличие простых переменных с плавающей точкой в ​​массиве действительно помогает в векторных языках / библиотеках, таких как Matlab или numpy в …

6
Как реализовать только часть интерфейса
При разработке в ООП интерфейс / контракт иногда дается библиотекой, которую вы не можете изменить. Давайте назовем этот интерфейс J. Теперь у вас есть объект класса A, который потребляет объекты, которые реализуют этот интерфейс. Внутри Необходима только небольшая часть определений интерфейса. Некоторые из классов объектов созданы мной во время проекта …

6
В каком порядке определяются геттеры и сеттеры? [закрыто]
В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и, возможно, вновь открыть, обратитесь за …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.