Описание тега cohesion

4 ответа

Улучшение сплоченности и сцепления классов

Мне дан этот набор кода, и мне нужно предложить способы улучшить целостность кода и сцепление классов. Но я думал, что эти классы довольно хорошо разделены, так как похоже, что они используют события. И с точки зрения сплоченности, все вызовы init()…
16 июн '11 в 18:17
2 ответа

Снять муфту, а затем макет для модульного теста

Это дилемма. Скажем, у нас есть два класса Class A { public int memberValue; } interface IB { int fun(); } Class B : IB { public int fun() { var a = new A(); switch(a.memberValue) { case 1: //do something break; case 2: //do something break; } } } Т…
31 май '13 в 16:24
4 ответа

Сцепление / Сцепление

В то время как на этом форуме есть много хороших примеров, которые содержат примеры связывания и сплоченности, я изо всех сил стараюсь полностью применить его к моему коду. Я могу определить части в моем коде, которые могут нуждаться в изменении. Мо…
05 янв '11 в 14:25
1 ответ

Повреждает ли шаблон DAO сцепление /SRP?

Давайте использовать в качестве примера: class AccountDAO { create(){..} read(){..} update(){..} delete() {..} } Сколько там обязанностей? 1 или 4?
26 июн '11 в 10:28
3 ответа

Это нарушение принципа единой ответственности?

У меня есть следующий метод и интерфейс: public object ProcessRules(List<IRule> rules) { foreach(IRule rule in rules) { if(EvaluateExpression(rule.Exp) == true) return rule.Result; } //Some error handling here for not hitting any rules } publi…
12 сен '09 в 23:24
3 ответа

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

Говоря с точки зрения объектно-ориентированного проектирования, думаете ли вы, что предоставление возможности сохранения себя в базе данных для объекта портит единство класса? Представить: Product p = new Product() { Name = "Joy Rider", Price = 100,…
07 дек '10 в 15:05
2 ответа

Сплоченность VS. Связь

Этот вопрос будет относиться к программному обеспечению как к дереву, где: Каждый узел в дереве представляет некоторую единицу кода (например, класс \ метод \ строка и т. Д.) Узел X является сыном узла Y, если в исходном коде X установлен в Y Вот оп…
31 июл '11 в 15:08
1 ответ

Вычисление метрик связности и связности по классу XML

Я пытаюсь создать проект для поддержки принятия решений по проблеме распределения ответственности класса с помощью оптимизации роя частиц. Функция пригодности определяется с учетом различных параметров, таких как сцепление и сцепление, и должна выпо…
04 янв '17 в 13:37
1 ответ

Должен ли мой класс иметь метод для каждого формата файла или я должен делегировать ввод-вывод другим классам, относящимся к формату файла?

В данном домене может быть несколько форматов файлов, представляющих похожие объекты или структуры. Например, объект типа Track (имеется в виду последовательность географических точек) могут быть сохранены в.GPX, .KML, GeoJSON, WKT, ShapeFile и т. д…
4 ответа

Помогите с дизайном программы

В настоящее время я создаю простую консольную игру, в которой игрок может перемещаться между различными комнатами, собирать и использовать предметы и есть пищу. В текущем состоянии игры вот и все. Мне нужна помощь с: Создание хорошего класса "Event"…
1 ответ

Как провести рефакторинг этих классов для взаимодействия друг с другом?

Мое требование - использовать имя фигуры и нарисовать эту фигуру с размерами, как в методе. Draw('rectangle', 'l:10,w:20');, Должна быть проверка размеров по типу фигуры. Эти классы могут быть реорганизованы, чтобы добавить больше классов или измени…
22 мар '17 в 12:18
1 ответ

Может ли соблюдение стандарта именования JavaBeans помочь в достижении инкапсуляции?

Возможно ли, что стандарты именования Java-бинов помогают в инкапсуляции? Разве это не модификатор доступа, который помогает в инкапсуляции?
12 июн '15 в 10:36
5 ответов

Хорошее определение для "согласованности"

Я пытаюсь сказать кому-то, что его код не является "связным" в том смысле, что он служит нескольким целям. Я не думаю, что могу объяснить это очень хорошо, поэтому я ищу хорошую ссылку и / или определение.
24 фев '09 в 09:22
2 ответа

Абстракция в классах бизнес-логики

Когда вы вызываете метод из библиотеки, вы ожидаете, что он будет делать именно то, что подразумевает его имя. Connection c = driver.getConnection(); вернуть связь сообщить об ошибке в случае сбоя не делать больше, чем ожидалось При написании "библи…
29 май '11 в 22:05
2 ответа

Поделитесь важными примерами без связи

Допустим, вы пишете "большее" приложение и хотите регистрировать определенные ошибки в ваших классах. Теперь почти каждому классу нужен доступ к Logger. Одним из простых решений было бы следующее (PHP, но это не имеет значения): class SomeClass { pu…
01 мар '13 в 12:23
3 ответа

Какая практика лучше? Передача ссылок на объекты или ссылки на методы объекта в Python

Я пишу небольшой кусочек кода на Python и мне интересно, что другие люди думают об этом. У меня есть несколько классов, в каждом из которых есть несколько методов, и я пытаюсь определить, что "лучше": передавать объекты через вызовы методов или пере…
2 ответа

Нужно ли делать пользовательские события в этой ситуации?

Для хобби я делаю игру. В игре есть монстр, преследующий человека (как Pacman). Когда Пакман застрял, может съесть человека или сделать какое-то движение; событие должно быть возбуждено. Это потому, что моя программа стала неактивной, потому что все…
21 дек '11 в 20:24
1 ответ

Как провести рефакторинг кода jqGrid, от метода контроллера JsonResult, до слабосвязанных моделей?

Я использую пример из Code Project: ASP.NET MVC-4,Entity Framework и JQGrid Demo с простым WebApplication списка Todo. Тем не менее, разработчик не добился максимальной сплоченности, поскольку контроллер выполняет всю бизнес-логику. Я пытаюсь отдели…
14 апр '15 в 15:19
1 ответ

Когда улучшение согласованности программ ухудшает сцепление?

Недавно я сдал экзамен по принципам и шаблонам проектирования, и один из вопросов на экзамене был следующим: "Иногда улучшение сплоченности программы может ухудшить сцепление, приведите пример". Из того, что я понимаю, сплоченность заключается в том…
1 ответ

Является ли "слишком много зависимостей" запахом кода?

Как правило, мне нравится использовать инжекцию зависимости на основе конструктора, но недавно я работал над классом, который зависел от 4 других классов. Поскольку длинные списки аргументов трудно читать, я заменил конструктор с 4 аргументами на 4 …