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

Вопросы по лучшим практикам написания качественного кода.

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

4
Как называется идиома, использующая цепочку методов для построения объекта?
Я часто использую шаблон, в котором я использую цепочку методов для настройки объекта, аналогичного шаблону Builderили Prototype, но не создаю новые объекты при каждом вызове метода, вместо этого изменяя исходный объект. Пример: new Menu().withItem("Eggs").withItem("Hash Browns").withStyle("Diner"); Просто интересно, есть ли название для этого шаблона и считается ли он анти-шаблоном, потому что, …

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

6
Как поощрять принятие контроля версий
Я недавно начал работать в команде, где нет контроля версий. Большинство членов команды не привыкли к контролю версий. Я использовал Mercurial в частном порядке, чтобы отслеживать свою работу. Я хотел бы призвать других принять его и, по крайней мере, начать создавать версии своего кода по мере развития изменений. Может ли …

8
Вы предпочитаете краткость или удобочитаемость в вашем коде? [закрыто]
Закрыто . Этот вопрос основан на мнении . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 4 года назад . Ярлыки языка часто могут использоваться, чтобы сделать код более кратким. Например, троичные и нулевые …

16
Какие простые методы вы используете для повышения производительности?
Я говорю о том, как мы пишем простые подпрограммы, чтобы повысить производительность, не делая трудным для чтения ваш код ... например, это типично для того, что мы узнали: for(int i = 0; i < collection.length(); i++ ){ // stuff here } Но я обычно делаю это, когда foreachне применимо: for(int …

7
Держите мои классы и методы как можно меньше?
Несколько дней назад я разговаривал с кандидатом наук по программной инженерии, и в какой-то момент она сказала мне: Держите ваши классы и методы как можно меньше И мне интересно, всегда ли это хорошая практика. Я имею в виду, например, стоит ли иметь класс с двумя аттибутами? Например, в некоторых методах …

7
Является ли тестовое покрытие адекватной мерой качества кода?
Если у меня есть какой-то код, который покрывает 80% тестов (все тесты пройдены), будет ли справедливо сказать, что он более высокого качества, чем код без тестового покрытия? Или справедливо сказать, что это более ремонтопригодно?

9
Являются ли методы init () запахом кода?
Есть ли цель объявить init()метод для типа? Я не спрашиваю, стоит ли нам отдавать предпочтение init()конструктору или как избежать объявленияinit() . Я спрашиваю, есть ли какое- либо обоснование для объявления init()метода (видя, насколько он распространен) или это запах кода, и его следует избегать. Эта init()идиома довольно распространена, но я пока …

9
Является ли слишком много утверждений кода запахом?
Я действительно влюбился в модульное тестирование и TDD - я заражен тестом. Тем не менее, модульное тестирование обычно используется для общедоступных методов. Хотя иногда мне приходится проверять некоторые предположения-утверждения и в частных методах, потому что некоторые из них «опасны», и рефакторинг не может помочь в дальнейшем. (Я знаю, что инфраструктуры …

10
Можно ли использовать концепцию энтропии для анализа исходного кода полезным способом?
Мне кажется логичным, что можно определить контекст для статического анализа исходного кода, который включает в себя правила для получения относительного значения сложности. Я знаю, что это не похоже на физический смысл, потому что в исходном коде нет «Энергии», но я держу пари, что были предприняты попытки, хотя бы академические, провести …

7
Должны ли абстракции снижать читабельность кода?
Хороший разработчик, с которым я работаю, недавно рассказал мне о некоторых трудностях, с которыми он столкнулся при реализации функции в некотором коде, который мы унаследовали; он сказал, что проблема была в том, что за кодом было трудно следовать. Исходя из этого, я посмотрел вглубь продукта и понял, как трудно было …

7
Как вы узнаете, является ли программное обеспечение хорошим или плохим, основываясь на эмпирических показателях?
В настоящее время меня просят взглянуть на проект, который закончил разработку ядра пять месяцев назад, но все еще имеет высокий уровень дефектов. Получается, что примерно на каждые 10 исправленных дефектов мы поднимаем как минимум 4, а в некоторых случаях 8 дефектов. Я считаю, что практика кодирования у продавца плохая, и …

11
Почему использование System.out.println () так плохо? [закрыто]
В настоящее время этот вопрос не очень подходит для нашего формата вопросов и ответов. Мы ожидаем, что ответы будут подтверждены фактами, ссылками или опытом, но этот вопрос, скорее всего, вызовет дебаты, споры, опрос или расширенное обсуждение. Если вы считаете, что этот вопрос можно улучшить и, возможно, вновь открыть, обратитесь за …

7
Каковы реальные преимущества статического анализа кода?
Такие инструменты, как pc-lint или QAC, могут использоваться для выполнения статического анализа кода на основе кода. По моему опыту статический анализ часто дает огромное количество шума, то есть предупреждений о вещах, которые не являются реальными ошибками, но каким-то образом нарушают одно из правил в данном наборе правил. Отключение определенных правил …

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