«refactoring» 태그된 질문

리팩토링은 기존 코드를 재구성하여 외부 동작을 변경하지 않고 내부 구조를 변경하는 훈련 된 기술입니다.

5
코드 재사용 철학을 다루는 방법?
새 프로젝트를 시작할 때 코드 재사용에 대해 끊임없이 생각하고 있습니다. 코드를 어느 정도 재사용 할 수 있어야합니까? 애플리케이션 범위로 제한해야합니까, 아니면 프로젝트 외부에서 재사용 할 수 있도록해야합니까? 때로는 코드 재사용 성이 단순한 디자인에 방해가 될 수 있습니다. 코드 재사용에 대한 자신의 이해와 접근 방식을 공유하십시오.

1
파이썬“신 클래스”를 리팩토링하는 방법?
문제 저는 주 클래스가“ God Object ” 인 Python 프로젝트를 진행하고 있습니다. 가 있습니다 너무 많은 속성과 메소드 '빌어 먹을! 수업을 리팩토링하고 싶습니다. 지금까지… 첫 번째 단계에서는 상대적으로 간단한 일을하고 싶습니다. 그러나 가장 간단한 접근 방식을 시도했을 때 일부 테스트와 기존 예제가 중단되었습니다. 기본적으로이 클래스에는 속성 목록이 많이 있습니다. 그러나 …

7
애자일 프로세스와 워터 폴 프로세스 타임 라인에서 코드 리팩토링 및 최적화는 어디에 적합해야합니까?
프로젝트 관리 팀은 "작동"이라는 말이 100 % 완료된 것으로 간주한다는 개념이있는 것으로 보입니다. 대부분의 프로그래머는 항상 그렇지는 않다는 것을 알고 있습니다. 일부 기능을 작동시키기 위해 대체 접근 방식을 시도한다고해서 반드시 최상의 솔루션을 찾은 것은 아니며 다른 개발자와 검토 한 후 재 작업이 필요하지 않습니다. 나는 종종 무언가를 끝내고 물러서서 비즈니스 …

4
log4j를 slf4j로 업그레이드해야합니까?
닫은. 이 질문은 주제에 맞지 않습니다 . 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? Software Engineering Stack Exchange에 대한 주제가 되도록 질문을 업데이트하십시오 . 휴일 오년 전에 . 우리는 몇 가지 계획 리팩토링에 대한 우리의 JEE 웹 응용 프로그램을 검토하고 제안 중 하나를 대체하는 것입니다 log4j함께 logback또는slf4j 팀은 우리가이 작업을 …

3
팀 이름 변경, 리팩토링 및 변경 주요 변경에 대한 모범 사례
팀 환경에서 리팩토링하고 이름을 바꾸는 모범 사례는 무엇입니까? 몇 가지 시나리오를 염두에 두고이 작업을 수행합니다. 일반적으로 참조되는 라이브러리가 리팩토링되어이를 참조하는 라이브러리 또는 프로젝트에 주요 변경 사항이있는 경우. 예를 들어, 메소드의 이름을 임의로 변경합니다. 프로젝트의 이름이 바뀌고 업데이트 된 참조로 솔루션을 다시 빌드해야하는 경우 폴더를 소개하고 기존 프로젝트 또는 솔루션을 새 …

7
복잡한 레거시 앱에서 새로운 버그가 발생할 가능성을 낮추기 위해 어떤 방법을 사용할 수 있습니까?
내가 일하는 곳에서 나는 종종 오래된 시스템 (.NET 1)에서 코드를 완성한 스파게티를 개발하고 버그 수정해야합니다. 변수 이름, 프로그램 구조 또는 주석에 대한 생각은 거의 없습니다. 이로 인해 어떤 비트가 변경되어야하는지 이해하는 데 오랜 시간이 걸리고 수정을 했으므로 기존 소프트웨어를 '파손'하는 경우가 많습니다. 난 정말 정말 하거나 이에 대한 프로그래머 시간 …

3
의도적으로 디자인 패턴과 리팩토링을 어떻게 연습 할 수 있습니까? [닫은]
닫은. 이 질문은 주제에 맞지 않습니다 . 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? Software Engineering Stack Exchange에 대한 주제가 되도록 질문을 업데이트하십시오 . 휴일 3 년 전 . 패턴 리팩토링 책을 읽고 패턴 을 리팩토링하고 사용하는 새로운 방법에 대한 의도적 인 연습 없이는 기술이 향상되지 않기 때문에 기술을 연습 …


5
긴 메소드 리팩토링 : 그대로두고 메소드로 분리 vs 로컬 함수 사용
다음과 같은 긴 방법이 있다고 가정하십시오. public void SomeLongMethod() { // Some task #1 ... // Some task #2 ... } 이 방법에는 별도의 방법이나 로컬 기능으로 이동해야하는 반복적 인 부분이 없습니다. 긴 방법이 코드 냄새라고 생각하는 사람들이 (나를 포함하여) 많이 있습니다. 또한 #region여기에 (s) 를 사용하는 것을 좋아하지 않으며 …

1
딥 아키텍처 리팩토링과 기능 기반 개발을 결합하는 더 좋은 방법을 찾고
문제 설명: 주어진: 소스 제어로서의 TFS 아키텍처 디자인이 거의 없거나 거의없는 수많은 레거시 코드가 포함 된 강력한 데스크톱 클라이언트 응용 프로그램 고객은 음질, 빠른 전송 및 사용자에게 친숙하지 않은 UI에 대해 끊임없이 불만을 갖는 새로운 기능을 지속적으로 요구 합니다. 문제: 의심 할 여지없이 애플리케이션에는 깊은 리팩토링이 필요합니다. 이 과정은 필연적으로 …

4
신속한 프로토 타이핑 및 리팩토링
때로는 작은 프로젝트 (Android 앱과 같은)를 시작할 때 어떤 접근법이 결국에는 효과가 있는지 알지 못하며 한 가지 접근법으로 가서 시도해보십시오. 그러나 이전에이 방법을 사용한 적이 없다면 (이전에 프로그래밍 한 적이없는 응용 프로그램의 경우) 알 수없는 지형으로 들어가는 것과 같습니다. 사용할 라이브러리를 모릅니다 (어쩌면 여러 라이브러리를 시도해야 할 수도 있음). 그리고 …

3
타입 코드를 클래스로 교체 (리팩터링 [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; } } …
9 c#  refactoring 

6
2000 년대의 소프트웨어 솔루션, 전체를 패치하거나 다시 만들어야합니까?
특정 회사가 현재 사용하고있는 시스템과이 시스템으로 수행 할 작업에 대해 논의하기 위해 보냈습니다. 이 회사는 다양한 카톤 디스플레이를 제조합니다. 이 시스템은 고객, 주문 및 가격을 추적하기 위해 개발되었습니다. 시스템이 생성 된 이후로 많은 일이 일어 났으며 관리자가 설명한대로 " 잠금 "과 " 문제가있는 " 시스템은 이제 "동적 아님"과 "불안정한"으로 번역됩니다. …

7
LOC / 일 비율이 너무 높으면 귀찮게해야합니까? [닫은]
휴무 . 이 질문은 의견 기반 입니다. 현재 답변을받지 않습니다. 이 질문을 개선하고 싶습니까? 이 게시물 을 편집 하여 사실과 인용으로 답변 할 수 있도록 질문을 업데이트하십시오 . 휴일 3 년 전 . 현재 인디 프로젝트를 진행 중이므로 인간 테스트 또는 외부 코드 검토 전반에 걸쳐 사치가 없습니다. 그러나 현재 …
9 c#  refactoring 

8
새로운 기능을 처리하기 위해 데이터베이스 리팩토링 또는 업그레이드
데이터베이스 스키마 질문에 대한 여러 응답 은 현재 요구 사항의 일부가 아닌 기능에 대해 데이터베이스를 정규화하기위한 추가 테이블을 제안했습니다 (직원 / 사용자와 서로 다른 부서 간의 다 대다 관계를 허용하기위한 UserDepartment 테이블). 에 속하는.). 정규화에 반대하지 않습니다. 데이터베이스 디자인과 관련하여 미래에 누군가가 원할 '확실한'기능을 포함시키려는 강력한 추진력이 있습니다. 오버 엔지니어링 …

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.