Описание тега code-smell

НЕ ИСПОЛЬЗУЙТЕ ЭТУ ТЕГ, он находится в процессе активного прожига: http://meta.stackru.com/q/306314
4 ответа

Следует ли широко использовать local_assigns.has_key? частично считать кодовым запахом?

У меня есть частичный Rails, который имеет несколько таких проверок: <%= if local_assigns.has_key?(:show_blabla) && show_blabla == false %> blabla <% end %> Я думаю, что этот вид скрывает реальный список параметров, которые испол…
12 май '09 в 05:27
1 ответ

Рефакторинг вложенных циклов в методе Ruby, который экспортирует в CSV

Я новичок в Ruby, и я должен экспортировать информацию в CSV. Я написал этот код, и он мне не очень нравится. Я не знаю, как я могу реорганизовать его и избавиться от вложенных циклов. Мои отношения следующие: у ордера много ходов, у хода много оста…
26 май '16 в 13:13
2 ответа

Допускается более одного значения "без значения" в пространстве значений

Я использую строковый тип для своего атрибута Id на всех объектах моего домена. Например: public class Person { property string Id { get; set; } // ... more properties } Здесь нет трюков. null представляет значение "без значения", когда создается но…
25 июл '12 в 13:47
6 ответов

Модульное тестирование стиля класса

При написании юнит-тестов я всегда extends Assertпоэтому у меня есть безусловный доступ ко многим звонкам ко многим Assert.assertXXX методы: Например: public class MyTestClass extends Assert { @Test public void SomeTest() { assertNotNull(""); // ins…
23 дек '12 в 18:54
6 ответов

Является ли ссылка на базовый тип реализации в интерфейсе запахом кода?

Я столкнулся с дизайнерским решением, которое не пахнет для меня, но заставляет меня задуматься. Взгляните на следующий пример кода: public interface IGenerator { ///<summary> /// Combines two generators; performs magic as well /// </summar…
09 янв '09 в 14:41
1 ответ

Как лучше, чтобы сервисный уровень проверял входные данные?

Я строю сайт MVC, используя TDD. Я начал с создания хранилища и сервисных слоев для обработки CRUD-операций моих классов POCO. Я еще не написал никакого кода контроллера, и я думал, что страницы будут просто публиковать значения форм и т. Д. В контр…
1 ответ

Является ли запах кода возвращением делегата, который пропускает детали реализации?

У меня есть класс под названием MapBuilder<T> который внутренне использует Dictionary<PropertyInfo,string>Класс используется для быстрого построения сопоставления свойств, которые будут проксированы. Класс выглядит так: public class MapB…
15 ноя '10 в 23:10
2 ответа

Рефакторинг контрольного параметра

Я использую инструмент для поиска запахов кода в коде, называемом reek, и у меня есть проблема с одним из них называется Control Parameter def place_ship(ship, start_position, orientation) @row = start_position[:row] @column = start_position[:column…
07 янв '18 в 08:49
4 ответа

Стек зависимостей - Кодовый запах?

У меня есть настройки класса, такие как это: class ClassToCheck(otherClass class2, nextClass class3) class otherClass(thisClass class4, otherThisClass class5, popularClass class6) class nextClass() (это просто пример использования сигнатур конструкт…
10 фев '14 в 18:49
2 ответа

Являются ли длинные имена переменных / функций своего рода запахом кода?

Имеет длинные имена переменных / функций (corresponding_OneToMany_task_spec) какой-то кодовый запах? Каков предлагаемый способ упрощения?
26 окт '11 в 07:11
6 ответов

Является ли проверка типа isInUnitTest() антипаттерном?

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

Циклическая зависимость в C#, это дизайн запах?

class A { public B b { get; set; } public void Ma() { b.Mb(); } } class B { B() { A a = new A(); a.b = this; } public void Mb() { } } в данном сценарии я создаю объект класса A в классе B и передаю текущий объект B в A.У меня 3 вопроса1. Есть ли цик…
10 авг '16 в 11:37
3 ответа

"Параметры базового класса не всегда используются" код запаха

Предположим, у вас был такой код: public Base { abstract void Register(); } public Registrator1: Base { override void Register() { //uses the current state of the object to populate the UI captions } } public Registrator2: Base { override void Regis…
17 окт '11 в 10:41
4 ответа

Является ли html.renderaction кодом запах

Недавно я начал новую работу, в которой меня поручили исправлять ошибки в разрабатываемом приложении ASP.Net MVC. Я большой поклонник использования подхода MVC для веб-приложений и создания некоторых здоровенных производственных приложений на Maveri…
07 июл '10 в 12:37
1 ответ

Правила PMD: как правильно решить эту проблему DD-аномалии

У меня есть следующий код Android: public final List<MyObj> getList() { Cursor cursor = null; try { final String queryStr = GET_LIST_STATEMENT; cursor = db.rawQuery(queryStr, new String[] {}); List<MyObj> list = null; //here I get the da…
15 янв '13 в 15:21
7 ответов

Разрешение анти-паттерна цепочки вызовов

Я начал замечать что-то вроде анти-паттерна в моей разработке ASP.NET. Это беспокоит меня, потому что я чувствую, что это правильно, чтобы поддерживать хороший дизайн, но в то же время он пахнет неправильно. Проблема в следующем: у нас многоуровнево…
22 мар '11 в 16:13
1 ответ

Максимальная цикломатическая сложность и методы рефакторинга

Какое рекомендуемое пороговое значение Cyclomatic Complexity для любой поддерживаемой Java-функции и на основе этого значения существует какой-либо конкретный метод рефакторинга?
2 ответа

Это вонючая обработка ошибок?

Это кажется довольно эффективным способом обработки ошибок, но я хочу знать, как сделать это правильно, если это вонючий: Class Widget ... Public Function IsValid() As Boolean If (some condition isnt met) Then Throw New ApplicationException("Error m…
06 мар '11 в 22:34
3 ответа

Рефакторинг включения запаха кода типов при добавлении метода к типу кажется неуместным

Допустим, у меня есть следующий метод, который, учитывая PaymentType, отправляет соответствующий запрос на платеж каждому объекту, из которого необходимо снять платеж: public void SendRequestToPaymentFacility(PaymentType payment) { if(payment is Cre…
14 янв '12 в 22:42
6 ответов

Бесполезное переопределение: просто нонсенс / запах кода или еще больше зла?

Мы только что нашли следующие строки кода Java, @Override public String toString() { return super.toString(); } и начал размышлять. Это просто скучный бессмысленный запах кода или даже штраф за время выполнения?
09 авг '12 в 11:59