본문 바로가기

분류 전체보기590

리팩토링이란 리펙토링 외부에서 보는 프로그램의 기능은 변하지 않고 프로그램 내부 구조를 개선하는 것 프로그램의 동작이 변하지 않음을 증명하기 위해 유닛테스트가 필요하다 테스트 -> 리펙토링 -> 테스트 디버깅과 기능 추가는 리펙토링이 아니다. 리펙토링의 여러 방법 메서드나 클래스가 겹치는 경우 -> 분리 메서드나 클래스의 기능이 너무 많고 긴 경우 -> 메서드와 클래스를 따로 추출한다. 변수, 메서드, 필드명, 패키지명등이 안맞는 경우 -> 이름을 이해하기 쉽게 변경 public으로 선언된 것이 너무 많은 경우 -> 인스턴스 이름을 숨기고 싶을때는 팩토리 메서드 등의 방법 활용 switch문이나 if-else if 문의 남용으로 여러 분류조건이 반복되는 경우 클래스화 검토 -> 전략패턴이나 상태 패턴으로 변경 가능 .. 2023. 2. 6.
어뎁터 패턴 (adapter pattern) 어뎁터 패턴이란? 서로 다른 인터페이스를 중간에서 연결해주는 기능을 한다 기존에 사용중인 인터페이스들을 중간에 맞춰서 적용해 주는 역할로 사용한다. ex : 110v, 220v 돼지코 역할 2023. 2. 3.
리팩토링 대상 발견하는 법, 조건 정리 1. 코드에 반복적인 if - else 나 switch - case 조건이 있다면 클래스로 분리한다. 2023. 2. 3.
변수 아껴 사용하기 https://www.youtube.com/watch?v=kRdML08R2Yo&list=PLwouWTPuIjUg0dmHoxgqNXyx3Acy7BNCz 변수를 미리 선언하거나, 중간에 할당 된 값을 변경하거나, 아니면 초기 선언 용도와 전혀 다른 값을 할당해서 사용하게 되면, 변수 범위, 개수 증가 및 용도 변화로 작성 된 코드를 이해하는데 더 많은 노력이 들게 되고 그로인해 코드의 변경이 어렵게 된다. 그렇기에 위 영상에서 제시한 꼭 필요한 변수를 구분하기 위해 아래 가이드라인을 제시해 주었다. 1. 선언하고 1~2번 참조하는 변수는 꼭 필요한지 검토해보고 필요 없으면 사용 하지 않는 것 2. 의미를 더해주는 변수 위주로 사용하기 3. 같은 계산을 반복하는 경우 변수로 재사용 4. 가능한 선언과 값 할당.. 2023. 1. 27.