QT를 이용한 그림판

당시 복학한 후 처음으로 수행한 프로젝트였습니다.
해당하는 과목은 객체지향 프로그래밍(Object-Oriented Programming)으로,
C++ 언어와 함께 객체지향 개념을 배우는 커리큘럼에 입소문으로만 들어오던(-_-;) 리눅스를 설치 및 활용해보고
QT를 이용한 그림판 작성 프로젝트가 요구되었지요.

본론으로 들어가기 전에 여담 하나만 늘어놔 볼께요.
리눅스 개념을 전혀 모르던 내게 상세한 지침 없이 (물론 스스로 학습할 수 있도록 개략적인 안내는 있었습니다.)
설치 & 활용의 과제는 그렇다고 쳐요... 문제는, 당시 삼성 NC10 넷북을 구매했던 제게 파티션을 건드리지 않고
무선랜 드라이버와 한글 입출력 문제는 생각지도 못한 난제였습니다. 무려 주구장창 5일간 허비.
학교 실습실 컴퓨터 뒤의 유선랜을 이용할 수 없었다면 치사하게 MAC 어드레스에 케이블 망 사용 허가를 했던
집의 인터넷 상황 덕에 더 큰 고비를 맞이했을지도요.

어찌어찌해서 리눅스 환경을 갖춰놨더니 이번엔 QT... 문법은 C++과 거의 동일했지만 기본 구조를 전혀 모르는
탓에 애먹었습니다. (생각해보면 이 프로젝트 덕에 스스로 학습하며 성과물을 체크해보는데 익숙해졌던 것 같네요.)


비트맵 방식이 아닌 객체 방식(Microsoft Office 군의 PowerPoint의 그림들과 같은 속성)으로 완성되었습니다.
기본 구현 사항인 도형 작성, 파일 저장 및 불러오기, 색상 부여 등에
추가 기능으로 도형 선택, 이동, 크기 조절, 정렬, Redo & Undo 등이 구현되었고요.

투박한 디자인 덕에 성능 또한 같이 평가절하 받을 것 같지 않나요? 물론 성능과는 별개였으니 다행이지요.
그리고 안타깝게도 디자인을 제가 제의했던 것 같네요. (당시 미적감각을 발휘할 여유가 없었다고 작게 변명해봅니다. ㅠ.ㅠ)

아쉬운 점은 코드 상의 초반 기본 틀(설계 수준까지는 아닌)과 일부 구현에 그치고,
코드 분량이 커짐에 따라 내가 제 역할을 못한 것 같아요.
후반 작업은 통합쪽으로 임무를 달리했으나 그마저도 버벅거렸던 탓에
1000줄 이상의 코드에 내가 울렁증이 있는 게 아닌가 걱정했던 때이기도 합니다.

다행스럽게도 같은 팀원들이 이런 부분을 커버해준 덕에 최종발표에서 좋은 성과를 얻을 수 있었습니다.
결론짓자면, 이 프로젝트를 통해서 뚜렷한 목적을 지닌 실무적 첫 팀활동으로 경험과, 팀워크의 장점,
제가 엔지니어로서 부족한 부분이 어떤 것인지 파악할 수 있었던 유익한 과정이었어요.

'Track 1 (Senior) > Major : CE (Project)' 카테고리의 다른 글

Verilog를 이용한 Simple DES 구현  (0) 2011.04.30
GeekOS (OS Project)  (2) 2011.04.30
MFC 프로젝트  (2) 2011.04.30
MU0 CPU Design  (4) 2011.04.15
Assembler Project  (0) 2011.04.09
prev 1 ··· 19 20 21 22 23 next