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

Термин «чистый код» используется для описания компьютерного программного кода, который является кратким, простым для понимания и четко выражает намерение программиста. Вопросы с этим тегом касаются процесса написания чистого кода или рефакторинга старого «грязного» кода в чистый код.

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

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

4
Является ли подобный код «крушение поезда» (в нарушение закона Деметры)?
Просматривая код, который я написал, я наткнулся на следующую конструкцию, которая заставила меня задуматься. На первый взгляд кажется достаточно чистым. Да, в реальном коде getLocation()метод имеет немного более конкретное имя, которое лучше описывает, в каком именно месте он находится. service.setLocation(this.configuration.getLocation().toString()); В этом случае serviceэто переменная экземпляра известного типа, объявленная в …

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

3
Дублирование констант между тестами и рабочим кодом?
Хорошо или плохо дублировать данные между тестами и реальным кодом? Например, предположим, у меня есть класс Python, FooSaverкоторый сохраняет файлы с определенными именами в заданный каталог: class FooSaver(object): def __init__(self, out_dir): self.out_dir = out_dir def _save_foo_named(self, type_, name): to_save = None if type_ == FOOTYPE_A: to_save = make_footype_a() elif type …

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

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

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

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

9
Проверяется ли избыточная проверка на соответствие лучшим практикам?
Я занимаюсь разработкой программного обеспечения в течение последних трех лет, но совсем недавно я осознал, насколько я невежествен в отношении хороших практик. Это заставило меня начать читать книгу « Чистый код» , которая меняет мою жизнь к лучшему, но я изо всех сил пытаюсь понять некоторые из лучших подходов к …

2
Применение принципов чистого кода к функциональным языкам
В настоящее время я читаю Чистый код Роберта Мартина . Я думаю, что это здорово, и когда я пишу ОО-код, я принимаю его уроки близко к сердцу. В частности, я думаю, что его совет использовать маленькие функции со значимыми именами делает мой код более плавным. Лучше всего подытожить этой цитатой: …

5
Как избежать чрезмерной перегрузки метода?
У нас довольно много мест в исходном коде нашего приложения, где один класс имеет много методов с одинаковыми именами и разными параметрами. Эти методы всегда имеют все параметры «предыдущего» метода плюс еще один. Это результат долгой эволюции (устаревший код) и такого мышления (я считаю): « Есть метод M, который выполняет …

8
Способы сломать «Синдром совершенного программиста» [закрыто]
Трудно сказать, что здесь спрашивают. Этот вопрос является двусмысленным, расплывчатым, неполным, чрезмерно широким или риторическим, и на него нельзя дать разумный ответ в его нынешней форме. Чтобы получить разъяснения по этому вопросу, чтобы его можно было снова открыть, посетите справочный центр . Закрыто 7 лет назад . Я, наверное, не …

5
Булево возвращение set.add (), если условно?
Оператор add класса set возвращает логическое значение, которое имеет значение true, если элемент (который должен быть добавлен) еще не существует, и false в противном случае. Пишет if (set.add(entry)) { //do some more stuff } считается хорошим стилем с точки зрения написания чистого кода? Мне интересно, так как вы делаете две …

3
Чистый код: последствия коротких методов с несколькими параметрами
Недавно во время обзора кода я наткнулся на код, написанный новым коллегой, который содержит шаблон с запахом. Я подозреваю, что решения моего коллеги основаны на правилах, предложенных известной Книгой Чистого Кодекса (и, возможно, другими подобными книгами). Насколько я понимаю, конструктор класса несет полную ответственность за создание допустимого объекта и что …

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.