no swim no life

CODE complete, 18: 테이블을 활용하는 방법 본문

work/fundamental

CODE complete, 18: 테이블을 활용하는 방법

달려간다 2009. 5. 9. 20:51

논리적인 명령문

테이블에 입력된 데이터는 논리적인 명령문(코드로 작성된 데이터)보다 유지 보수하기 쉽다.

직접 접근 방식

  • 데이터 자체를 참조 키로 사용
  • 간단하고 빠름
  • 참조 키 조작
    • 데이터를 키 값으로 사용할 수 있도록 수정
    • 월별일수, 보험료 테이블 등

인덱스 접근 방식

  • 어떤 값을 테이블의 키 값으로 직접 쓰기 어려운 경우
  • 메인 테이블을 유지하고, 이를 참조하는 인덱스 테이블을 구성
  • 검색 속도의 이점
  • 메인 테이블에 있는 각 엔트리들의 크기가 크다면, 인덱스 테이블을 이용하여 공간을 줄일 수 있음
  • 인덱스 사용으로 공간적인 이익을 얻을 수 없더라도, 메인 테이블에 있는 엔트리보다 인덱스에 있는 엔트리를 다루는 것이 더 간단

단계적 접근 방식

  • 인덱스 방식처럼 간접적 접근
  • 불규칙적인 값으로 테이블 인덱스를 만들기 어려운 경우
  • 유연성과 수정 가능성
    • 선언된 경계값들만 변경
  • 최고 값을 테이블에 입력한 다음, 점수와 각 영역의 최고 값을 비교하는 루프를 작성
  • 고려할점
    • 종결점을 확인하라 (밀려쓰지 마라)
    • <, <= 의 혼동을 주의
    • 순차 검색법 대신 이진 검색법 사용을 고려
    • 인덱스 접근 방식 사용을 고려

'work > fundamental' 카테고리의 다른 글

리눅스 자주쓰는 명령어  (0) 2009.05.25
CODE complete, 17: 특이한 제어 구조들  (0) 2009.05.09
CODE complete, 16: 루프 제어  (0) 2009.03.12
Comments