[C#/dotnet] 제네릭 (Generics)
·
C#
참조https://learn.microsoft.com/ko-kr/dotnet/csharp/fundamentals/types/generics  제네릭 (Generics)  - 특정 데이터 형식에 의존하지 않는 클래스/메서드를 정의할 수 있음     → 다양한 데이터 형식 처리  - 하나 이상의 형식 매개변수를 사용함     → 일반적으로 T, U 등으로 표기됨  - 동일한 코드에서 여러 데이터 형식을 처리할 수 있음     → 코드 중복 감소 / 유지 보수성 UP ▶ 제네릭의 장점을 보여주는 예시# 제네릭을 사용하지 않을 때class IntList { public IList list { get; set; } = new List(); public void Add(int value) { list.Add(va..
[C#/dotnet] LINQ (Language-Integrated Query)
·
C#
참조https://learn.microsoft.com/ko-kr/dotnet/csharp/linq/  LINQ (Language-Integrated Query)  - 다양한 데이터 원본에 대해 쿼리를 작성할 수 있는 도구  - 동일한 구문을 이용하여 모든 형식의 데이터 소스를 다룰 수 있음     → 코드 재사용성 UP / 다양한 데이터 형식에 대한 일관된 접근 방식 제공  - 컴파일 타임에 형식 검사를 수행함  - 선언적 쿼리 구문 (SQL과 동일)     : 데이터를 쿼리할 때, 어떻게 쿼리를 수행할지를 명시하는 게 아니라 무엇을 원하는지를 설명하는 방식  - IQueryable 및  IEnumerable 인터페이스를 활용하여 쿼리 결과를 지연 실행함     → 쿼리는 실제로 결과가 필요할 때까지 실..
[C#/dotnet] 일반적인 C# 코드 규칙
·
C#
참조https://learn.microsoft.com/ko-kr/dotnet/csharp/fundamentals/coding-style/coding-conventions  언어 지침  1) 제네릭 예외 처리를 지양한다.    - 범용 예외 타입인 'Exception'을 포괄적으로 catch하지 말 것       → 구체적인 예외 타입을 catch하여 예상 가능한 오류만 처리하기  2) 사용자가 예외 상황을 이해할 수 있도록 의미 있는 오류 메시지를 제공한다.  3) 컬렉션 조작에 LINQ 쿼리와 메서드를 사용하여 코드 가독성을 높인다.    - LINQ (Language Integrated Query)       : C#에서 컬렉션, 배열, 리스트 등 데이터를 쿼리하는 도구         → DB에서 S..
[C#/dotnet] 식별자 명명 규칙
·
C#
참조https://learn.microsoft.com/ko-kr/dotnet/csharp/fundamentals/coding-style/identifier-names  ▶ C#에서 권장하는 식별자 명명 규칙   - 두 개의 연속된 밑줄(_) 문자를 포함하지 않음    → 컴파일러가 자동으로 생성하는 식별자에 사용되기 때문임  - 클래스명, 메서드명 : 파스칼 케이스  - 메서드 매개변수/지역변수 : 카멜 케이스  - 인터페이스명 : 대문자 I 접두사 + 파스칼 케이스  - 상수 : 파스칼 케이스  - private 필드 : 밑줄(_) 접두사 + 카멜 케이스