.NET 3

.Net Framework Guideline - Naming Rule(.net 프레임워크 디자인 지침 - 명명 지침) 정리

대/소문자 표기법 식별자용 대/소문자 규칙 식별자 내 단어를 구분하기 위해서 식별자 각 단어의 첫 글자는 대문자를 사용, 밑줄을 사용하여 단어를 구분하지 않는다. - PascalCasing : 파스칼 표기법 - camelCasing : 카멜 표기법 1) 매개 변수 이름을 제외한 모든 식별자에 사용하는 파스칼 표기법은 아래와 같이 각 단어의 첫 번째 글자를 대문자로 표기 - PropertyDescriptor, HtmlTag 아래와 같이 두 글자 머리글자어(two-letter acronyms)를 모두 대문자로 표기하기도 함. - IOStream 2) 매개 변수 이름에만 사용하는 카멜 표기법은 아래 예제와 같이 첫 단어를 제외한 각 단어의 첫 번째 글자를 대문자로 표기, 두 글자 머리글자어(two-letter..

개발/C# 2021.08.25

[Effective C#] C# 정적 클래스 멤버 초기화 유의사항

정적 멤버 변수를 포함하는 타입이 있다면 인스턴스를 생성하기 전 반드시 정적 멤버 변수를 초기화 하여야한다. C#에선 '정적 멤버 초기화'와 '정적 생성자' 두가지를 제공한다. * 정적 변수를 초기화하기 위해 인스턴스 생성자나 전용의 private 메서드 혹은 다른 관용구를 사용해서는 안된다. 정적 멤버 초기화 - 인스턴스 멤버 초기화와 마찬가지로 정적 멤버를 간단히 초기화하는 경우라면 정적 생상자보단 멤버 초기화 구문을 사용하는 것이 좋다. - 정적 생성자가 호출되기 이전에 실행되며, 베이스 클래스의 정적 생성자보다도 먼저 호출된다. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 public class MySingleton { private static reado..

개발/C# 2020.12.31

[Effective C#] C# 가비지 컬렉터(Garbage Collector) 기초 / finalizer 이해하기

가비지 컬렉터(Garbage Collector, GC) 자동 메모리 관리자, 애플리케이션의 메모리 할당 및 해제를 관리한다. 즉 개발자는 메모리 관리를 위한 코드를 작성할 필요가 없다. 메모리 누수, 댕글링 포인터(dangling pointer), 초기화 되지 않은 포인터 등의 기타 메모리 관련 문제를 개발자가 직접 다루지 않게 된다. * dangling pointer : 유효한 곳을 가르키고 있지 않는 포인터 -관리되지 않는 리소스(Unmanaged Resource, 비관리 리소스)의 경우엔 개발자가 직접 관리해야 하며, 이벤트 핸들러, 델리게이트 등도 잘못 사용하면 이를 참조하고 있는 객체가 불필요하게 메모리에 남게 되므로 사용에 유의해야 한다. ->그럼에도 Garbage Collector가 메모리를..

개발/C# 2020.12.28
반응형