함수란 무엇인가요?
함수는 특정 작업을 하나의 블록으로 묶어서, 필요할 때마다 반복해서 사용할 수 있는 코드입니다. 함수는 코드를 재사용 가능하게 만들어 주며, 코드의 가독성을 높이고 유지보수 또한 용이하게 만듭니다. BoxLang에서도 함수를 정의하고 호출하는 방법을 통해 효율적인 코드 작성이 가능합니다. 이번 강의에서는 BoxLang에서 함수를 정의하는 방법과 호출하는 방법을 배워보겠습니다.
함수 정의하기
BoxLang에서 함수는 func
키워드를 사용하여 정의합니다. 함수는 이름과 매개변수, 그리고 반환값을 가질 수 있습니다. 기본적인 함수 정의 방법은 다음과 같습니다.
func sayHello() {
print("Hello, BoxLang!")
}
위의 예제는 매개변수 없이 "Hello, BoxLang!"을 출력하는 간단한 함수입니다. sayHello 함수는 호출되었을 때 해당 메시지를 출력합니다.
함수 호출하기
정의된 함수는 함수 이름과 괄호를 사용하여 호출할 수 있습니다. 위에서 정의한 sayHello 함수는 다음과 같이 호출됩니다.
sayHello() // "Hello, BoxLang!"이 출력됩니다.
함수를 호출하면 그 안에 정의된 코드가 실행됩니다. 함수는 코드의 재사용성을 높여주기 때문에, 같은 작업을 여러 번 반복해야 할 때 매우 유용합니다.
매개변수와 반환값 사용하기
함수는 매개변수를 사용하여 외부로부터 값을 받아서 작업을 수행할 수 있습니다. 또한, 결과값을 반환(return)하여 다른 코드에서 사용할 수 있습니다.
매개변수 사용하기
함수는 매개변수를 통해 값을 받을 수 있습니다. 매개변수는 함수 정의 시 괄호 안에 작성합니다.
func greet(name: String) {
print("안녕하세요, " & name & "님!")
}
위 예제는 사용자의 이름을 매개변수로 받아 인사 메시지를 출력하는 함수입니다. 이 함수는 다음과 같이 호출됩니다.
greet("홍길동") // "안녕하세요, 홍길동님!" 출력
이렇게 함수를 사용하면 다양한 입력에 대해 동적으로 반응할 수 있습니다.
반환값 사용하기
함수는 작업을 수행한 후, 반환값을 돌려줄 수 있습니다. 반환값은 함수 정의 시 return
키워드를 사용하여 반환합니다.
func add(a: Int, b: Int) -> Int {
return a + b
}
위 예제는 두 숫자를 더한 결과를 반환하는 함수입니다. 반환값이 있는 함수는 아래와 같이 호출하고 결과를 저장할 수 있습니다.
var result = add(3, 5) // result는 8이 됩니다.
위 예제에서 add 함수는 두 개의 정수를 더한 값을 반환합니다. 이렇게 반환값을 이용하면 계산된 값을 다른 변수에 저장하여 사용할 수 있습니다.
기본값을 가진 매개변수
BoxLang에서는 매개변수에 기본값을 설정할 수 있습니다. 매개변수에 기본값을 설정하면, 함수 호출 시 해당 값을 생략할 수 있습니다.
func greet(name: String = "손님") {
print("안녕하세요, " & name & "님!")
}
위 예제에서 name 매개변수는 기본값으로 "손님"을 가지며, 함수 호출 시 이를 생략할 수 있습니다.
greet() // "안녕하세요, 손님님!" 출력
greet("김철수") // "안녕하세요, 김철수님!" 출력
이와 같이 기본값을 설정하면, 매개변수 값이 생략되었을 때 기본값이 자동으로 사용됩니다.
다양한 리턴값과 여러 개의 매개변수
함수는 하나 이상의 값을 반환할 수도 있습니다. BoxLang에서는 여러 개의 값을 반환할 수 있도록 튜플을 사용할 수 있습니다.
func getDimensions() -> (width: Int, height: Int) {
return (width: 100, height: 200)
}
위 예제는 너비와 높이를 반환하는 함수입니다. 튜플을 이용하면 여러 개의 값을 한 번에 반환할 수 있습니다.
var dimensions = getDimensions()
print(dimensions.width) // 100 출력
print(dimensions.height) // 200 출력
이와 같이 튜플을 사용하여 여러 값을 반환하고, 각 값을 별도로 사용할 수 있습니다.
함수의 중요성 – 코드 재사용성과 모듈화
함수를 사용하면 코드를 반복해서 작성하지 않아도 됩니다. 함수는 코드의 재사용성을 높여주고, 코드의 유지보수를 쉽게 만들어줍니다. 또한, 함수를 사용하여 모듈화된 코드를 작성할 수 있기 때문에, 프로젝트가 커지더라도 코드 관리가 용이해집니다.
- 가독성: 함수를 사용하면 코드가 더 읽기 쉽게 구성됩니다.
- 재사용성: 한 번 작성한 함수는 여러 곳에서 재사용할 수 있습니다.
- 유지보수: 함수가 모듈화되어 있어, 변경이 필요할 때 함수만 수정하면 됩니다.
마무리 및 다음 강의 예고
이번 강의에서는 BoxLang에서 함수를 정의하고 호출하는 방법을 학습했습니다. 함수를 통해 반복적인 코드 작성을 피하고, 효율적이고 유지보수가 쉬운 프로그램을 작성할 수 있습니다.
다음 강의에서는 함수의 고급 개념과 재귀 함수에 대해 다룰 예정입니다. 함수의 응용을 배우고, 더욱 복잡한 문제를 해결하는 방법을 익히게 될 것입니다. 기대해 주세요!