이번 포스팅은 Partial Class에 대해 알아보겠습니다.
| partial class란?
partial 클래스는 C#에서 제공하는 기능으로
클래스, 구조체, 메서드 등 두 개 이상의 파일로 분할하는 것을 가능하게 합니다.
즉, 하나의 클래스를 여러 파일에 걸쳐서 정의할 수 있게 해주는 키워드입니다.
| partial class 사용 이유
그래서 partial 클래스는 왜 사용하는 걸까요?
예시를 통해 알아보겠습니다.
예를 들어 계산기 클래스를 만든다고 생각해 보겠습니다.
Calculator라는 계산기 클래스의 기능이 점점 더 많아진다면 어떻게 될까요?
메서드가 몇 개가 안될 때는 관리하기가 쉬워지지만 50개 정도만 돼도 유지 보수가 힘들어집니다.
이때, partial 키워드를 사용하여 클래스를 여러 부분으로 나누어 관리를 할 수 있습니다.
Calculator 클래스를 Calc_Add와 Calc_Sub와 나누어 필요한 메서드를 관리하여
유지보수성을 높일 수 있습니다.
| partial class 사용 방법
사용 방법은 간단합니다. 위 코드와 같이 같은 클래스 명을 사용하면서
앞에 partial 키워드를 사용하면 됩니다.
Calculator Calculator = new Calculator();
Calculator.Add();
Calculator.Sub();
이런 식으로 기존의 클래스와 메서드의 사용 방법과 같이 동일하게 사용할 수 있습니다.
| partial class 주의 사항
partial class는 매우 편리한 기능이지만 사용 시 몇 가지 주의사항이 있습니다.
- 동일한 클래스의 모든 부분이 동일한 접근 수준을 가져야 합니다.
- 클래스의 한 부분이 public인데 다른 부분이 private이면 컴파일 에러가 발생합니다. - 한 부분에서 선언된 필드는 다른 부분에서 직접 액세스 할 수 있습니다.
- 필드는 선언된 부분에서만 액세스 할 수 있습니다. - 모든 부분은 동일한 네임스페이스에 있어야 합니다.
- 다른 네임스페이스에 있는 클래스의 부분을 참조할 수 없습니다. - 하나의 부분에 선언된 메서드는 다른 부분에서 오버라이드할 수 없습니다.
이러한 주의사항들이 있으므로 코드를 작성하고
partial 키워드를 사용한다면 이 점들을 반드시 기억하고 적용해야 합니다.
| 마무리
C# partial 클래스에 대해 알아보았습니다.
현엽 코드를 살펴보며 알게 된 키워드인데 유용하게 사용할 수 있을 것 같습니다.
코드의 가독성과 유지보수성을 크게 향상하며 주의사항만 잊지 않으면 문제도 크게 되지 않을 것 같습니다.
틀린 점이나 질문이 있으면 댓글로 남겨주세요!
감사합니다 :)
'C#' 카테고리의 다른 글
C# 이미지의 2차원 배열을 순회하는 여러가지 방법 - 2 (2) | 2024.01.21 |
---|---|
C# 이미지의 2차원 배열을 순회하는 여러가지 방법 - 1 (0) | 2024.01.19 |
C# 비동기 프로그래밍 : Event-based Asynchronous Pattern(EAP) 이해 (0) | 2023.11.27 |
C# 비동기 프로그래밍 : deadlock 문제와 해결 방법 (0) | 2023.11.23 |
C# 비동기 프로그래밍 : Thread와 Task의 차이점 (0) | 2023.11.21 |