Запитання з тегом «refactoring»

Рефакторинг - це дисциплінована методика перебудови існуючого коду, зміна його внутрішньої структури без зміни зовнішньої поведінки.

5
Як боротися з філософією повторного використання коду?
Я постійно замислююся про повторне використання коду під час запуску нового проекту. Якою мірою потрібно зробити свій код багаторазовим? Чи слід обмежувати його на область застосування або потрібно зробити його повторним використання поза проектом? Іноді я відчуваю, що використання коду може перешкоджати простому дизайну. Будь ласка, поділіться власним розумінням та …

1
Як переробити "боговий клас" Python?
Проблема Я працюю над проектом Python, головним класом якого є “ God Object ”. Існує так багато атрибутів і методів! Я хочу переробити клас. Так далеко… Для першого кроку я хочу зробити щось відносно просте; але коли я спробував найпростіший підхід, він зламав деякі тести та існуючі приклади. В основному, …

7
Де повинні рефакторинг коду та оптимізація коду підходити як до гнучкої, так і для водоспадної процедури?
Серед команди управління проектом існує таке поняття, що твердження, що "працює" означає, що його слід вважати завершеним на 100%. Більшість програмістів знають, що це не завжди так. Якщо я намагаюся використати альтернативні підходи, щоб отримати функціональну функціональність, це не обов'язково означає, що я знайшов найкраще рішення, або це не потребуватиме …

4
Чи потрібно мені оновити log4j до slf4j [закрито]
Зачинено. Це питання поза темою . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб воно було тематичним для обміну стеками програмного забезпечення. Закрито 5 років тому . Ми переглядаємо наш веб-додаток JEE на предмет запланованого рефакторингу, і одна з пропозицій - замінити log4jна logbackабоslf4j Команді не зрозуміло, …

3
Кращі практики перейменування, рефакторингу та зміни змін у командах
Які найкращі практики щодо рефакторингу та перейменування в командному середовищі? Я придумую це з урахуванням кількох сценаріїв: Якщо бібліотека, на яку зазвичай посилаються, відремонтована, ввести нескінченну зміну в будь-яку бібліотеку чи проект, на який посилається. Наприклад, довільно змінюючи назву методу. Якщо проекти будуть перейменовані і рішення повинні бути відновлені з …

7
Які підходи я можу застосувати, щоб зменшити шанси введення нових помилок у складний застарілий додаток?
Там, де я працюю, мені часто доводиться розробляти (і виправляти помилки) в старій системі (.NET 1), чий код - це повні спагеті - з невеликою думкою, приділеною іменам змінних, структурі програми та коментарям. Через це мені потрібно віки, щоб зрозуміти, які біти потрібно змінити, і я часто 'ламаю' існуюче програмне …

3
Як я можу практично розробляти шаблони дизайну та рефакторинг? [зачинено]
Зачинено. Це питання поза темою . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб це було темою для обміну стеками програмного забезпечення. Закрито 4 роки тому . Я читав книгу " Рефакторинг" за шаблонами і цікавився, як я можу отримати шанс практикувати свої навички, тому що без …

4
Рефакторинг - чи доцільно просто переписати код, доки пройдуть усі тести?
Нещодавно я переглядав "Всі дрібниці" від RailsConf 2014. Під час цієї розмови Санді Мец відновлює функцію, яка включає велику вкладену операцію if: def tick if @name != 'Aged Brie' && @name != 'Backstage passes to a TAFKAL80ETC concert' if @quality > 0 if @name != 'Sulfuras, Hand of Ragnaros' @quality …

5
Довгий метод рефакторингу: залишаючи як розділення на методи проти використання локальних функцій
Припустимо, у мене давно такий метод: public void SomeLongMethod() { // Some task #1 ... // Some task #2 ... } У цього методу немає повторюваних частин, які слід перемістити в окремий метод або локальну функцію. Є багато людей (включаючи мене), які думають, що довгі методи - це кодовий запах. …

1
Шукаєте кращого способу поєднати глибокий архітектурний рефакторинг із розробкою на основі функцій
Постановка проблеми: Подано: TFS як контроль над джерелами Великий настільний клієнтський додаток із безліччю застарілого коду з поганим або майже відсутнім архітектурним дизайном. Клієнти постійно потребують нових функцій з якістю звуку, швидкою доставкою та постійно скаржаться на непривітний користувальницький інтерфейс. Проблема: Застосування, безперечно, вимагає глибокого рефакторингу. Цей процес неминуче робить …

4
Швидке прототипування та рефакторинг
Іноді, коли я починаю невеликий проект (наприклад, додаток для Android), я не знаю, який підхід вийде в кінці, і я просто намагаюся спробувати один підхід і спробувати. Але якщо я ніколи раніше не використовував цей підхід (для свого роду програми, які я ніколи не програмував), це як наїзд на невідому …

3
Замініть тип коду класом (From Refactoring [Fowler])
Ця стратегія передбачає заміну подібного: public class Politician { public const int Infidelity = 0; public const int Embezzlement = 1; public const int FlipFlopping = 2; public const int Murder = 3; public const int BabyKissing = 4; public int MostNotableGrievance { get; set; } } З: public class …
9 c#  refactoring 

6
Програмне рішення 2000-х років, чи варто спробувати зафіксувати або переробити все?
Мене відправили обговорити систему, яку зараз використовує певна компанія, і що з нею потрібно робити. Компанія виготовляє різні картонні вітрини. Ця система була розроблена для відстеження клієнтів, замовлень та цін. Багато часу трапилося з того часу, як система була створена, і система зараз, як описав її менеджер, " заблокована " …

7
Чи варто мені турбуватися, якщо мій коефіцієнт LOC / день занадто високий? [зачинено]
Закрито . Це питання ґрунтується на думці . Наразі відповіді не приймаються. Хочете вдосконалити це питання? Оновіть питання, щоб на нього можна було відповісти фактами та цитатами, відредагувавши цю публікацію . Закрито 4 роки тому . В даний час я працюю над проектом Інді, тому мені точно не подобається тестування …
9 c#  refactoring 

8
Рефакторинг або модернізація баз даних для обробки нових функцій
Кілька відповідей на питання схеми бази даних запропонували додаткову таблицю для нормалізації бази даних щодо функції, яка не є частиною поточних вимог (таблиця UserDepartment, щоб забезпечити багато-багато-багато стосунків між працівниками / користувачами та різними відділами, які вони можуть належати.). Не проти нормалізації. Схоже, коли справа доходить до дизайну баз даних, …

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.