왜 나누나
긴 풀이를 한 파일에 두면 찾기 어렵습니다.
Lua는 require로 모듈을 불러 테이블(함수 묶음)을 받을 수 있습니다.
기본 형태
-- mymod.lua 감각
local M = {}
function M.add(a, b)
return a + b
end
return M
local m = require("mymod")
print(m.add(1, 2))
환경·경로에 따라 모듈 이름이 달라질 수 있습니다. 이 사이트 연습장에서는 한 에디터 안에서 로컬 함수로 나누는 편이 더 단순합니다.
로컬 우선
local function helper(x)
return x * 2
end
문제 한 개 규모에서는 local function으로 충분합니다. require는 여러 파일·재사용 라이브러리 감각용으로 알아 두세요.
체크리스트
- 전역을 더럽히지 않고
local인가? - 모듈이
return하는가? - 연습장 한 파일로도 되는가? (되면 굳이 require 금지 아님·불필요)
연습
helper 로컬 함수 두 개로 문자열을 정리·숫자 변환하는 작은 스크립트를 짜 보세요.
한 줄
> 작은 문제는 local function. 모듈은 나눌 이유가 있을 때.
관련 문제로 바로 이어서 연습하면 읽기가 남습니다. 태그 링크를 활용하세요.
한 줄 더: 짧게 읽고, 바로 한 문제.
package.path 감각
실무에서는 모듈 검색 경로를 설정합니다.
브라우저 연습에서는 경로보다 함수 단위 분리가 우선입니다.
package.path 감각
실무에서는 모듈 검색 경로를 설정합니다.
브라우저 연습에서는 경로보다 함수 단위 분리가 우선입니다.
더 깊게
읽은 뒤 연습장에서 예제 코드를 한 번 타이핑해 보세요. 눈으로만 보면 하루 뒤 사라집니다.
관련 원리 카드와 문제 태그로 바로 이어서 풀면, 문법·패턴이 한 묶음으로 남습니다.
막히면 30분 규칙: 입력을 로그로 확인 → 기대/실제 한 줄 비교 → 그래도 안 되면 배우기 레슨으로 잠시 복귀.