[C#] 가계부 만들기 - Default 설정

프로젝트/가계부(1)  2013.03.08 09:00

안녕하세요 명월입니다.


이번 포스팅에서는 환경설정파일(INI)을 이용하여 기본 설정을 하는 부분을 작성해 보도록 하겠습니다.



기본 타입과 기본 검색 기간을 설정하는 부분이겠습니다. 그러면 어느 부분인가 정확히 살펴보겠습니다.



검색 기간과 타입입니다. 검색기간은 수입 지출이 많은 분에게는 짧게 사용하고 수입, 지출이 적은 사람은 길게 사용하는 경향이 많은데 이런 모든 사람의 취향을 맞추기 위해 저 부분을 사용자 설정 부분으로 떼어 냈습니다.


그리고 타입도 지출이 많은 사람은 지출, 수입이 빈번한 사람은 수입을 기본 설정으로 하기가 편하기 때문에 사용자 정의로 떼어 놓았습니다.


지금은 두가지 설정 밖에 없지만 앞으로 통계 파넬이 만들어 지면 통계 설정(원, 막대, 선 등), 언어 선택 부분, DB선택 부분(MSSQL, Access), 백업 등등 새로운 영역이 생길 때 마다 추가하는 방식으로 진행하겠습니다.


그럼 어떻게 만들어 졌는지에 대해 알아보겠습니다.
환경파일 INI는 최근에 많이 사용하지 않는 패턴입니다. 즉 INI 설정할 바에야 레지스트리에 사용합니다. 그리고 C#으로 넘어와서는 setting 파일을 이용하여 환경설정을 하는 편입니다.
그러나 저는 레지스트리와 setting 파일을 사용하지 않고 INI을 사용하는 이유는 꼭 프로그램이 아니더라도 외부에서 설정이 가능하기 때문에 그렇습니다.



그럼 소스 확인을 해 보겠습니다.



환경설정파일(INI)는 C#에서 따로 지원되는 클래스가 없기때문에 C API에서 가져와서 사용하겠습니다.
위 보시는 바와 같이 접두가사 Write 인것은 저장하는 부분 Get인 부분은 읽어 드리는 부분입니다.


사용하는 곳을 사용해 보겠습니다.



환경설정 부분에서 저장 버튼을 누르면 해당 INI에 저장되는 메소드 입니다.
그렇다면 Get은 어디에서 사용 될 까요?


Main Panel 초기화와 환경설정 Panel 초기화 할때 사용 되겠습니다.





여기까지 환경 변수에 대해 알아 보았습니다.
1차 완료가 메뉴와 스테이스바, 로그 완성만이 남았습니다. 어떻게 보면 프로그램 중에서 가장 귀찮은(?) 작업이 남아있네요..


앞으로 1차 개발이 완료되면 이어서 통계 프로그램을 붙힐 생각입니다. Codeproject에서 유용할 그래프 컨트롤 클래스가 있나 찾아 봤는데 딱히 맘에 드는 클래스가 없어서 직접 다 만들 생각입니다.
통계 클래스를 만들 때는 설계 쪽도 조금은 포스팅해서 내용이 좀 더 쉽게 해 보겠습니다.


지금까지도 솔직히 어려운 부분은 없는데.. 설계없이 설명하다보니 글을 다 쓰고 확인 작업으로 처음 부터 읽어 보면 저도 무슨 말인지 모르겠고 뒤죽 박죽으로 될 때가 많더라구요..


어쨋든 웹튠처럼 재미있게 유익한 블로그가 되고 싶은데 아무래도 프로그램 언어 내용이라 딱딱히 지는 건 어쩔 수 없네요.. ^^


댓글 2개가 달렸습니다.
댓글쓰기
  1. C#초보
    2015.02.16 15:47 신고 |  수정/삭제  댓글쓰기

    예제 감사합니다. 정말 쉽게 설명하셨네요 감사합니다