함수
Written by Tejayon
함수
- 함수는 하나의 작업의 가장 작은 단위이자 하나의 작은 프로그램
- 프로그램 명령문의 묶음, 일련의 명령문들을 모아두고, 이를 외부에서 호출할 수 있게 한 구조
- 함수의 장점
- 프로그램 재사용으로 인한 절약 (메모리 공간, 코딩시간의 절약, 프로그램의 크기를 줄임)
- 가독성 증가 (세부 사항을 숨기면서 프로그램의 논리 구조를 강조함)
- 유지보수 및 확장성 용이, 문제 해결성 및 분할성 제고

-
함수의 정의와 호출
스위프트의 함수는 재정의(오버라이딩)와 중복정의(오버로딩)를 모두 지원한다. 따라서, 매개변수의 타입이 다르면 같은 이름의 함수를 여러개 만들 수 있고, 매개변수의 개수가 달라도 같은 이름의 함수를 만들 수 있다. 그렇기 때문에 코드 중간중간에 이름이 같은 함수를 구현해도 오류가 발생하지 않는다.
-
기본적인 함수의 정의와 호출
-
스위프트의 함수는 자유도가 높다. 기본적으로 함수의 이름과 매개변수(Parmameter), 반환타입(Return Type) 등을 사용하여 정의한다.
func 함수이름 (매개변수: 데이터 타입, ...) -> 반환타입 { //실행 구문 return 반환값 } func add (num1: Int, num2: Int) -> Int { return num1 + num2 }
-
-
함수와 메서드
함수와 메서드는 기본적으로 같다. 다만 상황이나 위치에 따라 구분이 된다. 구조체, 클래스, 열거형 등 특정 타입에 연관되어 사용하는 함수를 메서드라 하고, 모듈 전체에서 전역적으로 사용할 수 있는 함수를 그냥 함수라고 한다.