0Pricing
Lua Academy icon

Lua Academy

LUAGamesScriptingBeginnerSystemsDesktopBackendMobile

Lua Academy와 함께 경량이고 유연한 애플리케이션을 개발하기 위해 Lua를 배우세요.

🤖 AI 기반📚 40개 코스👥 100,000명 이상의 학습자⭐ 4.9 평점
코스 개요

Lua: 어디서나 실행되는 경량 스크립팅 언어

Lua는 LOVE 게임 프레임워크와 Roblox부터 Redis, OpenResty를 통한 Nginx, Neovim에 이르기까지 게임 엔진, 웹 서버, 데이터베이스, 텍스트 에디터에서 사용되는 빠르고 임베드 가능한 스크립팅 언어입니다. 최소한의 코어와 깔끔한 C API는 전체 언어 스택의 오버헤드 없이 스크립팅 가능한 런타임이 필요할 때 기본 선택지입니다. 이 트랙은 40개의 체계적인 강좌를 기반으로 첫 번째 원리부터 프로덕션급 임베딩 및 성능 튜닝까지 Lua를 다룹니다.

배울 내용

변수, 타입, 연산자, 제어 흐름부터 시작하여 Lua를 특별하게 만드는 기능으로 나아갑니다: 배열, 딕셔너리, 객체를 위한 범용 데이터 구조인 테이블. 그 다음 표준 문자열 라이브러리, 패턴 매칭, 파일 I/O, 날짜 처리를 다룹니다. 중급 주제에는 메타테이블과 메타메서드, 객체 지향 및 함수형 프로그래밍 패턴, 코루틴, 클로저, 모듈, JSON 인코딩이 포함됩니다. 응용 트랙은 게임 로직을 위한 Lua 스크립팅, busted를 이용한 단위 테스트, Redis 스크립팅, 플러그인 아키텍처 구축을 다룹니다. 고급 강좌는 약한 테이블을 이용한 메모리 관리, C 애플리케이션에서 Lua 임베딩, LuaJIT 성능 최적화, C 라이브러리 호출을 위한 FFI, OpenResty/Nginx 통합, 샌드박싱, DSL 구성, LuaSocket을 이용한 네트워킹, Neovim 플러그인 작성에 이릅니다.

학습 경로

40개의 강좌는 A1부터 C1까지 아우릅니다. A1과 A2 강좌는 언어 기초를 확립합니다 — 구문, 함수, 테이블, 시퀀스, 기본 I/O. B1 강좌는 Lua 특유의 사고 모델을 구축합니다: 메타테이블, 코루틴, OOP 패턴, 상속, 함수형 프로그래밍, 표준 라이브러리. B2 강좌는 그 지식을 실제 상황에 적용합니다: 게임 로직을 위한 Lua 스크립팅, 코루틴 기반 비동기 패턴, Redis 스크립팅을 위한 Lua, LOVE를 이용한 Lua 게임 개발. C1 최종 단계는 전문가 수준의 주제를 다룹니다 — C 애플리케이션에서 Lua 임베딩, LuaJIT 및 성능 최적화, FFI: Lua에서 C 라이브러리 호출, Nginx의 Lua (OpenResty), Neovim 플러그인 작성.

작동 방식

각 강좌는 내장된 코드 에디터에서 실시간 피드백과 함께 완료하는 짧고 실습 중심의 강의로 나뉩니다. 막히는 부분이 생기면 AI 튜터를 언제든 이용할 수 있으며, 자기 속도대로 진행하는 방식이므로 이미 알고 있는 주제는 빠르게 진행하고 메타테이블이나 코루틴처럼 세심한 주의가 필요한 부분은 천천히 진행할 수 있습니다.

학습 시작 →

학습 방식

🎯
인터랙티브 레슨
실시간 피드백을 받으며 직접 코딩 연습하기
🤖
AI 튜터
막힐 때마다 AI 튜터에게 즉시 도움받기
💻
내장 에디터
브라우저에서 바로 코드 작성 & 실행하기
🏆
수료증
과정을 완료하면 수료증 취득하기
커리큘럼

40개 코스

Lua Academy 학습 경로의 모든 코스.

01

Lua 입문

A13개 레슨

Lua가 무엇인지, Roblox, World of Warcraft와 수많은 게임 엔진의 핵심 엔진인 이유, 그리고 가장 배우기 빠른 언어 중 하나인 이유를 알아봅니다.

02

Lua 기초: 변수, 타입 및 연산자

A14개 레슨PRO

Lua 프로그래밍의 기초를 익힙니다. 변수, 데이터 타입, 산술·논리·문자열 연산자, 타입 강제 변환 규칙을 다룹니다.

03

Lua 숫자와 수학

A14개 레슨PRO

Lua의 숫자와 수학 라이브러리를 자신 있게 다룹니다.

04

제어 흐름: if/elseif/else 및 반복문

A24개 레슨PRO

while, repeat-until, 수치 for, 제네릭 for 반복문을 포함한 Lua의 조건문과 반복문을 익힙니다.

05

Lua의 함수

A24개 레슨PRO

함수를 정의하고 호출하며, 다중 반환값, 가변 인자, 일급 함수, 재귀 패턴을 사용하는 방법을 학습합니다.

06

테이블: 범용 데이터 구조

A24개 레슨PRO

배열, 사전, 레코드로 사용되는 Lua 테이블을 깊이 있게 학습합니다. 삽입, 삭제, 순회, 중첩 구조를 익힙니다.

07

Lua의 파일 입출력

A24개 레슨PRO

Lua의 io 라이브러리로 파일을 열고 읽고 쓰고 닫으며, 오류를 처리하고 파일 핸들을 다루는 방법을 학습합니다.

08

Lua 시퀀스 다루기

A24개 레슨PRO

배열 방식의 테이블과 시퀀스 규칙을 사용합니다.

09

Lua 날짜와 시간 처리

A24개 레슨PRO

날짜와 시간을 읽고, 형식을 지정하고, 계산합니다.

10

문자열 라이브러리 심화

B14개 레슨PRO

Lua의 문자열 라이브러리를 익힙니다. 연결, 길이, find, sub, format, gsub, gmatch, 패턴 매칭 기초를 다룹니다.

11

메타테이블 및 메타메서드 기초

B14개 레슨PRO

메타테이블과 __index, __newindex, __add, __tostring 같은 메타메서드로 테이블 동작을 사용자 지정하는 방법을 이해합니다.

12

pcall 및 xpcall을 사용한 오류 처리

B14개 레슨PRO

pcall, xpcall, error(), 구조화된 오류 객체를 사용해 견고한 프로그램을 만드는 Lua의 오류 처리 모델을 익힙니다.

13

모듈 및 require 시스템

B14개 레슨PRO

require로 모듈식 Lua 프로그램을 구축하고, package.path와 package.loaded를 이해하며, 재사용 가능한 모듈 파일을 만듭니다.

14

코루틴 입문

B14개 레슨PRO

Lua 코루틴을 학습합니다. 생성, 재개, 양보, 상태 확인을 다루고, 협력적 멀티태스킹과 생산자-소비자 패턴을 이해합니다.

15

메타테이블을 활용한 객체 지향 프로그래밍

B14개 레슨PRO

메타테이블, 메서드 디스패치를 위한 __index, 생성자, 인스턴스 데이터 캡슐화를 사용해 Lua에서 완전한 OOP 시스템을 구축합니다.

16

Lua의 상속 패턴

B14개 레슨PRO

메타테이블 체인, 믹스인 패턴, 메서드 재정의를 사용해 Lua에서 단일 상속과 다중 상속을 구현합니다.

17

고급 테이블 조작

B14개 레슨PRO

table.sort, table.concat, table.move, 깊은 복사 전략, 대규모 데이터 구조의 효율적인 조작을 익힙니다.

18

Lua 표준 라이브러리

B14개 레슨PRO

Lua의 표준 라이브러리를 실용적인 예제와 함께 종합적으로 살펴봅니다. math, table, string, io, os, debug 모듈을 다룹니다.

19

패턴 매칭 및 문자열 파싱

B14개 레슨PRO

텍스트 파싱, 데이터 추출, 토큰화, 변환에 활용되는 Lua의 강력한 패턴 매칭 시스템을 익힙니다.

20

Lua 함수형 프로그래밍 패턴

B14개 레슨PRO

함수를 값처럼 다뤄 표현력 있는 Lua 코드를 작성합니다.

21

Lua JSON 인코딩과 디코딩

B14개 레슨PRO

JSON 형식으로 Lua 안팎에 데이터를 전달합니다.

22

클로저 및 업밸류

B24개 레슨PRO

Lua 클로저를 깊이 이해합니다. 업밸류, 공유 업밸류, 팩토리 함수, 메모이제이션, 클로저 기반 상태 머신을 다룹니다.

23

반복자 패턴 및 제너레이터

B24개 레슨PRO

클로저, 코루틴, 제네릭 for 프로토콜을 사용해 Lua에서 사용자 지정 반복자와 상태 저장 제너레이터를 구축합니다.

24

게임 로직을 위한 Lua 스크립팅

B24개 레슨PRO

게임 개발에 Lua를 적용합니다. 이벤트 시스템, 컴포넌트 스크립팅, 인공지능 행동 트리, 데이터 기반 구성, 핫 리로드를 다룹니다.

25

busted를 활용한 Lua 단위 테스트

B24개 레슨PRO

Lua 코드를 위한 자동화 테스트를 작성하고 실행합니다.

26

코루틴 기반 비동기 패턴

B24개 레슨PRO

코루틴, 이벤트 루프, 프로미지에 해당하는 구성 요소, 논블로킹 입출력 패턴으로 async/await 스타일의 Lua 동시성을 구축합니다.

27

클래스 시스템 처음부터 구현하기

B24개 레슨PRO

상속, 믹스인, 인터페이스, 타입 검사, 직렬화를 포함한 프로덕션 수준의 OOP 클래스 시스템을 순수 Lua로 구축합니다.

28

플러그인 아키텍처 구축하기

B24개 레슨PRO

Lua에서 플러그인 시스템을 설계합니다. 확장 가능한 앱을 위한 검색, 로딩, 샌드박싱, 버전 관리, 훅, 수명 주기 관리를 다룹니다.

29

Lua 코드 디버깅 및 프로파일링

B24개 레슨PRO

Lua 디버깅 도구를 익힙니다. debug 라이브러리, 원격 디버거, 프로파일러, 코드 커버리지, 체계적인 문제 해결 기법을 다룹니다.

30

Redis 스크립팅을 위한 Lua

B24개 레슨PRO

효율적인 Redis Lua 스크립트를 작성합니다. EVAL, KEYS/ARGV, 트랜잭션, 원자적 연산, 속도 제한, Lua 라이브러리 도우미를 다룹니다.

31

LOVE를 활용한 Lua 게임 개발

B24개 레슨PRO

LÖVE 프레임워크와 Lua로 2D 게임을 만듭니다.

32

메모리 관리 및 약한 테이블

C14개 레슨PRO

효율적인 메모리 중심 애플리케이션을 위해 Lua의 가비지 컬렉터, 약한 참조, 약한 테이블, 종료 처리를 이해합니다.

33

C 애플리케이션에 Lua 임베드하기

C14개 레슨PRO

Lua C API를 학습합니다. 상태 생성, 값 푸시, C에서 Lua 호출, C 함수 등록, 스택 관리를 다룹니다.

34

LuaJIT 및 성능 최적화

C14개 레슨PRO

LuaJIT의 JIT 컴파일러, 최적화 기법, 프로파일링, 마이크로 벤치마킹을 사용해 Lua의 성능을 최대한 끌어냅니다.

35

FFI: Lua에서 C 라이브러리 호출하기

C14개 레슨PRO

LuaJIT의 FFI 라이브러리로 C 함수를 직접 호출하고, C 타입을 선언하고, 공유 라이브러리를 로드하고, 포인터를 안전하게 처리합니다.

36

Nginx에서 Lua 사용하기 (OpenResty)

C14개 레슨PRO

OpenResty로 고성능 웹 애플리케이션을 구축합니다. 요청 처리, 공유 메모리, 코소켓, Redis 연동, 캐싱을 다룹니다.

37

Lua 샌드박싱 및 보안

C14개 레슨PRO

안전한 Lua 샌드박스를 구현합니다. 제한된 환경, 샌드박스 탈출 방지, 안전한 require, 리소스 제한, 감사 로깅을 다룹니다.

38

Lua로 DSL 구축하기

C14개 레슨PRO

Lua에서 도메인 특화 언어를 설계하고 구현합니다. 메타테이블을 사용한 사용자 지정 구문, 파서 조합자, 인터프리터, 구성 DSL을 다룹니다.

39

LuaSocket을 활용한 Lua 네트워킹

C14개 레슨PRO

LuaSocket 라이브러리로 네트워크와 통신합니다.

40

Lua로 Neovim 플러그인 작성하기

C14개 레슨PRO

Neovim에 내장된 Lua API를 사용해 기능을 확장합니다.

자주 묻는 질문

자주 묻는 질문

Lua Academy 강의는 무료인가요?

네, Lua Academy 강의를 무료로 시작하고 인터랙티브 레슨을 모두 무료로 완료할 수 있습니다. 선택적 PRO 구독을 통해 고급 AI 도구와 공유 가능한 수료증을 잠금 해제할 수 있습니다.

LUA을(를) 배우기 위해 사전 경험이 필요한가요?

아니요. 강의는 기초부터 시작하여 점차 더 심화된 주제로 나아가므로 LUA 경험이 없어도 시작할 수 있습니다.

CoddyKit에서 LUA은(는) 어떻게 배우나요?

직접 해보면서 배웁니다. 짧은 인터랙티브 레슨은 명확한 설명과 실시간으로 실행되는 실습 코딩 연습을 함께 제공하며, 24시간 AI 튜터가 막힐 때마다 맞춤형 도움을 줍니다.

Lua Academy을(를) 완료하면 수료증을 받나요?

네, PRO 학습자는 시험을 응시하고 Lua Academy 강의의 검증 코드가 포함된 공유 가능한 수료증을 취득할 수 있습니다.

휴대폰에서 LUA을(를) 배울 수 있나요?

네, CoddyKit은 웹과 iOS, Android 네이티브 앱으로 이용 가능하므로 어느 기기에서나 LUA을(를) 배우고 진행 상황이 모든 기기에서 동기화됩니다.

Lua Academy을(를) 지금 시작하기

AI 기반 강의로 프로그래밍을 배우는 수천 명의 학습자들과 함께하세요.

무료로 시작하기 →모든 강의 보기