C#

C# Partial Class 이해

우준세 2023. 12. 27. 17:53
728x90
반응형

 

 

이번 포스팅은 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는 매우 편리한 기능이지만 사용 시 몇 가지 주의사항이 있습니다.

 

  1. 동일한 클래스의 모든 부분이 동일한 접근 수준을 가져야 합니다.
    - 클래스의 한 부분이 public인데 다른 부분이 private이면 컴파일 에러가 발생합니다.
  2. 한 부분에서 선언된 필드는 다른 부분에서 직접 액세스 할 수 있습니다.
    - 필드는 선언된 부분에서만 액세스 할 수 있습니다.
  3. 모든 부분은 동일한 네임스페이스에 있어야 합니다.
    - 다른 네임스페이스에 있는 클래스의 부분을 참조할 수 없습니다.
  4. 하나의 부분에 선언된 메서드는 다른 부분에서 오버라이드할 수 없습니다.

이러한 주의사항들이 있으므로 코드를 작성하고

partial 키워드를 사용한다면 이 점들을 반드시 기억하고 적용해야 합니다.


| 마무리

C# partial 클래스에 대해 알아보았습니다.

현엽 코드를 살펴보며 알게 된 키워드인데 유용하게 사용할 수 있을 것 같습니다.

 

코드의 가독성과 유지보수성을 크게 향상하며 주의사항만 잊지 않으면 문제도 크게 되지 않을 것 같습니다.

 

틀린 점이나 질문이 있으면 댓글로 남겨주세요!

 

감사합니다 :)

 

 

728x90
반응형