본업 최신 글
-
Study
[복습]애트리뷰트 - Attribute, C#
애트리뷰트(Attribute) 애트리뷰트는 코드에 대한 부가 정보를 기록하고 읽을 수 있는 기능이다. 주석과의 차이는 주석은 사람이 읽고 쓰는 정보고 애트리뷰트는 사람이 쓰고 컴퓨터가 읽는다는 차이점이 있다. 예제 - Deprecated Method 구현 라이브러리 업데이트로 인해 사용자가 보안 등 여러 이유로 이전 버전에서 사용하던 메서드를 사용하지 못하게 하고 새로운 메서드를 사용하게 할 때 사용 class ExampleClass1 { [Obsolete("Deprecated")] public static void OldMethod() { Console.WriteLine("Old Method"); } public static void NewMethod() { Console.WriteLine("New M..
-
Study
[복습] Reflection - C#, 리플렉션
리플렉션 객체의 형식(Type) 정보를 들여다보는 기능이다. 이 기능을 이용하면 프로그램 실행 중에 객체의 형식 이름부터 프로퍼티 목록, 메서드 목록, 필드, 이벤트 목록까지 모두 열어볼 수 있다. 형식의 이름만 있다면 동적으로 인스턴스를 만들 수 있다. 새로운 데이터 형식을 동적으로 만들 수도 있다. Object.GetType() 메서드와 Type 클래스 Object는 모든 데이터 형식의 조상이기 때문에 모든 데이터 형식은 다음 메서드를 물려받는다. Equals() GetHashCode() GetType() ReferenceEquals() ToString() 위의 메서드 중 GetType() 메서드를 이용해서 객체의 형식 정보를 얻어낼 수 있다. GetType() 메서드는 Type 형식의 결과를 반환한..
-
Study
[복습] 인덱서 - C#
인덱서 인덱서에서는 클래스나 구조체의 인스턴스를 배열처럼 인덱싱할 수 있다. 클래스나 구조체는 배열이 아니지만, 배열처럼 []를 사용하여 내부 필드값에 접근할 수 있다. 인덱서는 다음과 같이 사용할 수 있다. public T this[int i] { get { return arr[i]; } set { arr[i] = value; } } 간단예제 class SampleCollection { private T[] arr = new T[100]; public T this[int i] { get { return arr[i]; } set { arr[i] = value; } } } class Program { static void Main() { var stringCollection = new SampleColle..
-
Study
[복습] LINQ - C#, 링크 ,링큐
배경 C# 버전 3.0에 추가된 기능 C# 버전 3.0은 Visual Studio 2008과 함께 2007년 말에 출시되었지만 언어 기능을 완전히 갖춘 버전은 .NET Framework 버전 3.5와 함께 제공됨 사용이유 private static List students = new List { new Student {First="Svetlana", Last="Omelchenko", ID=111, Scores= new List {97, 92, 81, 60}}, new Student {First="Claire", Last="O'Donnell", ID=112, Scores= new List {75, 84, 91, 39}}, new Student {First="Sven", Last="Mortensen", ID..