C#

public 대신 internal을 사용할 수 있다면 internal을 쓰자.

Falto 2024. 12. 21. 09:39
반응형

접근 제한자는 엄격할 수록 프로그래머의 선택지를 줄일 수 있으므로 좋다. 하지만 그럼에도 불구하고 나는 public을 internal 대신 써 왔는데, 그 이유는 단순했다. public은 6글자고 internal은 8글자였기 때문이다. 쓰는데 후자가 33% 더 오래 걸린다. 그런데 오늘 버그를 하나 발견하면서 internal을 써야겠다고 다짐했다. 컴파일러가 보내주는 경고는 디버깅에 도움이 될 수 있는데, internal을 쓰면 절대 초기화되지 않는 변수를 판정할 수 있다. 아래 소스 코드를 컴파일하면

using System;
namespace ConsoleApp1
{
    public class Program
    {
        internal byte va;
        static void Main()
        {
        }
    }
}

CS0649 Warning "'va' is never assigned to, and will always have its default value 0" 이 표시된다. 하지만 internal을 public으로 바꾸면 아무것도 표시되지 않는다.

 

반응형

'C#' 카테고리의 다른 글

explicit interface implementation  (0) 2024.12.24
.Reverse() 함수를 쓸 때 주의 점  (0) 2024.12.22
C# .NET Framework 4.8 프로젝트에서 SQLite 사용하는 방법  (0) 2024.11.12
csc로 라이브러리 만들기  (0) 2022.12.09
접근 제한자  (0) 2022.12.08