ONLINE CLASS

C샵 [기초 + 실무까지]

COURSE FOCUS

이 강의에서 배우는 핵심 실무

비주얼 스튜디오 코드에서 C#을 실행하고 숫자형과 분기·반복문으로 프로그램의 흐름을 작성합니다. 튜플과 무시항목, 형식 분해 및 확장메서드를 살펴보고 패턴 일치로 데이터 형태에 따른 처리를 구성합니다. LINQ 표준 쿼리 연산자와 비동기 프로그래밍으로 이어가며 기본 구문을 자료 조회와 작업 실행을 다루는 코드로 확장해봅니다.

?

수강 전 꼭 확인하세요

수강 전 자주 묻는 내용을 간단히 안내드립니다.

Q초보자도 교재 없이 수강 가능한가요? 프로그램 정보는?
A

네, 영상과 실습자료로 쉽게 학습할 수 있습니다. 알지오는 원격평생교육원으로 프로그램 관련 정보는 제공하지 않습니다.

◆
기업이 선택한 신뢰 강의

검증된 커리큘럼과 전문 강사진으로 높은 만족도를 제공합니다.

자세히 보기  >
♥
수강료 일부는 사회환원에 사용됩니다.

작은 나눔이 더 나은 내일을 만듭니다.

자세히 보기  >
REAL REVIEW

수강생 리얼후기!

실제 수강생의 학습 경험을 확인해 보세요.

수강후기를 불러오는 중입니다.

RECENT Q&A

최근 수강질문

최근 등록된 수강질문을 작성순서대로 확인해 보세요.

ALZIO DEEP GUIDE

C#을 더 깊게 이해하기

C#의 공식 기능과 .NET 생태계, 실제 개발 흐름을 알지오의 20강 커리큘럼과 연결해 한눈에 이해할 수 있도록 정리했습니다.

공식 기술정보 확인20강 커리큘럼 연결2026 현재 기술정보

C샵 [기초 + 실무까지] · 20강 · 8시간 57분

01

C#이란?

C#은 .NET 생태계의 주요 범용 프로그래밍 언어입니다. 숫자 계산과 조건 분기에서 시작해 데이터 모델, 질의, 비동기 작업을 하나의 언어 안에서 표현합니다. 정적이고 강한 타입 시스템을 사용하므로 컴파일러는 변수의 형식과 허용되는 연산을 검사해 여러 실수를 실행 전에 알려줍니다.

타입 안전성은 모든 오류가 사라진다는 뜻이 아닙니다. 파일이 없거나 입력이 잘못되거나 객체가 null인 상황은 별도 대응이 필요합니다. 객체지향뿐 아니라 generics로 타입을 재사용하고, LINQ로 데이터 처리를 조합하며, pattern matching으로 분기 규칙을 표현하는 방식도 지원합니다. 예외 처리·records·nullable reference types·async/await는 각각 실패, 데이터 모델, null 가능성, 작업 대기를 다루기 위해 존재합니다.

02

C#과 .NET의 관계

C#은 코드를 표현하는 언어입니다. .NET은 SDK(빌드 도구·컴파일러), runtime(실행 환경), libraries(파일·컬렉션·네트워크 등의 기능)를 포함하는 개발 플랫폼입니다. Visual Studio와 VS Code는 편집·실행·디버깅을 돕는 개발도구입니다. 도구를 바꾸더라도 언어와 플랫폼의 역할은 구분됩니다.

C# 소스는 일반적으로 컴파일되어 IL과 형식 메타데이터를 포함한 어셈블리가 되고, .NET 런타임은 필요한 코드를 JIT 컴파일해 실행합니다. Native AOT처럼 미리 기계어로 게시하는 방식도 있어 모든 프로그램의 실행 경로가 완전히 같지는 않습니다.

  1. C# 코드
  2. 컴파일러 · IL/메타데이터
  3. .NET 런타임
  4. 애플리케이션
03

C# 핵심 기능

아래 카드는 공식 언어 개념과 사용 목적을 정리합니다. 회차 표시는 이 강좌 공개 커리큘럼에 해당 개념이 등장하는 위치이며, 모든 하위 기능의 완전한 숙달을 보장하는 표시는 아닙니다.

Type System

변수와 연산에 형식을 부여해 잘못된 조합을 실행 전에 찾습니다. var도 컴파일러가 형식을 추론하는 정적 타입 변수입니다.

형식과 변수 · 1~2강

Class & Object

클래스는 상태와 동작의 설계이며 개체는 실행 중 만들어지는 인스턴스입니다. 은행 계좌처럼 함께 관리할 데이터와 행동을 묶습니다.

클래스 · 1·4·10강

Interface

서로 다른 구현이 지켜야 할 기능 계약입니다. 호출자는 구체적인 클래스 대신 계약에 의존해 구현을 교체할 수 있습니다.

인터페이스 · 1·4강

Generics

List<T>처럼 사용할 형식을 매개 변수로 받습니다. 공통 로직을 재사용하면서 요소의 형식 검사를 유지합니다.

제네릭 · 3·15강

Exception Handling

실패를 예외로 전달하고 처리할 수 있는 위치에서 대응합니다. 정상 흐름과 오류 처리 흐름을 구분하는 데 사용합니다.

예외 처리 · 7~10강

Pattern Matching

값·타입·데이터의 모양을 검사해 분기합니다. 복잡한 조건을 의도가 보이는 규칙으로 정리할 수 있습니다.

패턴 일치 · 5·10·11강

Records

데이터 중심 타입에 값 기반 동등성 등 합성 기능을 제공합니다. record class와 record struct가 있으며 모든 record가 자동으로 불변인 것은 아닙니다.

레코드 · 3·11강

Nullable Reference Types

참조가 null일 수 있음을 주석과 흐름 분석으로 표현합니다. 실행 시 null을 차단하는 장치가 아니라 컴파일러 경고로 위험을 드러냅니다.

null 허용 참조 · 12강

LINQ

데이터의 필터·변환·정렬·그룹화를 질의로 표현합니다. 처리 목적을 드러내고 여러 연산을 조합하는 데 사용합니다.

질의·연산자 · 13~18강

Extension Methods

기존 타입을 수정하지 않고 메서드 호출 형태로 기능을 더합니다. 상속이나 인스턴스 메서드 재정의와는 다릅니다.

확장 메서드 · 6~7강

Async / Await

완료를 기다리는 작업을 이어서 실행하도록 표현합니다. 파일이나 네트워크 대기 중 호출 스레드를 붙잡지 않는 흐름에 유용합니다.

비동기 · 19~20강

Collections

여러 요소를 저장하고 검색·정렬·순회합니다. 배열과 List<T>의 크기·변경 방식에 맞춰 데이터 구조를 선택합니다.

목록·배열 · 3·8강
04

C# 프로그램의 실행 흐름

프로젝트를 만들고 코드를 작성한 뒤 빌드하면, 컴파일러가 구문·타입을 검사하고 실행 결과물을 만듭니다. 빌드에는 컴파일뿐 아니라 의존성 확인과 출력물 준비도 포함되므로 둘은 독립적으로 이어지는 동일한 작업이 아닙니다. 실행 중 잘못된 값이나 흐름을 발견하면 디버깅으로 원인을 좁히고 다시 수정·빌드합니다.

1강은 VS Code의 확장 설치와 실행·컴파일 환경을 연결하는 출발점입니다. 일반적으로 dotnet build로 빌드하고 dotnet run으로 실행할 수 있습니다. 배포는 대상 환경·설정·의존성을 정리하는 이후 과정이며 본 강좌의 핵심 범위가 아닙니다.

  1. 코드 작성
  2. 빌드 안에서 컴파일
  3. 런타임에서 실행
  4. 디버깅 · 다시 수정
  5. 이후 배포
05

타입 시스템과 객체지향

값 형식은 대입할 때 값을 복사하고, 참조 형식은 개체를 가리키는 참조를 복사합니다. 참조 형식 변수 둘이 같은 개체를 가리키면 한쪽에서 바꾼 상태가 다른 쪽에도 보일 수 있습니다. 이 차이를 단순히 스택과 힙의 차이로 외우면 실제 저장 위치와 수명을 오해하기 쉽습니다.

int·decimal·bool 같은 기본형과 struct·enum은 값 형식입니다. class·배열·string은 참조 형식이며 string은 불변입니다. record는 class 또는 struct 형태로 데이터 모델을 표현하고, interface는 구현이 제공할 계약을 정의합니다. generic은 별도의 값/참조 분류가 아니라 타입 매개 변수로 형식과 알고리즘을 재사용하는 방식입니다.

추상화는 필요한 특성을 골라 모델을 만드는 일입니다. 캡슐화는 상태를 검증된 동작을 통해 바꾸게 하는 일입니다. 상속은 기반 타입의 관계와 동작을 이어받는 일이며, 다형성은 같은 계약의 호출이 실제 구현에 따라 다르게 동작하도록 만드는 일입니다. 모든 문제를 상속으로 해결할 필요는 없고, 함수·조합·질의도 문제에 맞게 함께 사용합니다.

06

실무에서 사용하는 기능

읽기 쉬운 문법보다 중요한 것은 경계와 실패 조건을 설명할 수 있는 코드입니다. 다음 기능은 847의 실제 공개 커리큘럼과 연결됩니다.

예외 처리

try에서 작업하고 catch에서 처리 가능한 실패에 대응하며 finally로 정리 흐름을 구성합니다. throw는 실패를 호출자에게 전달합니다. 예외를 무조건 삼키면 문제를 숨기므로 복구할 수 있는 범위를 먼저 정합니다.

7~10강

확장 메서드

기존 타입에 호출 문법을 더해 분해·데이터 처리 기능을 정리합니다. 원본 클래스 수정이 불가능한 경우에도 쓸 수 있지만 인스턴스의 내부 접근 권한이 생기지는 않습니다.

6~7강

문자열 보간

문자열 안에 식과 서식 정보를 넣습니다. 화면·로그 출력의 의도를 보여주지만 SQL 안전성이나 입력 검증을 자동으로 제공하지 않습니다.

13강

Index / Range

^와 ..로 끝 기준 위치나 구간을 표현합니다. 지원 타입에 따라 슬라이스의 복사·뷰 의미가 달라지므로 경계와 비용을 확인합니다.

12강

Nullable

string?처럼 null 가능성을 API의 의도에 포함합니다. 경고를 없애기 전에 값이 비어 있을 때의 처리 경로를 설계합니다.

12강

Pattern matching

타입과 값·속성 조건으로 분기합니다. 통행료처럼 입력 형태에 따라 계산 규칙이 달라지는 로직을 표현하는 데 유용합니다.

5·10·11강
07

LINQ 완전 이해

LINQ는 질의를 언어에 통합하는 기능군입니다. 반복문이 요소를 어떻게 순회할지 직접 표현한다면, LINQ는 어떤 요소를 선택하고 어떤 결과로 바꿀지 연산 조합으로 표현합니다. 반복문을 없애는 규칙이 아니라 의도가 잘 드러나는 표현을 선택하는 도구입니다.

IEnumerable<T> 기반 질의는 많은 경우 열거 시 실행됩니다. 질의를 선언했다고 결과가 이미 고정되는 것은 아니며 원본 변경·반복 열거 비용을 고려해야 합니다. ToList 같은 구체화는 결과를 즉시 모으지만 메모리 비용이 발생합니다. IQueryable 제공자는 식을 외부 데이터 원본의 질의로 번역할 수 있어 모든 C# 식이 동일하게 지원되는 것도 아닙니다.

13강에서 질의의 세 부분과 지연·즉시 실행을 시작하고, 14강에서 where·orderby·join·group·select를 연결합니다. 15강은 형식 관계와 프로젝션·SelectMany·Zip, 16강은 집합·정렬·수량자·분할, 17강은 조인, 18강은 그룹화를 다룹니다. 아래 흐름은 개념도이며 모든 질의가 모든 단계를 거치는 것은 아닙니다.

  1. 원본
  2. Where · 필터
  3. Select · 변환
  4. OrderBy · 정렬
  5. GroupBy · 묶음
  6. 결과

Where / Select

조건에 맞는 요소를 남기고 필요한 값으로 바꿉니다. 예를 들어 합격자 목록에서 이름만 얻는 두 단계입니다.

14~15강

OrderBy / GroupBy

순서를 정하거나 같은 키로 요소를 묶습니다. 정렬과 그룹화는 결과의 형태와 처리 비용이 다릅니다.

14·16·18강

Join

두 원본의 키를 대응시켜 결합합니다. 일치하지 않는 항목을 어떻게 처리할지 조인 방식과 함께 정합니다.

14·17강

Distinct / Union / Intersect

중복 제거·합집합·교집합을 표현합니다. 개체의 동등성 기준이 결과에 영향을 줍니다.

16강

SelectMany

각 요소에서 나온 여러 항목을 하나의 시퀀스로 펼칩니다. 주문별 품목처럼 중첩된 컬렉션을 다룰 때 사용합니다.

15강
var scores = new[] { 72, 95, 81, 60 };
var passed = scores.Where(score => score >= 80)
                   .OrderByDescending(score => score)
                   .ToList();
// 결과: 95, 81 — 질의 실행을 ToList에서 구체화합니다.
08

async / await와 비동기

동기 호출은 작업이 끝날 때까지 해당 흐름이 기다립니다. 비동기 호출은 완료를 나타내는 작업을 반환하고, await는 완료 뒤 이어갈 지점을 표현합니다. TAP(Task-based Asynchronous Pattern)은 Task 등을 통해 완료·결과·실패를 전달하는 패턴입니다. async 키워드 자체가 새 스레드를 만드는 것은 아닙니다.

I/O-bound는 파일·네트워크 응답을 기다리는 작업입니다. 제공되는 비동기 I/O API를 await하는 방식이 기본입니다. CPU-bound는 계산 자체가 오래 걸리는 작업입니다. 상황에 따라 Task.Run으로 계산을 다른 스레드에서 수행할 수 있지만 서버 요청마다 무조건 감싸는 것이 성능 개선은 아닙니다.

Task<T>는 앞으로 얻을 결과를 나타냅니다. ValueTask<T>는 동기 완료가 잦은 경우 등에 할당 비용을 줄일 수 있지만 사용 제약이 있으므로 무조건 Task 대신 쓰지 않습니다. IAsyncEnumerable<T>는 결과를 비동기 스트림으로 하나씩 받고 await foreach로 소비합니다. 19강의 CPU/I/O 바인딩·Task 반환형과 20강의 ValueTask·비동기 스트림·파일 접근·취소를 연결해 학습합니다.

  1. 작업 시작
  2. I/O 완료 대기
  3. 다른 작업 가능
  4. await 이후 계속
  5. 결과 · 예외 · 취소
09

C#으로 무엇을 만들 수 있나

언어 기반은 여러 앱 분야로 이어지지만 플랫폼별 UI·배포·보안은 별도 학습이 필요합니다. 아래 분야를 모두 본 강좌에서 제작하는 것은 아닙니다.

Desktop

Windows에서는 WPF·Windows Forms 등으로 창 기반 앱을 만듭니다. 플랫폼과 UI 프레임워크의 지원 범위를 확인해야 합니다.

다음 학습 추천 · GUI는 강좌 범위 밖

Web / API

ASP.NET Core로 HTTP 요청·응답과 웹 서비스를 구성합니다. 라우팅·인증·데이터 저장을 추가로 배웁니다.

다음 학습 추천 · 웹 프레임워크는 범위 밖

Cloud / Server

서버 서비스와 백그라운드 작업에 활용합니다. 운영 로그·설정·배포·모니터링이 함께 필요합니다.

다음 학습 추천

Business Application

클래스로 업무 데이터를 모델링하고 검증·계산 흐름을 만듭니다. 은행 계좌 클래스 실습은 모델링의 출발점입니다.

본 강좌 연결 · 10강 클래스 실습

Game-related development

Unity 등의 환경에서 C#을 게임 로직에 사용할 수 있습니다. 엔진의 런타임·지원 언어 버전은 최신 .NET과 같다고 가정하면 안 됩니다.

다음 학습 추천 · 엔진 제작은 범위 밖

Data processing

목록의 필터·집합·조인·그룹화로 데이터를 정리합니다. 대규모 데이터에서는 실행 위치와 메모리 비용도 살핍니다.

본 강좌 연결 · 13~18강 LINQ

Automation / Tools

콘솔 도구와 파일 처리 작업을 만들 수 있습니다. 오류·취소·경로 검증은 자동화에서도 필요합니다.

본 강좌 연결 · 13·20강 기반
10

C# 14 · .NET 10과 이 강좌

2026-10-05에 확인한 안정 버전 기준은 C# 14와 .NET 10입니다. 언어 버전은 프로젝트의 대상 프레임워크와 SDK·컴파일러 지원 관계를 함께 확인해야 합니다. Preview 설정과 안정 버전 기능을 같은 조건으로 설명하지 않습니다.

현재 C# 참고정보: C# 14에는 extension members, field-backed properties, null-conditional assignment, Span 관련 변환 개선, partial 생성자·이벤트 등 확장이 있습니다. 이 항목들은 본 강좌 공개 커리큘럼에서 직접 다루는 내용으로 확인되지 않았습니다. 6~7강의 기존 확장 메서드를 C# 14 extension members 학습과 동일하게 보지 마세요.

이 강좌는 형식·클래스·패턴·records·nullable·LINQ·비동기를 학습하는 과정입니다. 최신 기능 전부를 가르치는 C# 14 전용 강좌라는 의미는 아닙니다. 실습 환경과 공식 최신 환경의 차이는 버전 문서로 확인하고 신규 기능은 이후 학습으로 구분합니다.

11

C# vs Java vs C++ vs Python

어느 언어가 항상 더 낫다는 결론보다 앱의 실행 환경, 기존 시스템, 팀의 도구와 성능 요구를 먼저 비교하세요. 난이도는 문법의 짧음뿐 아니라 타입·메모리·운영 모델까지 이해해야 하는 정도에 따라 달라집니다.

C# vs Java vs C++ vs Python
항목C#JavaC++Python
타입 시스템정적 타입 · 추론 · generics정적 타입 · generics정적 타입 · templates동적 타입 · 선택적 타입 힌트
실행 환경주로 .NET · JIT/AOT주로 JVM · JIT/AOT주로 네이티브 컴파일주로 인터프리터 · 구현별 차이
메모리 관리관리 힙 GC · 자원은 별도 해제관리 힙 GC · 자원은 별도 해제객체 수명 · RAII · 스마트 포인터자동 관리 · 구현별 GC 방식
대표 활용업무 앱 · 웹/API · 도구서버 · 업무 시스템시스템 · 엔진 · 네이티브 앱자동화 · 데이터 · 웹
개발 생태계.NET · NuGetJVM · Maven/Gradle컴파일러 · CMake · 네이티브 라이브러리PyPI · 가상환경
성능 접근측정 후 할당·질의·I/O 최적화측정 후 JVM·할당·I/O 최적화메모리·자료구조·기계어 비용 제어알고리즘 · 벡터화 · 네이티브 확장
학습 특성타입과 런타임을 함께 이해타입과 JVM을 함께 이해수명·포인터·빌드 이해 필요시작 문법은 간결 · 실행 시 형식 오류 고려
12

C# 공식기능과 알지오 20강 연결

학습 상태는 공개 커리큘럼에서 확인한 범위를 뜻합니다. 회차에 언급되지 않은 enum 등의 참고 개념과 최신 기능은 직접 학습 항목으로 표시하지 않습니다.

C# 공식기능과 알지오 20강 연결
공식개념무엇인가실무 의미강좌 회차학습 상태
형식·변수·숫자데이터 형식과 연산잘못된 연산 예방1~2강강좌에서 직접 학습
클래스·개체·구조체·인터페이스상태·동작과 계약업무 모델 설계1·4·10강강좌에서 직접 학습
조건문·반복문분기와 반복 흐름알고리즘 기본 제어2강강좌에서 직접 학습
컬렉션·제네릭목록과 타입 매개 변수타입 안전한 재사용3·15강강좌에서 직접 학습
상속·다형성기반·파생·가상 멤버구현을 교체하는 설계4~5·10강강좌에서 직접 학습
패턴 매칭is·switch·타입/데이터 분기복잡한 판단 규칙 표현5·10·11강강좌에서 직접 학습
튜플·분해·무시 항목결과 묶기와 필요한 값 추출여러 반환값 처리6~7강강좌에서 직접 학습
확장 메서드기존 타입의 호출 형태 확장보조 기능 재사용6~7강강좌에서 직접 학습
예외 처리try/catch/finally·throw실패 전달과 정리7~10강강좌에서 직접 학습
코딩 규칙·대리자·이벤트명명·레이아웃·호출 연결일관된 코드와 동작 연결8~10강기초 소개
형변환is/as와 타입 검사입력·객체 타입에 대응10강강좌에서 직접 학습
Records값 중심 비교·with데이터 중심 모델 표현3·11강강좌에서 직접 학습
최상위 문·Index/Range진입 코드·구간 접근간결한 시작과 부분 데이터 처리12강강좌에서 직접 학습
Nullable reference typesnull 허용 참조null 위험을 분석12강강좌에서 직접 학습
문자열 보간식·너비·서식출력 형식을 명확히 표현13강강좌에서 직접 학습
LINQ 실행·구문·형식질의·지연 실행·프로젝션처리 목적과 타입 연결13~15강강좌에서 직접 학습
LINQ 집합·정렬·조인·그룹표준 연산자 조합여러 데이터 원본 정리16~18강강좌에서 직접 학습
Task·async/awaitCPU/I/O·반환형대기와 결과 전달19강강좌에서 직접 학습
ValueTask·비동기 스트림·파일 I/O비동기 열거·접근·취소연속 결과와 취소 가능한 작업20강강좌에서 직접 학습
C# 14 신규 기능extension members·field 등현재 언어 확장 확인해당 회차 없음현재 C# 참고
enum이름 있는 정수 상수 집합상태의 의미를 표현명시된 회차 없음현재 C# 참고
웹·GUI·배포프레임워크와 운영 환경실제 제품으로 확장해당 회차 없음다음 학습 추천
13

초보자가 자주 오해하는 내용

C#과 .NET은 같은가?

C#은 언어이고 .NET은 개발 플랫폼입니다. SDK로 코드를 빌드하고 runtime과 libraries를 이용해 실행합니다. 1강의 환경 설정을 배울 때 언어 문법과 도구 설치를 구분하면 오류 원인을 찾기 쉽습니다.

Visual Studio가 반드시 필요한가?

반드시 필요하지는 않습니다. .NET SDK와 명령줄 도구로도 프로젝트를 빌드할 수 있고 VS Code를 편집기로 사용할 수 있습니다. 본 강좌 1강은 VS Code 실행 환경을 다루므로 해당 실습 흐름으로 시작하세요.

C/C++을 먼저 배워야 하는가?

C#을 시작하기 위한 필수 선수 언어는 아닙니다. 공통 문법이 있지만 메모리와 실행 환경은 다릅니다. 본 강좌의 형식·조건문·루프에서 시작하고 개체와 데이터 처리로 연결해도 됩니다.

LINQ는 데이터베이스 전용인가?

배열이나 List<T> 같은 메모리 내 데이터에도 사용할 수 있습니다. 질의 제공자가 있는 데이터 원본에는 번역 가능한 식으로 적용되기도 합니다. 13~18강의 질의·연산자 학습을 DB 강의 전체와 동일하게 해석하지 마세요.

async/await는 멀티스레딩인가?

async 메서드는 새 스레드를 자동으로 만들지 않습니다. await는 작업 완료를 기다린 뒤 이어지는 흐름을 표현합니다. I/O 대기와 CPU 계산을 구분하는 19강을 먼저 이해하고 20강의 비동기 파일·스트림으로 확장하세요.

null과 nullable은 같은 의미인가?

null은 참조가 개체를 가리키지 않는 값입니다. nullable은 null 가능성을 형식 표현과 분석에 포함하는 개념입니다. int?는 Nullable<int>인 값 형식이고 string?는 참조 형식 주석이며 서로 작동 방식이 다릅니다. 12강은 null 허용 참조 형식을 다룹니다.

var는 동적 타입인가?

var는 컴파일러에게 초기값을 보고 타입을 결정하게 하는 문법입니다. 결정된 타입은 이후 바뀌지 않습니다. 15강의 암시적 지역 변수와 형식 관계를 함께 읽으면 LINQ의 결과 타입을 이해하기 쉽습니다.

14

다음 학습 방향

기초가 불안하면 변수·배열을 다시 연습하고, 질의가 필요한 업무라면 LINQ를 깊게 학습하세요. 웹 개발을 목표로 할 때 ASP.NET Core로 이동하는 식으로 목적에 따라 경로를 고릅니다. 존재가 확인되지 않은 별도 디자인 패턴 과정은 추천 목록에 만들지 않았습니다.

C샵 프로그래밍 쉽게 배우기

변수·배열·기본 데이터 처리를 다시 다지기

자료 보기 →

기술정보는 Microsoft의 C# 및 .NET 공식문서를 기준으로 검토했으며, 강좌 범위는 알지오 C샵 [기초 + 실무까지] 20강 공개 커리큘럼을 기준으로 구분했습니다.

공식 기술정보 확인일: 2026-10-05 · 강좌 업데이트일을 의미하지 않습니다.

C샵 [기초 + 실무까지] C샵 [기초 + 실무까지]
  • C샵 [기초 + 실무까지]

  • 강의구성
  • (20강) 전체 : 8시간 57분|평균 : 26분51초
  • 이용기간/강사
  • 1개월2개월
    알지오 R&D [IT]
  • 증빙가능
  • 수료증, 수강증, 학습진도
  • 수강료
  • 190,000원할인95,000원
?

수강 전 꼭 확인하세요

수강 전 자주 묻는 내용을 간단히 안내드립니다.

Q 초보자도 교재 없이 수강 가능한가요? 프로그램 정보는?
A

네, 영상과 실습자료로 쉽게 학습할 수 있습니다. 알지오는 원격평생교육원으로 프로그램 관련 정보는 제공하지 않습니다.

  • 01.29분 비주얼 스튜디오 코드 에서 실행
    관련 확장설치 후 컴파일 과 코드 를 쉽게 설명 합니다.
    환경, 형식 및 변수, 클래스 및 개체 형식 매개 변수 기본 클래스, 구조체 인터페이스
  • 02.29분 C#의 숫자, 분기 및 루프
    정수 부터 시작해서 10진까지 와 반복문 종류별 학습.
    정수 계산, 연산 순서, 정수 전체 자릿수 및 한도, double 형식, 10진 형식, 분기 및 루프 조건부, if 문, if와 else 와 복합조건, 루프를 사용하여 작업 반복, do while, for 루프 작업, 중첩 루프
  • 03.27분 목록 컬렉션, 레코드 형식, 제네릭 클래스 및 메서드
    강의보면 체계적으로 알수있도록 쉽게 제네릭 까지 설명합니다.
    목록 만들기 foreach, 목록 콘텐츠 수정, 목록 검색 및 정렬, 다른 형식 목록, 피보나치 수열 과 목록 실습, 위치 기반 레코드 생성, 제네릭 클래스 인스턴스화
  • 04.28분 익명형식, 개체 인스턴스, 클래스 상속, 다형성
    완전 기본부터 심도깊은 실습까지 매뉴얼에 없는과정도 설명합니다.
    LINQ 쿼리 문장, with 표현식 익명 형식, 구조체 클래스 인스턴스, 개체 ID와 값 같음 비교, 클래스 상속핵심, 기본 클래스 파생, 추상 과 가상 메서드, 추상 클래스, 인터페이스, 추가 파생 방지, 가상 메서드 와 프로퍼티
  • 05.29분 다형성2, 패턴 일치
    클래스 멤버 부터 가상과 형식 불연속 목록 까지 패턴모두 학습합니다.
    클래스-새 멤버 기본 멤버 숨기기, 파생 클래스 가상 멤버 재정의 금지, 클래스 가상 멤버 액세스, null 검사 패턴 매칭, 형식 테스트, 불연속 값 비교, 스위치 표현식의 장점, 관계형 패턴, 여러 입력, 목록 패턴
  • 06.27분 무시항목, 튜플 및 기타 형식 분해
    언더바 의 기능과 튜플 과 무시항목 정의형식과 확장메서드 까지 학습합니다.
    특정 값을 사용하지 않으려면, 디스카드, 튜플 및 개체 분해, switch를 사용한 패턴 일치, out 매개 변수를 사용한 메서드 호출, 독립 실행형 무시 항목, 튜플 분해를 사용하는 다양한 방법, 무시 항목이 있는 튜플 요소, 사용자 정의 형식, 무시 항목이 포함된 사용자 정의 형식, 사용자 정의 형식의 확장 메서드
  • 07.27분 튜플 및 기타 형식 분해2, 예외 및 예외 처리
    사용자 확장 메서드 와 시스템형식 의 메서드 try-catch-finally 실습.
    사용자 정의 형식의 확장 메서드, 시스템 형식의 확장 메서드, 예외 개요, 예외 사용, 예외 처리 try-catch-finally, catch 블록
  • 08.24분 예외 및 예외 처리2, 예외 만들기 및 throw, C# 식별자 이름 과 규칙
    에러대비 와 필터링 기능 throw 파스칼식, 카멜식 추가 명명 규칙과 배열실습.
    try-catch 테스트, 예외 필터링의 사용법, Finally 블록, 예외를 throw할 때 피해야 하는 작업, 예외 클래스 정의, 파스칼식 대/소문자, 카멜식 대/소문자, 형식 매개 변수 명명 지침, 추가 명명 규칙, 문자열 데이터, 배열
  • 09.22분 C# 코딩규칙
    프로그래밍 할때 요구되는 코딩관련 모든 규칙을 실습 합니다.
    종류별 대리자, try-catch 및 using 문, && 및, 연산자, new 연산자, 이벤트 처리, LINQ 쿼리, 암시적 형식 지역 변수, using 지시문을 네임스페이스, 레이아웃 규칙
  • 10.25분 C# 코딩규칙 2, 명령줄 인수, 클래스 실습, 형식변환
    규칙적인 기능들을 학습하게 됩니다.
    대리자, 예외 처리의 try-catch 및 using 문, 명령줄 인수를 표시, 은행 계좌를 모델링하는 클래스, 패턴 일치 is 및 as 캐스트, 다형성과 타입검사 및 변환
  • 11.23분 패턴 일치 형식 기반 및 데이터 기반 알고리즘 빌드
    기본 습득능력 을 키워줄 코딩방법 까지 쉽게 배웁니다.
    네임스페이스 와 클래스 기능, 패턴 일치 디자인 - 통행료, 점유 가격 추가, 최대 가격 추가, 시간대 를 결정하는 값, finally를 사용하여 정리 코드를 실행, 레코드 종류 만들기, 도일 계산, 컴파일러 합성 메서드, 비파괴적 변경
  • 12.28분 최상위 문, 인덱스 및 범위, nullable 참조 형식 및 nullable이 아닌 참조 형식
    상단의 사항부터 참조형식 의 모두 를 실습합니다.
    리팩터링, 인덱스 및 범위에 대한 언어 지원, 암시적 범위 연산자 식 변환, 인덱스 및 범위에 대한 형식 지원, 인덱스 및 범위에 대한 시나리오, 범위 인덱스 및 배열 참고 사항, null 허용 참조
  • 13.25분 문자열 보간, 콘솔 앱, LINQ 쿼리 소개
    보간 부터 동기 와 비동기 링큐 쿼리를 시작합니다.
    보간된 문자열 만들기, 필드 너비와 보간 식의 맞춤, 문자열 보간용 고급 시나리오, 보간 식에 대한 서식 문자열을 지정하는 방법, 이스케이프 시퀀스, 조건부 연산자, 동기 및 비동기, 클라이언트 앱, 쿼리 작업의 세 부분, 지연된 실행, 즉시 실행 강제 적용
  • 14.28분 LINQ 쿼리 식 기본
    쿼리의 기능, 쿼리 구문과 함께 문자열 보간, 쿼리 식이란, 쿼리 종류별 실습, 쿼리 구문과 메서드 구문, 쿼리 식 시작 및 중첩, group, select, into를 사용한 연속, 필터링, 정렬 및 조인, where, orderby, join, let, 쿼리 식의 하위 쿼리
  • 15.28분 LINQ 쿼리 작성, 작업의 형식 관계, LINQ를 지원하는 C# 기능, 표준 쿼리 연산자 1
    표준 쿼리 연산자 확장 메서드, 쿼리 구문, 메서드 구문 예제, 혼합된 쿼리 및 메서드 구문, IEnumerable 변수, 컴파일러에서 제네릭 형식 선언을 처리, 쿼리 식, 암시적으로 형식화된 변수(var), 개체 및 컬렉션 이니셜라이저, 익명 형식, 데이터 필터링, 프로젝션 작업, 메서드 체이닝 방식, SelectMany, Zip
  • 16.28분 LINQ 표준 쿼리 연산자 2
    프로젝션 작업, 집합 작업, Distinct 및 DistinctBy, Except 및 ExceptBy, Intersect 및 IntersectBy, Union 및 UnionBy, 데이터 정렬, 1차 오름차순 정렬, LINQ의 수량자 작업, 데이터 분할 메서드 들
  • 17.28분 LINQ 표준 쿼리 연산자 3
    쿼리 식 구문 예제, Join LINQ의 작업, 단일 키 조인, 여러 조인, 그룹화된 조인을 사용하는 내부 조인, 그룹 조인, XML을 만들기 위한 그룹 조인, 왼쪽 우선 외부 조인 수행
  • 18.26분 LINQ 표준 쿼리 연산자 4
    빌드에서 에러가?, 데이터 그룹화, 단일 속성으로 그룹화 예제, 값으로 그룹화 예제, 범위로 그룹화 예제, 무명 형식으로 그룹화, 중첩 그룹 만들기, 그룹화 작업에서 하위 쿼리 수행
  • 19.29분 비동기 프로그래밍
    CPU 바인딩, I/O 바인딩, 네트워크에서 데이터 추출, 여러 작업이 완료될 때까지 대기, 작성이 간편한 비동기 메서드, Task 반환 형식, Task 반환 형식, Void 반환 형식
  • 20.27분 비동기 프로그래밍 2
    ValueTask, IAsyncEnumerable, 비동기 작업 처리, 비동기 파일 액세스, 병렬 비동기 I/O, 작업 목록 취소, 일정 기간 이후 작업 취소, 비동기 스트림 생성 및 사용

강의목록 다운로드                        1:1 강의 질문&답변






도움이 필요하신가요?
💬
알지오 학습·수강 도우미
운영진이 확인한 안내를 자세히 보고, 필요하면 바로 상담하세요.
상담 상태 확인 중