태그>refactoring(총 29개의 글)
'refactoring' 관련 최근글
-
- 생성 - Replace Constructors with Creation Methods
-
호바호바호바 by Hova_Moon|2014/12/09 01:48
C+ 이나 Java 같은 언어는 생성자의 이름이 class 의 이름과 동일 해야 하기 때문에 클래스의 역할에 따라 너무 많은 생성자들로 인해 몇가지 문제 점이 야기 될수 있다. - 각 생성자 별 용도 파악의 어려움- 사용자의 오용 가능성의 중가- 동일한 시그내처를 가진 생성자 추가의..
- 생성 - Replace Constructors with Creation Methods
-
- android rename package가 안되면 그냥 손으로.
-
공부가 본업. by 언제나19|2013/05/31 09:44
eclipse adt의 android tools의 rename package가 실패하는데, 해결책이 없나보다.그냥 search, replace로 손으로 고쳤다. 금방 됐다.src에서 import, res xml, proguard 정도를 고치면 되나보다. java.lang.reflect.InvocationTargetException at or..
- android rename package가 안되면 그냥 손으로.
-
- 책 - 리팩토링: Improving
-
무재칠시(無財七施) by 무재칠시|2012/11/07 16:30
Refactoring 리팩토링마틴 파울러 저/윤성준,조재박 공역 대청 | 2002년 03월 사실 프로그래밍 분야는 어찌보면 체계화된 교육 체계가 없는 경우가 더 많습니다. 저처럼 전산 비전공자들도 많이 일을 하고 있지만, 각자의 실력과 품질은 그런 것과도 관련없이 천차만별이라고들 하..
- 책 - 리팩토링: Improving
-
- 진화적인 설계-1.우리는 실패하고 있다 4부
-
Eternity's Chit-Chat by 이터너티|2011/05/23 01:01
패턴은 진화의 방향을 제시한다패턴을 사용하면서 부딪히게 되는 대부분의 문제는 패턴을 맹목적으로 사용할 때 발생한다. 대부분의 패턴 입문자가 빠지기 쉬운 함정은 패턴을 적용하는 컨텍스트의 적절성은 무시한 채 패턴의 구조에만 초점을 맞추는 것이다. 망치를 들면 모든 것이..
DesignByContext, Refactoring, Pattern, EvolutionaryDesign, 진화적인설계
- 진화적인 설계-1.우리는 실패하고 있다 4부
-
- 진화적인 설계-1.우리는 실패하고 있다 2부
-
Eternity's Chit-Chat by 이터너티|2011/04/14 00:53
부채는 쌓이고 요구사항 변경이 외부 품질의 적이라면 잘 못 된 메타포는 내부 품질의 적이다. 다른 성숙한 공학 분야에 비해 역사가 짧은 소프트웨어 개발 커뮤니티는 건축학이나 제조업과 같은 다른 공학 분야로부터 다양한 메타포를 차용해 왔다. 건축가가 설계 도면을 완성하면 ..
- 진화적인 설계-1.우리는 실패하고 있다 2부
-
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통..
-
Eternity's Chit-Chat by 이터너티|2010/03/29 23:06
이 테스트를 통과시키기 위해서는 3가지 메소드를 추가해야 한다. 우선 역수를 구하는 inverse() 메소드와 VALUE OBJECT의 동등성을 판단하기 위한 equals() 메소드, 그리고 equals() 메소드를 ..
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통..
-
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통한 진보 7부
-
Eternity's Chit-Chat by 이터너티|2010/03/17 21:39
Ratio는 분모와 분자를 속성으로 가지고 분자를 분모로 나눈 비율을 계산할 책임을 진다. 이 때 계산 시 적용할 소수점 이하 자릿수와 반올림 여부를 지정할 수 있어야 한다. 예를 들어 20:3의 계산 시 소수점 이하 2자리까지 계산하고 반올림한다면 결과로 6.667을 얻을 것이다. 테스트..
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통한 진보 7부
-
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통한 진보 6부
-
Eternity's Chit-Chat by 이터너티|2010/03/14 21:52
오만과 편견리팩토링 시간이다. 개선할 부분이 있을까? 코드 중복도 없고, INTENTION-REVEALING INTERFACE에 따라 메소드 명도 의도를 잘 드러낼 수 있는 이름을 사용하고 있다. 다만 한 가지 마음에 걸리는 부분이 있다면 ChangeBooth에서 환율을 관리하기 위해 doubl..
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통한 진보 6부
-
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통한 진보 5부
-
Eternity's Chit-Chat by 이터너티|2010/03/03 00:41
PATTERNS & PRINCIPLES ASSERTION 컴퓨터 프로그래밍이라는 것을 처음 배우기 시작하던 시절에 x = x + 1이라는 문장을 보고 의아하게 생각했던 기억이 있다. 어떻게 x에 1을 더한 값이 x와 같을 수 있지? 더 당황스러웠던 것은 프로그램 내의 함수 f에 대해 f(x) =..
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통한 진보 5부
-
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통한 진보 4부
-
Eternity's Chit-Chat by 이터너티|2010/02/26 18:20
잠깐! 잠깐! 잠시 호흡을 가다듬고 생각을 좀 해보자. 도메인 전문가들은 USD에서 KRW로의 환율을 등록할 때 2개의 환율을 등록한다고 생각할까? 그렇지 않다. 도메인 전문가들은 USD에서 KRW로의 환율과 KRW에서 USD로의 환율은 동일하다고 생각한다. 즉, 내부적으로는 하나..
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통한 진보 4부
-
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통한 진보 3부
-
Eternity's Chit-Chat by 이터너티|2010/02/26 12:00
이제 ExchangeRate가 더 이상 필요하지 않다. 과감히 삭제하자. 환전에 필요한 대부분의 로직을 작성했기 때문에 exchangeUSD_KRW()에 붙였던 @Ignore어노테이션을 제거하자. 이제부터는 코드를 작성한 후 전체 회귀 테스트를 실행하는 부분에 관해서는 언급하지 않..
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통한 진보 3부
-
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통한 진보 2부
-
Eternity's Chit-Chat by 이터너티|2010/02/20 17:57
잠시 동안 환율이란 시간과 무관하게 변경 가능한 기준 통화와 대상 통화 간의 비율이라고 생각하자. 이러한 의미를 가장 간단하고 명확하게 표현할 수 있는 방법은 Set 대신 기준 통화와 대상 통화 쌍을 속성으로 가지는 객체를 키로 하고, 두 통화 간의 비율을 double 값으로 저장..
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통한 진보 2부
-
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통한 진보 1부
-
Eternity's Chit-Chat by 이터너티|2010/02/12 13:55
사전 설계의 맹점현재의 환율 설계에는 한 가지 문제점이 존재한다. 한 시점에 KRW와 USD간에는 하나의 환율 정보만 존재해야 한다. 우리가 작성한 코드에서도 그럴까? 다음의 테스트 코드를 살펴보자. ChangeBoothTest.java@Testpublic void shouldExistUniqueE..
- 유연한 설계를 위한 패턴과 원리 - 3.리팩토링을 통한 진보 1부
-
- Refactoring : 구체적인 Refactoring 지침
-
디밥의 블로그 by debop|2009/07/12 12:07
Code Complete 2nd Ed.에서 발췌한 것으로, 구체적인 Refactoring 지침을 몇가지 수준에서 설명한 글입니다. 데이터 수준Magic Number를 명명된 상수로 대체한다.변수명을 보다 분명하고, 확정적으로 명명한다.표현식을 인라인(inline)으로 이동시킨다.표현식을 ..
- Refactoring : 구체적인 Refactoring 지침