partial 키워드란?

Yumin·2025년 8월 21일

Unity

목록 보기
12/17

C#에서 partial 키워드를 사용하면 하나의 클래스(Class), 구조체(Struct), 인터페이스(Interface)를 여러 파일에 나눠서 정의할 수 있게 해주는 기능이다.

// Player_Movement.cs
public partial class Player
{
    public void Move()
    {
        Debug.Log("플레이어 이동");
    }
}
// Player_Attack.cs
public partial class Player
{
    public void Attack()
    {
        Debug.Log("플레이어 공격");
    }
}

이렇게 작성하면 두 개의 파일에 나눠져 있지만, 결국 Player라는 하나의 클래스로 합쳐져서 컴파일된다.

장점

가독성 향상: 긴 클래스를 파일별로 분리 가능.

역할 분리: 기능별로 관리 → 협업할 때 충돌 줄어듦.

자동 생성 코드와의 분리: Unity나 툴이 만든 코드와 사용자 코드가 뒤섞이지 않음.

주의할 점

partial은 반드시 같은 네임스페이스, 같은 접근제한자, 같은 클래스 이름을 가져야함.

결국은 하나의 클래스라서, 변수 중복이나 접근 제한 같은 건 그대로 적용됨.

무분별하게 남용하면 오히려 "이 메서드 어디 있지?" 하고 헷갈릴 수 있음.

profile
일본 게임회사에서 클라이언트 엔지니어로 활동중

0개의 댓글