소프트웨어 공학
The Core of HiMyTV Player
ryujt
2013. 7. 13. 04:51
프로그램 체험: http://www.himytv.com/ (실시간 강의 솔루션)
[그림 1]
[그림 1]은 HiMyTV의 재생기에 대한 코어 모듈들의 클래스 다이어그램입니다. 다소 복잡해 보이지만 사실 아래와 같이 몇 개 안되는 클래스로 시스템이 운영됩니다. 강사용 프로그램과 수강생용 프로그램이 재생기와 중복되는 기능들이 많기 때문에 중복되는 기능들을 부모 클래스로 옮기다보니 클래스가 다소 늘어났습니다.
- TCore: 프로그램의 핵심 기능만을 모아 둔 클래스 입니다.
- TView: 사용자 인터페이스의 유연성을 보장하기 위해서 코어 등에서는 View 관련 객체를 직접 참조하지 않습니다. 서로 전혀 무관한 것처럼 인식하도록 하기 위해서 입니다.
위의 두 클래스가 핵심입니다. 그리고 추가로 보이는 아래 클래스는 보조 역할을 합니다.
- TOption: 각종 옵션 설정
- TLayout: 재생기는 4 가지의 레이아웃을 제공하여 사용자가 맘에 드는 화면을 선택하는 기능이 있습니다. 이를 지원하는 클래스입니다.
각 유닛과 클래스들의 자세한 설명은 아래 링크와 같습니다. Description이 없는 유닛이나 클래스는 다른 것들에 비해 덜 중요하기 때문에 우선 순위에서 밀린 것들입니다.