C# 서버 개발자 전환기 2편
2026-09-14 20:34:10
C# 기본 문법 + LINQ
C#은 파스칼케이스로 작성하는듯
1. class
C#에서 객체의 구조를 정의한다.
1 | public class User |
객체 생성 및 초기화
1 | var user = new User(); |
2. List
여러 개의 객체를 저장할떄 사용한다
1 | var users = new List<User> // C#은 타입이 있는 언어라 User타입만 저장 가능 |
3. var
1 | var user = new User(); |
C#의 var는 정적 타입을 유지하면서 타입을 컴파일러가 추론한다
4. foreach
1 | foreach (var user in users) |
5. LINQ
LINQ = Language Integrated Query
js에서 배열 메서드와 비슷하다 Where말고도 여러 가지 있으며 체이닝도 가능하다
5.1 Where()
조건에 맞는 데이터 필터링
1 | var highLevelUsers = users.Where(u => u.Level >= 30); |
Where()의 결과는 일반적으로 IEnumerable
5.2 IEnumerable vs List
List
는 실제 데이터를 담는 자료구조
IEnumerable는 데이터를 순회할 수 있다는 인터페이스
5.3 지연 실행
LINQ 코드를 작성했다고 바로 실행하는 게 아니라, 실제로 결과를 사용하려는 순간 실행한다
1 | List<int> numbers = new() { 1, 2, 3 }; |
IEnumerable 말고 List로 받기 위해 ToList()를 쓰면
1 | List<int> numbers = new() { 1, 2, 3 }; |