Действительно ли возможно по OO?

8
задан John Millikin 23 October 2008 в 06:51
поделиться

17 ответов

действительно ли возможно по объектному востоку Ваш код

Да

28
ответ дан 5 December 2019 в 04:43
поделиться

Да. Посмотрите понятие золотой молотокантишаблон" "

0
ответ дан 5 December 2019 в 04:43
поделиться

Я думаю, что четкий ответ да, но в зависимости от домена Вы обращаетесь к, это могло быть ДЕЙСТВИТЕЛЬНО да, или меньше да. Если Вы создаете .NET высокого уровня или приложения Java, то я думаю, что это - последний, поскольку OO в основном встроено в язык. С другой стороны, если Вы работаете над встроенными приложениями, затем опасности и вероятность, которые Ваш по OO'ing, высоки. Нет ничего худшего, чем наблюдение, что человек действительно высокого уровня прибывает на встроенный проект и усложняет вещи, что они думают, ужасны, но самые простые и быстрые способы сделать вещи.

0
ответ дан 5 December 2019 в 04:43
поделиться

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

0
ответ дан 5 December 2019 в 04:43
поделиться

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

Хороший код является хорошим кодом, потому что он хорошо разработан в его парадигме программирования.

Хороший дизайн требует ухода.

Быть осторожным занимает время.

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

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

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

0
ответ дан 5 December 2019 в 04:43
поделиться

Я думаю, что существуют времена, когда дизайн OO может быть доведен до крайности, и даже в очень крупных проектах делают код менее читаемым и удобным в сопровождении. Например, может быть использование в footware базовом классе и дочерние классы кроссовки, туфли, и т.д. Но я читал/рассматривал код людей, где казалось, как будто они шли в экстремальное значение создания классов под этим для NikeSneakers и ReebokSneakers. Конечно, существуют различия между этими двумя, но иметь читаемый, удобный в сопровождении код, я полагаю, что его важное, время от времени, разворачивает класс для адаптации к различиям вместо того, чтобы создать новые дочерние классы для обработки различий.

0
ответ дан 5 December 2019 в 04:43
поделиться

действительно ли возможно по объектному востоку Ваш код?

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

1
ответ дан 5 December 2019 в 04:43
поделиться

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

1
ответ дан 5 December 2019 в 04:43
поделиться

Я думаю, что Ваш вопрос должен читать, "Можете Вы по Архитектуре свое приложение?"

И конечно ответ все же. OO является просто подходом к дизайну. Если Вы проводите свое время, встраивая ненужную сложность в систему потому что "Скалы Полиморфизма!". Затем да, возможно, Вы по OOing.

Самый ответ XP - то, что Независимо от того, какой подход Вы одобряете (OO, процедурное, и т.д.), дизайн должен только быть столь сложным, как очевидно необходимо.

1
ответ дан 5 December 2019 в 04:43
поделиться

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

1
ответ дан 5 December 2019 в 04:43
поделиться

Мой совет не состоит в том, чтобы сверхдумать это. Это обычно приводит к или при выполнении ЧЕГО-ТО (если не OO). Эмпирическое правило, которое я обычно использую, является этим: если это делает проблему легче перенести мою голову, я использую объект. Если бы другая парадигма помогает перенести мою голову, чем это было бы, если бы я использовал объект, я использую это.

Та стратегия должна все же привести меня к сбою.

2
ответ дан 5 December 2019 в 04:43
поделиться

Если Вы находите, что необходимое время, чтобы полностью реализовать OO в Вашем проекте напрасно вызывает пропущенные крайние сроки, то да.

Должен быть компромисс между выпуском программного обеспечения и полной точностью OO. То, как решить, зависит от человека, команды, проекта и организации, выполняющей проект.

2
ответ дан 5 December 2019 в 04:43
поделиться

Да, это определенно возможно - распространенный, также. Я когда-то работал с парнем, который создал структуру данных для привязки с выпадающим списком - таким образом, он мог позволить пользователям выбирать пол. Правда, это было бы полезно, если бы список возможных полов должен был измениться, но они не имеют пока еще (мы не живем в Калифорнии),

1
ответ дан 5 December 2019 в 04:43
поделиться

Да, конечно, существует :-) объектно-ориентированные методы являются инструментом... при использовании неправильного инструмента для данного задания Вы будете по усложнению вещей (думайте ложка, когда все, в чем Вы нуждаетесь, является ножом).

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

2
ответ дан 5 December 2019 в 04:43
поделиться

Если Вы думаете, что больше объектов более объектно-ориентировано затем да.

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

3
ответ дан 5 December 2019 в 04:43
поделиться

Я думаю, что что-либо может быть "преувеличено". Это верно почти с каждой лучшей практикой, о которой я могу думать. Я видел цепочки наследования, настолько сложные, код был фактически неуправляем.

0
ответ дан 5 December 2019 в 04:43
поделиться

Да, так же, как можно сверхнормализовать проектирование баз данных.

Это, кажется, один из тех пурист по сравнению с прагматическими дебатами, которые никогда не будут заканчиваться. <:S

1
ответ дан 5 December 2019 в 04:43
поделиться
Другие вопросы по тегам:

Похожие вопросы: