Rust 배우기
무료 인터랙티브 Rust 온라인 강의입니다. 매 레슨마다 직접 Rust 코드를 작성하고, borrow checker가 막아설 때는 AI 힌트가 도와주고, 강의를 마치면 무료 수료증도 받습니다.
17,735+ 명의 codders가 등록함
- 초보자 환영
AI 코딩 도우미
실습 중심의 대화형 강의
모든 레슨에 음성 나레이션 제공
지식을 확인하는 퀴즈
무료 수료증
커리큘럼
섹션 1
Fundamentals
섹션 시작하기시작펼치기접기Build a strong foundation with essential concepts and basic skills소개
4 개 강의324- 01Rust챌린지
- 02Hello World!챌린지퀴즈
- 03주석퀴즈
- 04기본 프로그램 구조챌린지퀴즈
변수 Part 1
5 개 강의539- 01숫자챌린지퀴즈
- 02Char챌린지퀴즈
- 03String챌린지퀴즈
- 04Boolean챌린지퀴즈
- 05가변 변수챌린지퀴즈
변수 파트 2
5 개 강의433- 01타입 선언챌린지퀴즈
- 02명명 규칙퀴즈
- 03타입 추론챌린지퀴즈
- 04요약 - 변수 초기화챌린지
- 05타입 캐스팅챌린지퀴즈
연산자 Part 1
5 개 강의438- 01산술 연산자챌린지퀴즈
- 02나머지 연산자챌린지퀴즈
- 03산술 연산 축약형챌린지퀴즈
- 04비교 연산자챌린지퀴즈
- 05문자열 비교퀴즈
연산자 파트 2
4 개 강의424- 01논리 연산자 파트 1챌린지퀴즈
- 02논리 연산자 파트 2챌린지퀴즈
- 03요약 - 단순 논리챌린지
- 04논리 연산자 파트 3챌린지퀴즈
의사 결정
5 개 강의532- 01If 표현식챌린지퀴즈
- 02If-Else챌린지퀴즈
- 03Match 문챌린지퀴즈
- 04If-Else 복습챌린지
- 05중첩 If-Else챌린지퀴즈
기본 입출력
4 개 강의417- 01콘솔 출력챌린지퀴즈
- 02사용자 입력 받기챌린지퀴즈
- 03복습 - 120까지챌린지
- 04복습 - 참 또는 거짓챌린지
계산기 앱
프로젝트4 개 강의1- 01환영 메시지챌린지
- 02숫자 입력받기프로젝트
- 03기본 연산프로젝트
- 04형식화된 출력프로젝트
반복문
8 개 강의851- 01For 문과 시리즈챌린지퀴즈
- 02While 반복문챌린지퀴즈
- 03Break 문챌린지퀴즈
- 04Continue 문챌린지퀴즈
- 05중첩 반복문챌린지퀴즈
- 06반복문 레이블챌린지퀴즈
- 07무한 루프챌린지퀴즈
- 08요약 - 동적 입력챌린지
변수 바인딩
4 개 강의230- 01스코프퀴즈
- 02섀도잉 파트 1챌린지퀴즈
- 03변수 바인딩퀴즈
- 04섀도잉 파트 2챌린지퀴즈
함수
6 개 강의634- 01함수 선언하기챌린지퀴즈
- 02매개변수와 인자챌린지퀴즈
- 03반환값챌린지퀴즈
- 04여러 개의 반환값챌린지퀴즈
- 05요약 - 시그마 함수챌린지
- 06요약 - 검증 함수챌린지
배열 기초
5 개 강의430- 01배열 선언하기챌린지퀴즈
- 02배열을 매개변수로 사용하기퀴즈
- 03요소에 접근하기챌린지퀴즈
- 04배열 수정하기챌린지퀴즈
- 05요약 - 배열 예쁘게 출력하기챌린지
배열 심화
5 개 강의423- 01가변 참조 배열챌린지퀴즈
- 02배열 메서드챌린지퀴즈
- 03복습 - 곱셈 배열챌린지
- 04복습 - 뒤집힌 배열챌린지
- 05더 나은 출력퀴즈
배열 순회하기
4 개 강의333- 01Range 가이드챌린지퀴즈
- 02향상된 for 루프챌린지퀴즈
- 03루프 내 Borrow퀴즈
- 04주요 배열 연산챌린지퀴즈
문자열 조작
4 개 강의424- 01문자열 메서드챌린지퀴즈
- 02format! 매크로챌린지퀴즈
- 03문자열 변환챌린지퀴즈
- 04요약 - Format챌린지
최종 프로젝트
3 개 강의37- 01숫자 패턴챌린지퀴즈
- 02패턴 찾기챌린지
- 03학생 성적 계산기챌린지
섹션 2
Logic & Flow
섹션 시작하기시작펼치기접기Develop problem-solving skills and create dynamic, interactive programs고급 제어 흐름
6 개 강의640- 01'match' 표현식챌린지퀴즈
- 02여러 값 매칭하기챌린지퀴즈
- 03범위 매칭하기챌린지퀴즈
- 04'if let' 표현식챌린지퀴즈
- 05표현식으로서의 루프챌린지퀴즈
- 06요약 - 간단한 커맨드 파서챌린지
벡터 소개
8 개 강의756- 01벡터란 무엇인가요?퀴즈
- 02벡터 생성하기챌린지퀴즈
- 03push로 요소 추가하기챌린지퀴즈
- 04벡터 요소에 접근하기챌린지퀴즈
- 05벡터 순회하기챌린지퀴즈
- 06가변 순회챌린지퀴즈
- 07요소 제거하기챌린지퀴즈
- 08요약 - 기본 점수 추적기챌린지
명령줄 할 일 목록
5 개 강의5- 01프로젝트 설정챌린지
- 02할 일 추가하기챌린지
- 03모든 할 일 보기챌린지
- 04할 일 삭제하기챌린지
- 05최종 코드챌린지
구조체로 데이터 그룹화하기
7 개 강의650- 01구조체란?퀴즈
- 02구조체 개요챌린지퀴즈
- 03구조체 필드 접근하기챌린지퀴즈
- 04가변 구조체챌린지퀴즈
- 05함수 매개변수로서의 구조체챌린지퀴즈
- 06튜플 구조체챌린지퀴즈
- 07복습 - Book 구조체 만들기챌린지
해시 맵을 이용한 키-값 쌍
8 개 강의653- 01해시 맵이란?퀴즈
- 02해시 맵 생성하기퀴즈
- 03키-값 쌍 삽입하기챌린지퀴즈
- 04값에 접근하기챌린지퀴즈
- 05해시 맵 순회하기챌린지퀴즈
- 06값 업데이트하기챌린지퀴즈
- 07쌍 삭제하기챌린지퀴즈
- 08요약 - 단어 카운터챌린지
'Option'으로 값이 없는 경우 처리하기
7 개 강의645- 01'Option'이란 무엇인가요?퀴즈
- 02'Option'과 함께 'match' 사용하기챌린지퀴즈
- 03is_some()과 is_none()챌린지퀴즈
- 04'Option' 언래핑하기챌린지퀴즈
- 05expect 메서드챌린지퀴즈
- 06기본값 제공하기: unwrap_or챌린지퀴즈
- 07요약 - 요소 찾기챌린지
'Result'를 이용한 에러 처리
7 개 강의648- 01'Result'란 무엇인가요?퀴즈
- 02'Result'와 함께 'match' 사용하기챌린지퀴즈
- 03is_ok()와 is_err()챌린지퀴즈
- 04단축 방법: unwrap과 expect챌린지퀴즈
- 05물음표 연산자 '?'챌린지퀴즈
- 06문자열을 숫자로 파싱하기챌린지퀴즈
- 07요약 - 안전한 나눗셈 함수챌린지
프로젝트: 간단한 아이템 인벤토리
5 개 강의5- 01프로젝트 설정챌린지
- 02아이템 추가하기챌린지
- 03재고 확인하기챌린지
- 04아이템 판매하기챌린지
- 05하나로 합치기챌린지
문자열 슬라이스와 그 외
5 개 강의432- 01String vs. &str퀴즈
- 02문자열 슬라이스 생성하기챌린지퀴즈
- 03함수 매개변수로서의 슬라이스챌린지퀴즈
- 04기타 슬라이스챌린지퀴즈
- 05복습 - 첫 번째 단어 찾기챌린지
클로저와 익명 함수
5 개 강의431- 01클로저란 무엇인가요?퀴즈
- 02간단한 클로저 정의하기챌린지퀴즈
- 03매개변수가 있는 클로저챌린지퀴즈
- 04환경 캡처하기챌린지퀴즈
- 05요약 - 간단한 덧셈 클로저챌린지
최종 챌린지
3 개 강의3- 01요약 - 고유한 항목챌린지
- 02요약 - 사용자 프로필 검증기챌린지
- 03요약 - 성적 요약기챌린지
섹션 3
Object Oriented Programming
섹션 시작하기시작펼치기접기Discover how to organize code with classes, objects, and reusable structures메서드와 동작
7 개 강의748- 01구현 블록 소개챌린지퀴즈
- 02Self 매개변수챌린지퀴즈
- 03가변 메서드챌린지퀴즈
- 04연관 함수챌린지퀴즈
- 05다중 구현 블록챌린지퀴즈
- 06메서드 체이닝챌린지퀴즈
- 07요약 - 사각형 동작챌린지
캡슐화와 모듈
6 개 강의543- 01모듈 기초퀴즈
- 02Public 키워드챌린지퀴즈
- 03Private 필드챌린지퀴즈
- 04Getter챌린지퀴즈
- 05Setter챌린지퀴즈
- 06요약 - 보안 락커챌린지
심화 Enum
5 개 강의535- 01데이터를 포함한 Enum챌린지퀴즈
- 02Enum의 메서드챌린지퀴즈
- 03데이터 배리언트 매칭챌린지퀴즈
- 04Option Enum 다시 살펴보기챌린지퀴즈
- 05요약 - Shape Enum챌린지
프로젝트: 가상 반려동물
프로젝트5 개 강의1- 01반려동물 정의하기챌린지
- 02반려동물 먹이 주기프로젝트
- 03반려동물과 놀아주기프로젝트
- 04상태 보고프로젝트
- 05최종 상호작용프로젝트
제네릭
5 개 강의533- 01제네릭 구조체챌린지퀴즈
- 02제네릭 메서드챌린지퀴즈
- 03다중 제네릭 타입챌린지퀴즈
- 04제네릭 함수챌린지퀴즈
- 05요약 - 좌표 지점챌린지
트레이트 정의
6 개 강의641- 01트레이트란 무엇인가요?챌린지퀴즈
- 02트레이트 구현하기챌린지퀴즈
- 03기본 구현챌린지퀴즈
- 04기본 구현 오버라이딩챌린지퀴즈
- 05매개변수가 있는 트레이트챌린지퀴즈
- 06요약 - 미디어 플레이어챌린지
표준 트레이트
5 개 강의536- 01Debug 트레이트챌린지퀴즈
- 02Display 트레이트챌린지퀴즈
- 03Clone과 Copy챌린지퀴즈
- 04동등성 트레이트챌린지퀴즈
- 05요약 - 출력 가능한 Point챌린지
트레이트 경계
5 개 강의534- 01트레이트 경계 문법챌린지퀴즈
- 02다중 경계챌린지퀴즈
- 03where 절챌린지퀴즈
- 04트레이트를 활용한 타입 반환챌린지퀴즈
- 05요약 - 제네릭 프린터챌린지
트레이트 객체
4 개 강의425- 01동적 디스패치챌린지퀴즈
- 02트레이트 벡터챌린지퀴즈
- 03트레이트 객체 순회하기챌린지퀴즈
- 04복습 - 동물원 관리자챌린지
프로젝트: 문서 시스템
프로젝트5 개 강의1- 01Draw 트레이트챌린지
- 02텍스트 컴포넌트프로젝트
- 03버튼 컴포넌트프로젝트
- 04Screen 구조체프로젝트
- 05스크린 실행하기프로젝트
Rust 디자인 패턴
5 개 강의531- 01뉴타입 패턴챌린지퀴즈
- 02컴포지션챌린지퀴즈
- 03Drop 트레이트챌린지퀴즈
- 04From과 Into챌린지퀴즈
- 05요약 - Smart Pointer Mock챌린지
최종 도전 과제
3 개 강의3- 01제네릭 스택챌린지
- 02도서관 카탈로그챌린지
- 03도형 넓이 계산기챌린지
Rust 코스
브라우저에서 무료로 시작하는 실습형 Rust 코스.
입문자 챌린지 - 기초 개념 연습하기
인기여러분의 기초 코딩 지식을 테스트하고 프로그래밍 챌린지들을 해결해 보세요. 원하는 어떤 언어든 사용할 수 있습니다. 즐거운 코딩 되세요!
수료 시 인증서
- 20
- 20
코딩 문제
인기이 코스에서 제공하는 다양한 난이도의 연습 문제를 통해 여러분의 프로그래밍 문제 해결 능력을 시험해 보세요. 프로그래밍 언어의 기초 문법을 어느 정도 알고 있는 개발자를 위해 설계되었습니다.
수료 시 인증서
- 32
- 31
코딩 문제: 2편
이 코스에서 제공하는 다양한 난이도의 연습 문제를 통해 여러분의 프로그래밍 문제 해결 능력을 테스트해 보세요. 어떤 프로그래밍 언어든 기초 문법에 대한 사전 지식이 있는 분들을 위해 설계되었습니다. 이 코스는 '코딩 문제 1편'의 연장선상에 있습니다.
수료 시 인증서
- 25
- 24
스택 - 자료구조 시리즈 #1
이 코스에서는 스택 자료구조에 대해 배우고, 원하는 언어로 스택을 처음부터 직접 구현해 보며 다양한 코딩 챌린지를 연습합니다!
- 13
- 6
- 1
힙 & 우선순위 큐 - 자료구조 시리즈 #7
신규이 코스에서는 우선순위 큐의 핵심인 Heap 자료구조에 대해 배우고, 선호하는 언어로 MinHeap을 처음부터 직접 구현하며 다양한 코딩 챌린지를 연습합니다!
수료 시 인증서
- 14
- 6
- 1
별 찍기 부트캠프
프로그래밍 문제 해결 능력을 발휘하여 기초부터 복잡한 수준까지 다양한 별 패턴을 출력하는 방법을 배워보세요. 다양한 수준의 중첩 반복문, 조건문, 그리고 수학적 계산을 활용하는 법을 익힐 수 있습니다.
- 30
- 28
Coddy에서 Rust을 배우는 이유
- 브라우저에서 실제 Rust 코드를 작성하고 실행하세요. rustup 설치도, Cargo 설정도 필요 없습니다. 각 레슨은 서버에서 Rust 프로그램을 컴파일해 결과(그리고 컴파일러 오류까지)를 즉시 보여줍니다.
- Rust만의 특징: ownership, borrowing, lifetimes, traits, enums와 패턴 매칭,
Result를 활용한 에러 처리. 시스템 프로그래머라면 알아야 할 Rust의 기초입니다. - AI 힌트가 Rust 특유의 엄격한 컴파일러 에러를 차근차근 풀어줘서, 처음 배울 때 borrow checker가 벽이 아니라 선생님처럼 느껴집니다.
- 과정을 마치면 무료 Rust 수료증을 받습니다. 시스템 프로그래밍, 인프라, 블록체인, 임베디드 분야처럼 Rust가 점점 더 주류 언어로 자리 잡아 가는 직무에서 신뢰할 만한 증거가 됩니다.