2011년 5월 26일 목요일

Replace Array with Object

String[] row = new String[3];
row [0] = "Liverpool";
row [1] = "15";

Performance row = new Performance();
row.setName("Liverpool");
row.setWins("15");



배열의 특정 요소가 다른 뜻을 가지고 있다면 배열을 각각의 요소에 대한 필드를 가지는 객체로 바꿔라.

! 동기
-      배열은 비슷한 객체가 어떤 순서대로 모여 있는 경우에 대해서만 사용되어야 한다.
! 절차
-      배열에 포함된 정보를 나타낼 새로운 클래스를 만든다. 여기에 배열을 위한 public필드를 만든다.
-      해당 배열을 사용하는 부분을 모두 새로운 클래스를 사용하도록 바꾼다.
-      배열의 요소에 get/set 메소드를 하나씩 추가하고 각 요소의 목적을 잘 나타내도록 메소드의 이름을 정한다.
-      클라이언트 코드가 이 메소드를 사용하게끔 수정한다.
-      배열에 접근하는 코드가 모두 메소드를 통하도록 바꾸고, 배열을 private 으로 만든다.
-      배열의 각요소에 대한 필드를 만들고, get/set 메소드에서 이 필드를 사용하도록 수정한다.
-      배열의 모든 요소를 필드로 바꾼 후에, 배열을 제거한다.
! 관련 리팩토링

댓글 없음:

댓글 쓰기

ETL 솔루션 환경

ETL 솔루션 환경 하둡은 대용량 데이터를 값싸고 빠르게 분석할 수 있는 길을 만들어줬다. 통계분석 엔진인 “R”역시 하둡 못지 않게 관심을 받고 있다. 빅데이터 역시 데이터라는 점을 볼때 분산처리와 분석 그 이전에 데이터 품질 등 데이...