Вопросы с тегом «clean-code»

47
Почему кодирование имен аргументов в именах функций более распространено? [закрыто]

В Чистом коде автор приводит пример assertExpectedEqualsActual(expected, actual) против assertEquals(expected, actual) с первым утверждалось, что это более ясно, потому что это устраняет необходимость помнить, куда идут аргументы и возможное неправильное использование, которое проистекает из этого....

45
Как мне отредактировать цепочку операторов if-else if в соответствии с принципами чистого кода дяди Боба?

Я пытаюсь следовать рекомендациям дяди Боба по чистому коду и, в частности, держать методы короткими Я не могу сократить эту логику, хотя: if (checkCondition()) {addAlert(1);} else if (checkCondition2()) {addAlert(2);} else if (checkCondition3()) {addAlert(3);} else if (checkCondition4())...

44
Чистая архитектура дяди Боба - класс сущности / модели для каждого слоя?

ЗАДНИЙ ПЛАН : Я пытаюсь использовать чистую архитектуру дяди Боба в моем приложении для Android. Я изучил много проектов с открытым исходным кодом, которые пытаются показать правильный способ сделать это, и я нашел интересную реализацию, основанную на RxAndroid. Что я заметил В каждом слое...

39
Инвертирование оператора IF

Так что я программирую уже несколько лет, а недавно начал больше использовать ReSharper. Одна вещь, которую ReSharper всегда предлагает мне, - это «инвертировать» if, чтобы уменьшить вложенность ». Допустим, у меня есть этот код: foreach (someObject in someObjectList) { if(someObject != null) {...

38
Pass ID или объект?

При предоставлении метода бизнес-логики для получения объекта домена должен ли параметр принимать объект или идентификатор? Например, мы должны сделать это: public Foo GetItem(int id) {} или это: public Foo GetItem(Foo foo) {} Я верю в передачу объектов вокруг, в целом, но как насчет того случая,...

38
Насколько важно очищать чужой код, когда сталкивается с жестким сроком? [закрыто]

(Я говорю о коде HTML / CSS (не языках программирования), но я думаю, что мы также сталкиваемся с той же проблемой, что и программисты.) Я старший дизайнер в команде, и мне часто приходится пересматривать результаты работы моих юниоров в сжатые сроки. Я столкнулся с 2 проблемами: Их стиль...

34
Есть ли какая-то польза от одержимости созданием кода «красиво»?

Иногда я трачу смехотворное количество времени (часов) на то, чтобы сделать код «красивым». Я имею в виду, чтобы все выглядело симметрично. Я на самом деле быстро прокручиваю весь класс, чтобы увидеть, не выпрыгивает ли что-нибудь как не «красивое» или «чистое». Я трачу свое время? Есть ли какая-то...

33
Как я могу предотвратить неизвестное дублирование кода?

Я работаю на довольно большой кодовой базе. Сотни классов, тонны различных файлов, множество функциональных возможностей, более 15 минут требуется для создания новой копии и т. Д. Большая проблема с такой большой кодовой базой состоит в том, что у нее есть довольно много вспомогательных методов и...

33
Дополнительная строка в блоке против дополнительного параметра в чистом коде

контекст В Чистом коде , на странице 35, написано Это подразумевает, что блоки внутри операторов if, операторов else, операторов while и т. Д. Должны быть длиной в одну строку. Вероятно, эта строка должна быть вызовом функции. Это не только уменьшает объем включаемой функции, но также добавляет...

30
Это запах кода, чтобы установить флаг в цикле, чтобы использовать его позже?

У меня есть фрагмент кода, в котором я повторяю карту до тех пор, пока определенное условие не станет истинным, а затем позже использую это условие, чтобы выполнить еще кое-что. Пример: Map<BigInteger, List<String>> map = handler.getMap(); if(map != null && !map.isEmpty()) { for...

29
Какие выгоды вы видели от заботы о техническом долге?

Эта статья о техническом долге имеет несколько положительных моментов, в том числе: Работа над «техническими вопросами» работает лучше всего, когда она основана на историях. Кодовая база, вероятно, нуждается в работе везде, но выигрыш будет получен только там, где будет работать код по причинам,...

29
Сколько шаблонов проектирования и уровней абстракции необходимо? [закрыто]

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

23
Является ли подобный код «крушение поезда» (в нарушение закона Деметры)?

Просматривая код, который я написал, я наткнулся на следующую конструкцию, которая заставила меня задуматься. На первый взгляд кажется достаточно чистым. Да, в реальном коде getLocation()метод имеет немного более конкретное имя, которое лучше описывает, в каком именно месте он находится....

22
Относится ли программное обеспечение к производительности или к грязному коду?

Определение Википедии из программного обеспечения гнили фокусируется на производительности программного обеспечения. Это другое использование, чем я привык; Я думал об этом гораздо больше с точки зрения чистоты и дизайна кода - с точки зрения того, что код имеет все стандартные характеристики...

20
Правило 5 - использовать это или нет?

Правило 3 ( правило 5 в новом стандарте c ++) гласит: Если вам нужно явно объявить деструктор, конструктор копирования или оператор копирования, вы, вероятно, должны явно объявить все три из них. Но, с другой стороны, « чистый код » Мартина советует удалить все пустые конструкторы и деструкторы...

20
Дублирование констант между тестами и рабочим кодом?

Хорошо или плохо дублировать данные между тестами и реальным кодом? Например, предположим, у меня есть класс Python, FooSaverкоторый сохраняет файлы с определенными именами в заданный каталог: class FooSaver(object): def __init__(self, out_dir): self.out_dir = out_dir def _save_foo_named(self,...

19
Может ли язык программирования сконструировать принудительный «чистый код»? [закрыто]

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

18
Другие блоки увеличивают сложность кода? [закрыто]

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

17
Рефакторинг с низким уровнем воздействия и очистка кода от небрежного кода в ожидании требований

Я унаследовал существующую кодовую базу для продукта, который предосудительно небрежен. Фундаментальный дизайн крайне неадекватен, что, к сожалению, я мало что могу сделать без полного рефакторинга (ВЫСОКАЯ связь, НИЗКОЕ сцепление, безудержное дублирование кода, отсутствие технической проектной...

16
Способы сломать «Синдром совершенного программиста» [закрыто]

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