<aside> 💡 간단한 주소록을 C로 구현해보자!

</aside>

<구현 조건>

  1. 이름, 주소, 전화번호를 관리 할 수 있는 주소록 프로그램 작성

  2. 메뉴 출력 및 화면 제어 로직을 Event loop구조를 적용하고 함수 포인터 테이블을 사용해 호출한다.

  3. 주소록 데이터 정보는 모두 파일로 저장한다.

  4. 최소 1만개 이상 더미 데이터를 넣어서 운영한다.

    1. 이름 중복 허용 (전화번호는 유일)
    2. 첫 번째 데이터와 1만 번째 데이터 간 검색속도 차이를 확인한다.
    3. 성능 극대화 방안을 제시한다.
  5. 데이터는 파일에 존재하며 메모리에 로드하지 않는다.

    1. 데이터 검색 명령 수행 시점에 파일을 읽어서 검색
  6. SQL SELECT문의 WHERE절 스타일 조건 검색을 지원한다.

    예) 이름=’홍길동’

    예) 이름=’홍길동’ and 전화번호=’010-1234-5678’

    예) 이름=’홍길동’ and 전화번호=’010-1234-5678’

  7. (선택) 정규 표현식 기반 검색을 지원한다. (구현 안함)

    1. 외부 라이브러리 사용

<구현한 방식>