프로그래밍/Lua

1. 함수 루아에 함수는 다음과 같은 형식을 띄고 있습니다. function 함수 이름 (인자값) end 루아에는 자료형이 없기 때문에 인자 값에 자료형을 사용하지 않고, 또한 리턴의 경우에도 자료형이 없기 때문에 원할 경우에 리턴해주면 됩니다. 리턴의 경우에도 여러개의 값을 리턴할 수 있습니다. (예 : return numA , numB) [뭔가 코드가 괴랄하지만..배운걸 모두다 쓴다고 생각하자..] 2. 변수 범위 루아에서는 지역변수의 경우 앞에 local를 붙혀서 사용합니다. 또한 전역변수의 경우에는 함수 밖에서 선언하면 됩니다. 함수안에 또 다른 함수가 있는 경우 상위 지역변수는 사용할 수 있습니다.
루아에서도 다른 언어와 마찬가지로 조건문과 반복문이 존재합니다. 단, 루아에서 switch문은 없으며, continue 또한 존재하지 않습니다. 1. 조건문 (if , elseif , else) 루아에서 if문의 경우 꼭 조건식 끝에 then을 붙혀줘야 합니다. 또한 elseif의 경우에는 붙.혀.서 써야 합니다.. 2. 반복 문 (while 문과 repeat) while 문의 경우 조건식 끝에 do 를 붙혀줘야 합니다. 역시 마지막에는 end를 꼭 붙혀줘야 합니다. repeat 문의 경우 do , then 을 붙혀주지 않아도 되며, repeat -> 반복문 -> until(조건)식으로 작성하면, 됩니다. 3. 반복문 (for문) for문은 조건식 끝에 do를 붙혀주고 마지막에는 end를 붙혀줘야 합니다..
루아에서는 조금 특이한 연산자를 지원합니다. 기본적인 연산자는 다른 언어와 거의 동일하며 여기서는 몇가지 특이한것만 기술합니다. 1. 대입 연산자 (=) 기본적으로 number = 10;일 경우 10의 값이 입력 됩니다. 변수에 복수 대입도 가능합니다. numberA , numberB = 20 , 30; 2. 비교 연산자 기본적인 비교 연산은 == , != , ~= 와 같고 AND 와 OR의 경우에 C / C++의 경우 && , || 이지만 루아는 and 와 or로 사용이 가능합니다. 3. 기타 연산자 c++의 string 의 경우 + 연산자로 서로 합치는게 가능했는데요. 루아에서 문자열 조합의 경우 .. 로 가능합니다. 딱히 연산자에는 특이한 부분이 없네요..
루아에는 특별한 자료형이 없습니다. #LUA str = "문자열 입니다."; number = 100; boolValue = false; print(str); print(number); print(boolValue); #C++ string str = "문자열 입니다."; int number = 100; bool value = false; cout
전에 다니던 회사에서 스크립트를 사용하였는데, 사용한 언어가 lua였습니다. 그때 느꼈던 루아[Lua]의 장점으로는 컴파일을 하지 않고 바로 수정 , 수정 후 즉시 반영 , 밸런스 등의 패치시에 따로 클라이언트가 나가지 않아도 되고, 기획자가 별도의 프로잭트 코드를 수정하지 않고 따로 스크립트를 작성 및 수정으로 기획자의 의도를 즉시 반영하는등의 매력적인 언어였습니다. 지금에서 생각해보면 당시에는 QA 업무를 보며, 수정되거나 추가된 루아[Lua] 스크립트의 조건이나 예외처리등을 테스트하였는데, 이런 저런것들을 따져봐도, 언젠가 프로그래밍을 하거나 게임을 만들면 반복적이거나 잦은 유지 보수가 필요할 경우 꼭! Lua를 사용하자! 라는 생각이 있었고, 마침 시간이 되어 해당하는 기능들을 살펴보겠습니다. *..
QA Engineer  - P군
'프로그래밍/Lua' 카테고리의 글 목록