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

11
Должен ли я предпочесть композицию или наследование в этом сценарии?

Рассмотрим интерфейс: interface IWaveGenerator { SoundWave GenerateWave(double frequency, double lengthInSeconds); } Этот интерфейс реализован рядом классов, которые генерируют волны различной формы (например, SineWaveGeneratorи SquareWaveGenerator). Я хочу реализовать класс, который генерирует...

11
Классы Python только с одним экземпляром: когда создавать (один) экземпляр класса и когда вместо этого работать с классом?

Данный класс Python, который будет создан только один раз, то есть будет только один объект класса. Мне было интересно, в каких случаях имеет смысл создавать отдельный экземпляр класса, а не работать непосредственно с классом. Есть похожий вопрос , но он имеет другую направленность: речь идет о...

11
СУХОЙ принцип в хороших практиках?

Я стараюсь следовать принципу СУХОЙ в своем программировании изо всех сил. Недавно я изучал шаблоны проектирования в ООП и закончил тем, что повторял себя довольно много. Я создал шаблон Repository вместе с шаблонами Factory и Gateway, чтобы справиться с моим постоянством. Я использую базу данных в...

11
Объектно-ориентированное позднее связывание

В определении объекта Alan Kays есть определение, которое я частично не понимаю: Для меня ООП означает только обмен сообщениями, локальное хранение и защиту, а также скрытие процесса состояния и крайнюю LateBinding всех вещей. Но что означает «LateBinding»? Как я могу применить это на языке, как C...

11
Лучшая стратегия для сообщения о прогрессе в UI - как должен происходить обратный вызов?

Иногда пользователь запускает расширенную техническую операцию, выполнение которой занимает некоторое время. В этих случаях обычно удобно отображать какой-то индикатор выполнения вместе с информацией о том, какая задача выполняется в данный момент. Чтобы избежать тесной связи между пользовательским...

11
Использование порядка разрешения методов Python для внедрения зависимостей - это плохо?

Я наблюдал за речью Рэймонда Хеттингера о Pycon «Супер рассмотренный супер» и немного узнал о MRO (порядок разрешения методов) Python, который линеаризует классы «родительские» классы детерминистическим способом. Мы можем использовать это в наших интересах, как в приведенном ниже коде, для...

11
Как должен быть разработан класс «Сотрудник»?

Я пытаюсь создать программу для управления сотрудниками. Однако я не могу понять, как спроектировать Employeeкласс. Моя цель - иметь возможность создавать и управлять данными о сотрудниках в базе данных, используя Employeeобъект. Базовая реализация, о которой я подумал, была такой простой: class...

11
Реализация состояния объекта на ОО языке?

Мне дали посмотреть на Java-код, который имитирует гонку автомобиля, включая реализацию базового автомата. Это не классическая машина состояний компьютерных наук, а просто объект, который может иметь несколько состояний и может переключаться между его состояниями на основе серии вычислений. Чтобы...

11
Что такое хорошая практика проектирования, чтобы не задавать тип подкласса?

Я читал, что когда вашей программе нужно знать, к какому классу относится объект, обычно это указывает на недостаток дизайна, поэтому я хочу знать, что такое хорошая практика для этого. Я реализую класс Shape с различными подклассами, унаследованными от него, такими как Circle, Polygon или...

11
Как бы это было запрограммировано в не-OO? [закрыто]

Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 2 года назад . Читая ужасную статью о минусах ООП в пользу какой- то другой парадигмы, я...

11
Можем ли мы действительно использовать неизменяемость в ООП, не теряя все ключевые функции ООП?

Я вижу преимущества создания неизменных объектов в моей программе. Когда я действительно глубоко задумываюсь над хорошим дизайном для своего приложения, я часто, естественно, считаю, что многие из моих объектов неизменяемы. Часто приходит момент, когда я хочу, чтобы все мои объекты были...

11
DDD инъекционные сервисы на вызовы методов сущностей

Краткий формат вопроса Находится ли в лучших практиках DDD и OOP внедрение служб при вызовах методов сущностей? Пример длинного формата Допустим, у нас есть классический случай Order-LineItems в DDD, где у нас есть объект домена, называемый заказом, который также действует как совокупный корень, и...

11
В объектно-ориентированных языках, когда объекты должны выполнять операции над собой и когда должны выполняться операции над объектами?

Предположим, есть Pageкласс, который представляет собой набор инструкций для средства визуализации страниц. И предположим, есть Rendererкласс, который знает, как отобразить страницу на экране. Структурировать код можно двумя разными способами: /* * 1) Page Uses Renderer internally, * or receives it...

11
Исключения в DDD

Я изучаю DDD, и я думаю о создании исключений в определенных ситуациях. Я понимаю, что объект не может войти в плохое состояние, поэтому здесь исключения хороши, но во многих примерах исключения также создаются, например, если мы пытаемся добавить нового пользователя с существующей электронной...

11
ООП ECS против чистого ECS

Во-первых, я знаю, что этот вопрос связан с темой разработки игр, но я решил задать его здесь, поскольку он действительно сводится к более общей проблеме разработки программного обеспечения. В прошлом месяце я много читал о Entity-Component-Systems, и теперь я вполне доволен этой концепцией. Тем не...

10
Рефакторинг в доменном дизайне [закрыто]

Закрыто . Этот вопрос нуждается в деталях или ясности . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Добавьте детали и проясните проблему, отредактировав этот пост . Закрыто 6 лет назад . Я только начал работать над проектом, и мы используем управляемый доменом проект...

10
Распространение информации через границы объекта

Во многих случаях мои бизнес-объекты обычно бывают в ситуациях, когда информация слишком часто пересекает границы объекта. При выполнении ОО мы хотим, чтобы информация была в одном объекте, и как можно больше кода, работающего с этой информацией, должен быть в этом объекте. Однако бизнес-правила не...

10
Как объяснить концепции ООП нетехническому человеку?

Locked . Этот вопрос и его ответы заблокированы, потому что вопрос не по теме, но имеет историческое значение. В настоящее время он не принимает новые ответы или взаимодействия. Я часто стараюсь не говорить людям, что я программист, потому что большую часть времени я объясняю им, что это на самом...

10
Почему мы должны изучать процедурное программирование, прежде чем изучать объектно-ориентированное программирование [закрыто]

Закрыто . Этот вопрос основан на мнении . В настоящее время он не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 6 лет назад . Сейчас я учусь на 4-ом курсе в IT-университете, и когда я говорю с моим...