안녕하세요 삽잡이입니다.
이번 시간에는 부분 클래스에 대해서 알아보려고합니다.
parrial이라는 키워드가 들어갑니다.
해당 키워드를 통해 부분 클래스를 작성할 수 있습니다.
부분 클래스를 사용하게 된다면
하나의 클래스를 여러 코드 파일에 나누어 작성할 수 있습니다.
즉, 서로 시그니처가 같다면 나뉘어져 있어도
최종적으로 컴파일러는 하나로 판단한다 이겁니다.
위의 코드인 Point 클래스를
두 개의 partial class 즉, 부분 클래스로 구현할 수 있습니다.
정말 부분입니다.
이 둘이 합쳐지면 실제 하나의 코드를 이루게 되는 것입니다.
과연 이 부분 클래스는 어떠한 장점을 가지고 있을까요?
다음에 로직, 디자인을 완벽하게 분리하는 경우가 올 때
이 부분 클래스가 큰 힘을 줄 수 있습니다.
뭔 소리냐, 파일에 따로 따로 놓여있어도 된다는 것입니다.
디자인을 담당하는 디자이너가 .ui로 파일을 만들고,
필자와 같은 프로그래가 .cs로 파일을 만든다 할지라도
두 클래스는 하나의 클래스이기 때문에 컴파일러 눈에는 하나로 보인다 이겁니다.
이것이 바로 partial class의 핵심입니다.
디자인 쪽에서 일반적으로 ui에 만들고 우리가 cs에 코드를 만드는데,
만약, 하나의 파일에 두 개의 작업을 하게 된다면?
섞여있기 때문에 누가 만든지 헷갈릴 것이고 뒤죽 박죽이 될 수 있습니다.
또한, 함부로 수정했다가 꼬여버릴 수도 있지요.
그래서 똑같은 클래스이지만,
각자 할일에 대해 따로 클래스를 부분으로 나눠서 개발하자는 것입니다.
이와 같은 제안으로 부터 partial class가 나오게 된것이지요.
당연히 partial method도 나왔지요.
나중에 WPF, WinForm을 배울때
디자이너 코드와 로직 코드를 분류하는 경우에서 다시 알아보도록 하겠습니다.
이번 시간은 여기까지 알아보도록 하겠습니다.
이상 삽잡이였습니다!
'삽질의 현장 > - .NET' 카테고리의 다른 글
#064_닷넷(.NET)_.Net Framework 기본 - LINQ의 역할 (기본형) 1 (0) | 2015.11.06 |
---|---|
#063_닷넷(.NET)_.Net Framework 기본 - LINQ 소개 및 관련 기능 (0) | 2015.11.06 |
#061_닷넷(.NET)_.Net Framework 기본 - 확장 메서드 (0) | 2015.11.05 |
#060_닷넷(.NET)_.Net Framework 기본 - 사용자 정의 타입 변환 (0) | 2015.11.05 |
#059_닷넷(.NET)_.Net Framework 기본 - 연산자 오버로딩` (0) | 2015.11.05 |