Вопросы с тегом «refactoring»

29
Как вы поддерживаете свои юнит-тесты при рефакторинге?

В другом вопросе было выявлено, что одной из проблем TDD является синхронизация набора тестов с базой кода во время и после рефакторинга. Теперь я большой поклонник рефакторинга. Я не собираюсь бросать это, чтобы сделать TDD. Но я также сталкивался с проблемами тестов, написанных таким образом, что...

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

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

28
Рефакторинг операторов Switch и есть ли реальное использование для операторов Switch вообще?

Я читал эту статью, и мне было интересно, избавимся ли мы от всех операторов switch, заменив их словарем или фабрикой, чтобы в моих проектах вообще не было операторов switch. Что-то не совсем складывалось. Вопрос в том, имеют ли операторы switch какое-либо реальное применение, или мы идем дальше и...

28
Есть ли шаблон дизайна, который устраняет необходимость проверять флаги?

Я собираюсь сохранить некоторую полезную нагрузку строки в базе данных. У меня есть две глобальные конфигурации: шифрование компрессия Они могут быть включены или отключены с помощью конфигурации таким образом, что либо только один из них включен, либо включены, либо оба отключены. Моя текущая...

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

По словам Мартина Фаулера , рефакторинг кода (акцент мой): Рефакторинг - это дисциплинированный метод реструктуризации существующего тела кода, изменения его внутренней структуры без изменения внешнего поведения . Его сердце - это серия небольших преобразований, сохраняющих поведение. Каждое...

27
Как мне убедить мою команду использовать меньшие классы / методы?

Этот вопрос был перенесен из переполнения стека, потому что на него можно ответить в Software Engineering Stack Exchange. Мигрировал 8 лет назад . Отказ от ответственности: я новичок (это мой третий день работы), и большинство моих товарищей по команде более опытны, чем я. Когда я смотрю на наш...

26
Как преобразовать ОО-программу в функциональную?

У меня возникают трудности с поиском ресурсов для написания программ в функциональном стиле. Самая сложная тема, которую я мог найти в Интернете, - это использование структурной типизации для сокращения иерархии классов; большинство просто имеют дело с тем, как использовать карту / сложение /...

25
Коллега не желает использовать модульные тесты «так как это больше для кода»

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

25
Имеет ли когда-нибудь смысл для рефактора получить более высокий LOC? [закрыто]

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

24
Как провести рефакторинг, когда вся ваша разработка идет по отраслям?

В моей компании все наши разработки (исправления ошибок и новые функции) выполняются в отдельных ветках. Когда он будет завершен, мы отправим его в QA, который тестирует его в этой ветви, и когда нам дают зеленый свет, мы объединяем его с нашей основной веткой. Это может занять от одного дня до...

23
Как совершить текущий рефакторинг?

Итак, у меня есть этот большой проект, который находится в процессе рефакторинга мной. Я много чего меняю, так что нет шансов заставить его скомпилироваться в ближайшее время. Я живу в специальной ветке Git, которую я назвал cleanup(которая, в masterконце концов, будет объединена ). Проблема в том,...

23
Избегайте слишком сложного метода - цикломатическая сложность

Не уверен, как поступить с этим методом, чтобы уменьшить цикломатическую сложность. Сонар сообщает 13, тогда как 10 ожидается. Я уверен, что нет ничего плохого в том, чтобы оставить этот метод, поскольку он просто бросает мне вызов, как поступить в соответствии с правилом Сонара. Любые мысли будут...

23
Рефакторинг или Концентрат на Завершение Приложения

Хотели бы вы провести рефакторинг своего приложения или сосредоточиться на его завершении? Рефакторинг будет означать, что прогресс приложения будет замедляться. Завершение приложения будет означать, что вы получите очень сложное приложение для поддержки в дальнейшем? Приложение представляет собой...

23
Разрешается ли случайный рефакторинг кода в Scrum

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

22
Сколько времени я должен посвятить рефакторингу моего кода? [закрыто]

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

22
Куда относится рефакторинг в модели именования веток GitFlow?

Недавно я начал работать с моделью GitFlow, реализованной с помощью bitbucket. И есть одна вещь, которая мне не совсем понятна. Мы стараемся регулярно справляться с нашей технической задолженностью, оставляя в памяти, планируя и выполняя задачи рефакторинга. Такие ветви рефакторинга заканчиваются...

21
Как радикально улучшить покрытие кода?

Мне поручено получить устаревшее приложение под модульным тестом. Сначала немного информации о приложении: это 600-килобайтная кодовая база Java RCP с этими серьезными проблемами. массовое дублирование кода нет инкапсуляции, большая часть личных данных доступна извне, некоторые бизнес-данные также...

21
Что вы можете сделать с качеством существующих интеграционных и модульных тестов, будучи новым парнем в команде?

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

21
Рефакторинг: Разве это не красивое слово для очистки вашего кода? [закрыто]

Закрыто . Этот вопрос основан на мнении . В настоящее время не принимает ответы. Хотите улучшить этот вопрос? Обновите вопрос, чтобы ответить на него фактами и цитатами, отредактировав этот пост . Закрыто 4 года назад . До выхода книги Мартина Фаулера «Рефакторинг: улучшение дизайна существующего...

21
Когда допустимо НЕ починить разбитые окна?

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