메소드 레벨에서 증복 제거, 유연성 확보, 단일작업을 하지 않으면 절대 클래스 레벨에서 재사용성이 보장되지 않음. 예를 들어서 메소드가 두가지 일을 하는 경우라든가... 메소드 파라미터로 구체적인 타입을 넘긴다든가.... 이러면 거의 대부분 클래스는 작은 변화에도 크게 흔들림.
아놔콘다(anwaconda)2015-04-25 18:30
흔히 콘솔로 로그 찍을때 아무생각 없이 System.out.print(..)를 쓰는데..... 메소드 파라미터에 PrintStream타입을 받게 하고, 호출하는 쪽에서는 System.out을 넘겨주는 식이 되어야 함. 그러면 때에 따라서는 파일 스트림을 열어서 PrintStream으로 감싼 후 넘겨주면 파일로 로그를 출력하는 식으로 유연성이 확보됨.
디자인 패턴만 공부해도 많이 개선될 듯.
메소드 레벨에서 증복 제거, 유연성 확보, 단일작업을 하지 않으면 절대 클래스 레벨에서 재사용성이 보장되지 않음. 예를 들어서 메소드가 두가지 일을 하는 경우라든가... 메소드 파라미터로 구체적인 타입을 넘긴다든가.... 이러면 거의 대부분 클래스는 작은 변화에도 크게 흔들림.
흔히 콘솔로 로그 찍을때 아무생각 없이 System.out.print(..)를 쓰는데..... 메소드 파라미터에 PrintStream타입을 받게 하고, 호출하는 쪽에서는 System.out을 넘겨주는 식이 되어야 함. 그러면 때에 따라서는 파일 스트림을 열어서 PrintStream으로 감싼 후 넘겨주면 파일로 로그를 출력하는 식으로 유연성이 확보됨.