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

14
Советы / советы о том, как сократить использование классов «менеджер»?

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

14
Примитив против класса для представления простого объекта домена?

Каковы общие рекомендации или практические правила, когда следует использовать объект, специфичный для домена, против простой строки или числа? Примеры: Возрастной класс против Integer? FirstName класс против строки? UniqueID против строки Класс PhoneNumber vs String vs Long? Класс DomainName...

14
Может ли класс RxJava Flowable законно иметь 460 методов?

Я только начинаю с RxJava , Java-реализации ReactiveX (также известной как Rx и Reactive Extensions ). То , что действительно поразило меня массовый размер RxJava в текучий классе : он имеет 460 методы! По честному: Есть много методов, которые перегружены, что значительно увеличивает общее...

14
Насколько конкретным должен быть шаблон единой ответственности для классов?

Например, предположим, что у вас есть консольная игровая программа, которая имеет все виды методов ввода / вывода в консоль и из консоли. Будет ли это быть умным , чтобы держать их все в одном inputOutputклассе или разбить их на более конкретных классы , как startMenuIO, inGameIO, playerIO,...

14
Влияет ли объектная ориентация на производительность алгоритма?

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

14
Как придерживаться принципа открытого-закрытого на практике

Я понимаю цель принципа открытого-закрытого. Он предназначен для того, чтобы уменьшить риск поломки чего-либо, что уже работает при его изменении, предлагая вам попытаться расширить без изменения. Однако у меня возникли проблемы с пониманием того, как этот принцип применяется на практике. Насколько...

14
Какой лучший способ избежать слишком большого количества if / else-if из следующего фрагмента кода?

Я пытаюсь написать сервлет, который выполняет задачу на основе значения "action", переданного в качестве входных данных. Вот образец которого public class SampleClass extends HttpServlet { public static void action1() throws Exception{ //Do some actions } public static void action2() throws...

14
Как разбить большие, тесно связанные классы?

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

14
Когда можно использовать параллельные массивы?

Я сталкивался с кодом (новым кодом), который использует то, что я называю 'Parallel Arrays' или Lists. Это означает, что есть 2 массива, которые содержат связанные данные и связаны их положением (индексом) в массиве. Я считаю это запутанным и подверженным всевозможным ошибкам. Решение, которое я...

14
Советы о том, как распространять объектно-ориентированные практики [закрыто]

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

14
В каком порядке определяются геттеры и сеттеры? [закрыто]

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

14
Как проверить принцип подстановки Лискова в иерархии наследования?

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

14
Способы обеспечения уникальных экземпляров класса?

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

14
Является ли наличие классов «Util» поводом для беспокойства? [закрыто]

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

14
Проводились ли исследования эффективности ООП в управлении сложностью программного обеспечения? [закрыто]

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

14
Объектно-ориентированное программирование: почему «ориентировано»?

Я прошел большую часть учебного курса по программированию игр. Это не степень в области компьютерных наук, поэтому большая часть теории отвергается в пользу практического создания портфолио и того, что я вижу как обучение JIT, которое, очевидно, более важно в игровой индустрии. Первым предметом...

14
Должен ли мой код быть СУХИМ или читаемым, если он не может быть и тем, и другим?

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

14
Общий процесс обсуждения вопросов «Как бы вы построили этот сайт / приложение» [закрыто]

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

14
Объектно-ориентированное и векторное программирование

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

14
Пример кода, объясняющего проблему джунглей «Банановые обезьяны», Джо Армстронг [закрыто]

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