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

13
Стек, расширяющий LinkedList. Нарушение принципа подстановки Лискова?

Существует класс LinkedList с такими функциями, как add_first (), add_last (), add_after (), remove_first (), remove_last () и remove () Теперь есть класс Stack, который предоставляет такие функции, как push (), pop (), peek () или top (), и для реализации этих методов он расширяет методы класса...

13
Может ли проблема круг-эллипс быть решена путем изменения отношений?

Имея CircleпростиратьсяEllipse перерывам в Лиск Substition принципе , потому что она изменяет постусловие , а именно: вы можете установить X и Y независимо друг от друга , чтобы нарисовать эллипс, но X всегда должен быть равен Y для окружностей. Но разве проблема не в том, что круг является...

13
Удобочитаемость функционального программирования [закрыто]

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

13
Формальное определение термина «чистый ОО язык»?

Я не могу придумать лучшего места среди SO братьев и сестер, чтобы поставить такой вопрос. Изначально я хотел спросить "Является ли python чистым языком OO?" но, учитывая проблемы и некоторый дискомфорт, которые испытывают люди, пытаясь определить термин, я решил начать с получения четкого...

13
В DDD доменная служба по сути является просто шаблоном фасада и / или посредника?

В домене, управляемом дизайном, уровень домена может иметь несколько (традиционных) сервисов. Например, для пользовательского домена мы можем иметь: UserFactory, который строит объекты User различными способами. UserRepository, который отвечает за взаимодействие со службами постоянства на уровне...

13
Является ли упаковка стороннего кода единственным решением для модульного тестирования своих потребителей?

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

13
Насколько функциональные вызовы влияют на производительность?

Извлечение функциональности в методы или функции является обязательным условием модульности кода, читабельности и совместимости, особенно в ООП. Но это означает, что будет сделано больше вызовов функций. Как разделение нашего кода на методы или функции в действительности влияет на...

13
Принцип инверсии зависимости: Как определить «политику высокого уровня» и «детализацию низкого уровня» для других людей?

Я пытаюсь объяснить принцип инверсии зависимостей моим (в основном младшим) коллегам. Как мы можем определить, какая из них является «политикой высокого уровня», а какая «низкоуровневой» в программном обеспечении? Например, если наше программное обеспечение автоматизирует рабочий процесс нескольких...

13
Почему императивное программирование предпочтительнее функционального программирования? [закрыто]

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

13
Рельсы: Закон Путаницы Деметры

Я читаю книгу под названием Rails AntiPatterns, и они говорят об использовании делегирования, чтобы избежать нарушения закона Деметры. Вот их главный пример: Они считают, что вызывать что-то подобное в контроллере плохо (и я согласен) @street = @invoice.customer.address.street Их предлагаемое...

13
Как практиковать объектно-ориентированное программирование? [закрыто]

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

13
Какие функциональные возможности стоят немного путаницы ООП для выгоды, которые они приносят?

Изучив функциональное программирование на Haskell и F #, парадигма ООП кажется задом наперед с классами, интерфейсами, объектами. Какие аспекты ПС я могу использовать на работе, чтобы мои коллеги могли понять? Стоит ли говорить с моим боссом о каких-либо стилях FP о переподготовке моей команды,...

13
По каким причинам вы бы использовали отдельное расширение класса для каждого делегата в Swift?

Я работал над учебником Рэя Вендерлиха и заметил, что автор использует расширения класса для хранения обратных вызовов делегата, а не для обработки их в самом классе, то есть: делегировать обратные вызовы внутри расширения класса: extension LogsViewController :...

13
Большой класс с единственной ответственностью

У меня есть Characterкласс 2500 строк, который: Отслеживает внутреннее состояние персонажа в игре. Загружает и сохраняет это состояние. Обрабатывает ~ 30 входящих команд (обычно = перенаправляет их на Game, но некоторые команды только для чтения отвечают немедленно). Получает ~ 80 звонков Gameо...

13
Зачем тебе «я». в Python ссылаться на переменные экземпляра?

Я программировал на нескольких языках, таких как Java, Ruby, Haskell и Python. Мне приходится переключаться между многими языками в день из-за разных проектов, над которыми я работаю. Теперь проблема в том, что я часто забываю написать, так selfкак первый параметр в определениях функций в Python -...

13
Мы злоупотребляем статическими методами?

Пару месяцев назад я начал работать над новым проектом, и при прохождении кода меня поразило количество используемых статических методов. В collectionToCsvString(Collection<E> elements)них хранятся не только служебные методы , но и множество бизнес-логики. Когда я спросил парня,...

13
«Предпочитаю композицию наследованию» - единственная причина защищаться от изменений подписи?

Эта страница поддерживает композицию перед наследованием со следующим аргументом (перефразировав его в моих словах): Изменение в сигнатуре метода суперкласса (который не был переопределен в подклассе) во многих случаях вызывает дополнительные изменения, когда мы используем наследование. Однако,...

13
Как ООП «объекты» и «классы» организованы в памяти на языке ассемблера?

Как объекты организованы в памяти? Например, я знаю, что функция - это фрагмент кода в памяти, который ожидает параметры через стек и / или регистры и обрабатывает свой собственный кадр стека. Но объекты - это гораздо более сложная структура. Как они организованы? Имеет ли каждый объект «ссылки» на...

13
Опрос одного из аргументов в пользу внедрения зависимостей: почему сложно создать граф объектов?

Платформы внедрения зависимостей, такие как Google Guice, дают следующую мотивацию для их использования ( источник ): Чтобы построить объект, вы сначала строите его зависимости. Но для построения каждой зависимости вам нужны ее зависимости и так далее. Поэтому, когда вы строите объект, вам...