ONLINE CLASS

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

COURSE FOCUS

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

C#의 변수와 자료형을 선언하고 1차원·2차원·불규칙 배열을 다루며 자료 저장의 기본을 익힙니다. 날짜·통화·백분율 서식과 StringBuilder, 인덱서·정적 클래스를 사용해 데이터를 표현하고 접근하는 방법을 배웁니다. File·StreamWriter·StreamReader와 예외 처리, LINQ를 이용한 파일 내용 출력으로 자료를 저장하고 읽는 응용 작업을 실습합니다.

?

수강 전 꼭 확인하세요

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

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

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

◆
기업이 선택한 신뢰 강의

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

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

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

자세히 보기  >
REAL REVIEW

수강생 리얼후기!

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

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

RECENT Q&A

최근 수강질문

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

ALZIO DEEP GUIDE

C#을 더 깊게 이해하기

30강에서 출력·형식·문자열·연산·배열·반복·함수·클래스를 거쳐 LINQ와 파일 처리까지 연결합니다. 847의 20강 과정과 실제 회차 구성이 다르며 async/await를 직접 배운다는 증거는 없습니다.

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

C샵 프로그래밍 쉽게 배우기 · 30강 · 12시간 13분

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도 컴파일러가 형식을 추론하는 정적 타입 변수입니다.

기술 참고 · 직접 학습 여부는 아래 회차 연결표에서 확인

Class & Object

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

기술 참고 · 직접 학습 여부는 아래 회차 연결표에서 확인

Interface

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

기술 참고 · 직접 학습 여부는 아래 회차 연결표에서 확인

Generics

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

기술 참고 · 직접 학습 여부는 아래 회차 연결표에서 확인

Exception Handling

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

기술 참고 · 직접 학습 여부는 아래 회차 연결표에서 확인

Pattern Matching

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

기술 참고 · 직접 학습 여부는 아래 회차 연결표에서 확인

Records

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

기술 참고 · 직접 학습 여부는 아래 회차 연결표에서 확인

Nullable Reference Types

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

기술 참고 · 직접 학습 여부는 아래 회차 연결표에서 확인

LINQ

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

기술 참고 · 직접 학습 여부는 아래 회차 연결표에서 확인

Extension Methods

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

기술 참고 · 직접 학습 여부는 아래 회차 연결표에서 확인

Async / Await

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

기술 참고 · 직접 학습 여부는 아래 회차 연결표에서 확인

Collections

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

기술 참고 · 직접 학습 여부는 아래 회차 연결표에서 확인
04

C# 프로그램의 실행 흐름

1~6강은 출력·형식·문자열·연산·.NET 라이브러리입니다. 공개 주제는 Hello ALZIO! / 변수와 자료형 / 문자열 변경하기 / 문자열 비교와 검색 / 숫자 다루기 / .NET 라이브러리.

7~14강은 조건·배열·반복·논리·비트 연산입니다. 공개 주제는 조건문 (if / elseif / else) / 배열 / 반복문 (foreach) / 증감 및 논리연산자 / 비트 및 조건연산자 / 조건문 (switch-case / case) / 반복문 (for / while / do while / foreach) / 반복문 (break / continue / goto).

15~20강은 형 변환·서식·배열·리스트·함수·재귀입니다. 공개 주제는 데이터 형 변환 / 데이터 서식 / 배열 연산 / 리스트 / 함수의 개념 / 재귀함수 및 오버로딩.

21~25강은 클래스·프로퍼티·상속·추상·제네릭입니다. 공개 주제는 객체지향과 클래스 / 프로퍼티와 생성자 / 정적 개체와 인덱서 / 클래스의 상속 / 추상 및 제네릭 클래스.

26~29강은 LINQ 필터·정렬·그룹·집합·조인입니다. 공개 주제는 LINQ 작성하기 / LINQ 조건문 / LINQ 집합 다루기 / 그외 LINQ문법.

30~30강은 파일 입출력·예외 처리입니다. 공개 주제는 파일처리.

  1. 출력·형식·문자열·연산·.NET 라이브러리
  2. 조건·배열·반복·논리·비트 연산
  3. 형 변환·서식·배열·리스트·함수·재귀
  4. 클래스·프로퍼티·상속·추상·제네릭
  5. LINQ 필터·정렬·그룹·집합·조인
  6. 파일 입출력·예외 처리
05

타입 시스템과 객체지향

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

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

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

06

실무에서 사용하는 기능

복습 후 응용 제안: LINQ의 조건·정렬 결과와 파일 저장 뒤 다시 읽은 결과를 대조합니다. 최신 언어 문법 전체는 확인된 범위가 아닙니다.

예외 처리

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

확장 메서드

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

문자열 보간

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

Index / Range

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

Nullable

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

Pattern matching

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

07

LINQ 완전 이해

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

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

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

Where / Select

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

OrderBy / GroupBy

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

Join

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

Distinct / Union / Intersect

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

SelectMany

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

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

async / await와 비동기

async/await는 C#의 현재 기술 참고입니다. 이 30강 공개 커리큘럼에서 직접 학습하는 기능으로 확인되지 않습니다. LINQ 26~29강과 파일 처리 30강이 실제 후반 범위입니다.

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

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

Desktop

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

Web / API

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

Cloud / Server

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

Business Application

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

Game-related development

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

Data processing

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

Automation / Tools

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

10

C# 14 · .NET 10과 이 강좌

C#·.NET 정확한 버전 미확정 · 30강 공개

기존 Topic의 현재 기술 설명과 이 강좌의 직접 회차는 분리합니다. 제작 환경과 브라우저·컴파일러의 정확한 버전은 확정하지 않습니다.

11

C# vs Java vs C++ vs Python

아래 비교는 목적과 작업 구조를 선택하기 위한 안내입니다. 다른 기술 전체를 본 강좌에서 가르친다는 뜻은 아닙니다.

C# vs Java vs C++ vs Python
선택지작업 접근이 강좌와의 관계
출력·형식·문자열·연산·.NET 라이브러리1~6강복습 후 응용 제안: LINQ의 조건·정렬 결과와 파일 저장 뒤 다시 읽은 결과를 대조합니다. 최신 언어 문법 전체는 확인된 범위가 아닙니다.
조건·배열·반복·논리·비트 연산7~14강복습 후 응용 제안: LINQ의 조건·정렬 결과와 파일 저장 뒤 다시 읽은 결과를 대조합니다. 최신 언어 문법 전체는 확인된 범위가 아닙니다.
형 변환·서식·배열·리스트·함수·재귀15~20강복습 후 응용 제안: LINQ의 조건·정렬 결과와 파일 저장 뒤 다시 읽은 결과를 대조합니다. 최신 언어 문법 전체는 확인된 범위가 아닙니다.
12

C# 개념과 이 강좌의 30강 연결

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

C# 개념과 이 강좌의 30강 연결
기능·개념무엇인가실무 의미강좌 회차학습 상태
출력·형식·문자열·연산·.NET 라이브러리출력·형식·문자열·연산·.NET 라이브러리의 역할을 회차 순서로 연결합니다.입력·처리·결과를 나눠 실제 동작을 확인합니다.1·2·3·4·5·6강강좌에서 직접 학습
조건·배열·반복·논리·비트 연산조건·배열·반복·논리·비트 연산의 역할을 회차 순서로 연결합니다.입력·처리·결과를 나눠 실제 동작을 확인합니다.7·8·9·10·11·12·13·14강강좌에서 직접 학습
형 변환·서식·배열·리스트·함수·재귀형 변환·서식·배열·리스트·함수·재귀의 역할을 회차 순서로 연결합니다.입력·처리·결과를 나눠 실제 동작을 확인합니다.15·16·17·18·19·20강강좌에서 직접 학습
클래스·프로퍼티·상속·추상·제네릭클래스·프로퍼티·상속·추상·제네릭의 역할을 회차 순서로 연결합니다.입력·처리·결과를 나눠 실제 동작을 확인합니다.21·22·23·24·25강강좌에서 직접 학습
LINQ 필터·정렬·그룹·집합·조인LINQ 필터·정렬·그룹·집합·조인의 역할을 회차 순서로 연결합니다.입력·처리·결과를 나눠 실제 동작을 확인합니다.26·27·28·29강강좌에서 직접 학습
파일 입출력·예외 처리파일 입출력·예외 처리의 역할을 회차 순서로 연결합니다.입력·처리·결과를 나눠 실제 동작을 확인합니다.30강강좌에서 직접 학습
13

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

이 과정은 무엇을 연결하나?

30강에서 출력·형식·문자열·연산·배열·반복·함수·클래스를 거쳐 LINQ와 파일 처리까지 연결합니다. 847의 20강 과정과 실제 회차 구성이 다르며 async/await를 직접 배운다는 증거는 없습니다.

초반의 실제 범위는?

1~6강은 출력·형식·문자열·연산·.NET 라이브러리입니다. 공개 주제는 Hello ALZIO! / 변수와 자료형 / 문자열 변경하기 / 문자열 비교와 검색 / 숫자 다루기 / .NET 라이브러리.

마지막에 어떤 결과를 확인하나?

30~30강은 파일 입출력·예외 처리입니다. 공개 주제는 파일처리.

공개 설명 밖의 기능도 직접 배우나?

복습 후 응용 제안: LINQ의 조건·정렬 결과와 파일 저장 뒤 다시 읽은 결과를 대조합니다. 최신 언어 문법 전체는 확인된 범위가 아닙니다.

최신 버전 강좌인가?

C#·.NET 정확한 버전 미확정 · 30강 공개 제목과 설명만으로 최신 버전 대응을 단정하지 않습니다.

다음 학습은 무엇이 다른가?

C샵 [기초 + 실무까지]에서 다른 20강 과정의 객체·실습 구성을 비교합니다.

14

다음 학습 방향

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

C샵 [기초 + 실무까지]

C샵 [기초 + 실무까지] 과정에서 다른 20강 과정의 객체·실습 구성을 비교합니다.

자료 보기 →

C# 관련 과정 비교

입문·실무·심화 과정의 실제 커리큘럼을 목적에 맞게 비교합니다.

자료 보기 →

실습과 복습 계획

새 환경에서 예제를 확인하고 학습 계획을 세우는 방법을 살펴봅니다.

자료 보기 →

기술정보는 Microsoft의 공식자료를 기준으로 검토했으며, 강좌 범위는 C샵 프로그래밍 쉽게 배우기의 공개 커리큘럼과 구분했습니다.

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

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

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

수강 전 꼭 확인하세요

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

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

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

  • 01.22분 Hello ALZIO!
    작은 코드 예제 작성으로 C# 구문의 기본 사항을 알아보고, string 형식을 사용한 문자열을 출력 및 숫자를 출력하는 방법을 살펴봅니다.
    Write vs WriteLine, 문자열 변수에 값 넣고 출력하기, 문자열 출력하는 여러가지 방법/서식, 문자열 대소문자 출력하기, 정수 및 실수 출력하기
  • 02.23분 변수와 자료형
    다양한 자료형의 크기와 각 자료형에 맞는 변수를 선언 및 초기화하는 규칙을 확인해봅니다. (정수, 실수, 문자, 불자료형 및 암시적 지역변수)
    자료형, 정수형, 실수형, 문자형, 불자료형, 암시적 자료형
  • 03.21분 문자열 변경하기
    이스케이프 시퀀스를 사용하여 문자열 출력하기와 문자열 관련 함수를 다뤄봅니다.
    이스케이프 시퀀스, 문자열 자르기, 특정 위치 제거, 치환하기, 패딩으로 채우기
  • 04.21분 문자열 비교와 검색
    문자열 관련 함수 다루기, 문자열 비교 및 동일확지 학인하고, 특정한 단어로 시작하거나 포함하는지를 확인, 문자열의 위치를 확인하고 원하는 문자열을 삽입해봅니다.
    Compare, CompareTo, Equals, StartsWith, EndsWith, Contains, IndexOf, Insert
  • 05.23분 숫자 다루기
    정수와 실수의 사칙연산을 해보고, 암시적/명시적 형변환을 살펴봅니다. 연산자 우선순위 및 연산과 관련된 증감연산자 및 복합대입연산자를 사용해봅니다.
    사칙연산, quotient, remain, 연산자 우선순위, 증감연산자, 복합대입연산자
  • 06.22분 .NET 라이브러리
    닷넷 라이브러리 클래스의 개념을 간단히 확인하고, 대표적으로 Random 및 Math 클래스를 사용해봅니다. 사칙연산과 관련된 메서드를 포함하는 나만의 라이브러리를 만들고, 프로젝트에 포함시켜 사용해봅니다.
    클래스 라이브러리 메서드, Math 라이브러리, 나만의 라이브러리 만들기
  • 07.23분 조건문 (if / elseif / else)
    if문을 사용해서 조건에 맞는 코드만 선택적으로 실행해봅니다. else문을 포함하여 분기문의 동작 과정을 살펴봅니다. 또다른 조건을 elseif를 사용하여 추가해보고, if문을 중첩하여 사용해봅니다.
    if, if else, else if
  • 08.23분 배열
    1차원 배열을 선언하고 인덱스를 사용하여 값을 변경하고 출력해봅니다. 2차원 배열을 행과 열의 정보를 이용해 출력하고, 크기가 불규칙한 2차원배열을 선언하는 방법을 알아봅니다.
    1차원 배열, 2차원 배열, 크기가 불규칙한 2차원 배열
  • 09.25분 반복문 (foreach)
    foreach문의 사용방법을 확인한 후 배열의 길이값을 이용하여 평균값을 구해봅니다. 인덱스값을 넣은 배열을 사용하여 foreach문으로 배열의 내용을 복사합니다. foreach문 내에 조건문으로 각 행의 평균값을 구해봅니다.
    foreach, 반복문, 2차원배열의 경우
  • 10.26분 증감 및 논리연산자
    사칙연산에서 0으로 나눌 때 주의사항을 알아보고, 예외를 처리하는 방법을 알아봅니다. C#에서 사용하는 주요연산자를 알아봅니다. (단항연산자, 논리연산자 AND, OR, NOT, 조건부 논리 연산자)
    단항, 논리연산자, AND OR NOT, 조건부 논리연산자
  • 11.23분 비트 및 조건연산자
    비트단위 처리방법을 확인하기 위해 2진법 개념을 살펴보고, 10진수 정수를 2진수로 출력하는 방법을 알아봅니다. 비트 쉬프트 연산자를 사용하여 2의 n승의 값을 곱하거나 나눈 결과를 출력하고, 조건연산자 및 람다연산자를 알아봅니다.
    2진법, 조건연산자, 람다연산자
  • 12.25분 조건문 (switch-case / case)
    switch-case문을 이용해 분기시켜봅니다. break의 역할을 확인하고 case문에 사용가능한 자료형을 확인해봅니다. case 조건에서 값의 범위가 주어지는 경우 주의사항을 확인해봅니다.
    switch-case, 변수 자료형 주의하기, 크기 비교
  • 13.25분 반복문 (for / while / do while / foreach)
    for문 및 while문 그리고 do while문을 사용하여 반복문을 구현해보고, foreach문에서의 제약사항을 기타 반복문으로 처리해봅니다.
    for, foreach, while, do while
  • 14.23분 반복문 (break / continue / goto)
    break문의 사용법을 알아보고, continue문과 비교한 후 goto문을 사용하여 프로그램 코드의 제어를 원하는 레이블로 이동시키는 방법을 알아봅니다.
    break, continue, goto
  • 15.25분 데이터 형 변환
    데이터 형 변환을 위한 캐스팅 연산자를 사용해보고, 숫자를 문자열로 변환하며, Parse 및 TryParse 그리고 ConverTo 각각의 연산자의 사용방법을 비교해봅니다.
    캐스팅 연산자, 문자열 숫자열 변환, TryParse, Parse, ConverTo
  • 16.24분 데이터 서식
    서식지정자를 사용해봅니다. 기타 데이터 서식(통화, 소수점, 백분율, 여백 등) 및 날짜 그리고 시간표현에 서식을 지정해보고, StringBuilder클래스를 사용하여 문자열을 만들어봅니다.
    서식지정자, 통화 서식지정자, 숫자 서식지정자, 날짜 서식지정자, StringBuilder클래스
  • 17.26분 배열 연산
    배열과 관련된 다양한 기능을 살펴봅니다. 배열을 정렬하고, 배열의 크기를 조정해보고 문자열과 배열에 각각의 값을 대입할 때 사용할 수 있는 방법도 학습해봅니다.
    배열 연산, 배열 크기, 문자열 배열간 변환
  • 18.24분 리스트
    리스트를 생성하고 리스트와 관련된 여러 속성을 사용해본 후 배열과의 차이점을 알아보고, 인덱스를 사용하여 리스트에 접근합니다. 리스트의 값 복사 시 주의사항을 알아보고, 리스트의 공간의 크기를 확인합니다.
    리스트, 리스트 정렬하기, 다른 리스트 추가하기
  • 19.24분 함수의 개념
    함수란 무엇인지 살펴보고, 반환형과 매개변수의 유무에 따라 함수를 생성하는 방법을 살펴봅니다. 계산기 기능을 하는 함수를 만들어봅니다. 매개변수로 값을 전달할 때 주의사항을 알아보고, 함수를 호출하는 2가지 방법을 학습합니다.(값에 의한 호출 vs 참조에 의한 호출)
    함수, 계산기 함수, 인수 전달하기
  • 20.26분 재귀함수 및 오버로딩
    자기 자신을 다시 호출하는 재귀함수에 대해 알아보고, 팩토리얼과 피보나치 수열을 재귀함수로 구현해봅니다. 함수 오버로딩의 개념을 알아보고, 이를 구현하는 방법을 알아봅니다.
    재귀함수, 피보나치, 함수 오버로딩
  • 21.27분 객체지향과 클래스
    클래스를 생성하는 방법을 알아보고, 직접 새로운 클래스를 프로젝트에 추가해봅니다. 클래스의 멤버 속성 중, public과 private의 차이를 확인합니다. 객체지향의 대표적인 특성인, 캡슐화 및 정보은닉을 구현하는 방법을 살펴봅니다.
    클래스, 인스턴스명, 클래스 만들기
  • 22.23분 프로퍼티와 생성자
    this 키워드란 무엇인지 알아보고, 프로퍼티를 사용하여 캡슐화를 간편하게 해봅니다. 생성자를 오버로딩하여 원하는 값을 전달하며 새로운 개체를 생성해보고, 읽기 전용으로 만들고자 할 때 사용하는 readonly 제한자를 학습합니다.
    클래스, 간편하게 만들기, 멤버 클래스
  • 23.23분 정적 개체와 인덱서
    인덱서를 사용하여 클래스 내의 1차원 및 2차원 배열 멤버의 값에 접근하는 법을 알아봅니다. 열거형 자료형이란 무엇인지 알아보고 배열과의 차이점을 확인합니다. static 선언의 개념을 이해하고, 정적 클래스를 선언할 때의 주의사항을 학습합니다.
    익덱스 배열 접근, 열거형 자료형, static 선언 주의사항
  • 24.26분 클래스의 상속
    클래스 간의 상속을 확인하며, 상속에서 virtual 가상함수 및 override 재정의로, 다형성을 구현하는 방법을 확인합니다. 상속 관계의 클래스의 인스턴스를 선언하는 방법을 알아보고, base 키워드 및 sealed를 사용해봅니다. private, public 이외에, protected 접근제한자의 역할을 확인해봅니다.
    클래스 상속, 인스턴스 주의사항, protected
  • 25.25분 추상 및 제네릭 클래스
    추상클래스를 알아보고, 추상 메서드 사용 시 주의사항을 확인합니다. 단순히 변수들을 모아두는 구조체를 정의해봅니다. 추상 클래스와 비슷한 인터페이스를 알아보고, 인터페이스와 클래스의 차이점을 비교해봅니다. 실행 시 컴파일러가 자료형을 정의하는 제네릭에 대해 알아보고 제네릭 클래스를 만들어봅니다.
    추상클래스, 인터페이스, 제네릭
  • 26.32분 LINQ 작성하기
    LINQ를 사용하여, from...where...select 쿼리문으로 조건에 일치하는 값들을 열거형 값으로 가져오는 방법을 알아봅니다. 람다 식을 이용하여 LINQ를 메소드형태로 작성하는 방법을 알아봅니다. 클래스의 리스트를 참조하여 쿼리문을 작성해봅니다.
    LINQ, 쿼리사용 클래스, Product 클래스, Program.cs
  • 27.27분 LINQ 조건문
    where문에 조건을 여러개 추가해봅니다. orderby를 사용하여 만들어진 열거형 목록의 순서를 정렬해봅니다. group by (into)로 특정한 키 값을 기준으로 내용을 그룹화시키고, 그룹화된 목록을 출력하는 방법을 알아봅니다. 그룹화된 목록을 키 값으로 정렬해봅니다.
    여러 조건, 정렬조건 추가, 새로운 클래스, 합격불합격 출력
  • 28.25분 LINQ 집합 다루기
    group을 중첩하여 그룹 내의 또 다른 그룹을 생성해봅니다. Take(while), Skip(while) 키워드를 사용하여 원하는 부분의 값을 가져옵니다. 집합과 관련된 union, Intersect, distint를 사용해본다. 쿼리문에 Distinct를 사용하여 중복 값을 제거해봅니다.
    group 중첩, Take
  • 29.25분 그외 LINQ문법
    목록에서 처음, 마지막, 그리고 특정 인덱스의 값만 반환하도록 하는 First, Last, ElementAt 등의 linq 문법을 살펴봅니다. Range와 Repeat로 특정 범위/값을 구성하는 열거형 목록을 만들어봅니다. join을 사용하여 상호, 그룹, left outer join등을 알아보고, 이를 실제 데이터에서 키 값 기준으로 조인하는 방법을 확인합니다.
    순서관련 개념, join, left outer join
  • 30.26분 파일처리
    File클래스 및 StreamWriter/StreamReader 클래스를 사용하여, 파일에 입출력 하는 법을 알아봅니다. try-catch로 파일 입출력 시 발생가능한 오류를 제어합니다. 파일을 이동/복사하는 방법을 알아봅니다. 파일의 내용을 LINQ를 사용하여 출력해봅니다.
    파일 입출력, 파일명 변경 및 복사

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






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