1. 함수와 메서드의 차이
Method object.methodName() 오브젝트에 종속되어 수행
Function functionName() 기능을 독립적으로 수행
2. Function
- 함수의 표현식
func functionName(param: paramType) -> returnType {
//.........
return returnValue
}
- 함수의 이름을 지을때는 최대한 이코드가 무슨 동작을 하는지 유추할수 있도록 지어준다
- 함수는 어떤 기능을 수행하는 코드블럭입니다
- 함수는 파라미터를 받을수 있습니다
- 정수가아닌 소수점을 표현해야 할때에는 Typename을 Double 로 쓴다
- 함수에 함수자체를 파라미터로 줄수 있다.
- 함수의 여러 형태
func name () {
print(str)
}
name()
func printMultipleOfTen(value: Int) {
print("\(value) * 10 = \(value * 10)")
}
printMultipleOfTen(value: 10)
// param 2개
// 물건값과 갯수를 받아서 전체 금액을 출력하는 함수
func printTotalPrice(price: Int, count: Int) {
print("Total Price: \(price * count)")
}
printTotalPrice(price: 1500, count: 5)
func printTotalPrice2(_ price: Int, _ count: Int) { // _는 값만 넘겨줄때 사용. _ 자리에 한글로 넣어도 가능
print("Total Price: \(price * count)")
}
printTotalPrice2(1500, 5)
func printTotalPrice3(가격 price: Int, 갯수 count: Int) { // _는 값만 넘겨줄때 사용. _ 자리에 한글로 넣어도 가능
print("Total Price: \(price * count)")
}
printTotalPrice3(가격 : 1500,갯수 : 5)
func printTotalPriceWithDefaultValue(price: Int = 1500, count: Int) {
// price를 보면 기본값을 선언해준것을 볼수 있다(값을 넣지 않으면 반영되고, 넣으면 넣은값으로 실행이된다)
print("Total Price: \(price * count)")
}
printTotalPriceWithDefaultValue(count: 10)
func totalPrice( price: Int, count: Int) -> Int {
// 리턴키워드가 있을때 리턴되는 키워드의 타입까지 명시를 해주어야 한다 -> 처럼
let totalPrice = price * count
return totalPrice
}
let calculatedPrice = totalPrice(price: 10000, count: 77)
calculatedPrice
//--- In-out Parameter
var value = 3
func incrementAndPrint( _ value: inout Int) {
// Swift는 파라미터가 정해지면 값을 바꾸지 못하게 시스템적으로 막고 있다. 이파라미터를 상수가 아닌 변수로 활용하려면 inout을 써줘야한다
value += 1
print(value)
}
incrementAndPrint(&value) // 그리고 파라미터를 넣을때 & 써줘야 한다
-
함수가 인자로 들어가는 경우
// --- Function as a param
func add(_a:Int, _ b: Int) -> Int {
return a+b
}
func subtract(_a:Int, _ b: Int) -> Int {
return a-b
}
var function = add
function(4, 2)
func printResult( _ function: (Int, Int) -> Int, _ a:Int, _ b: Int) {
let result = function(a, b)
print(result)
}
printResult(add, 10, 5)
//함수는 될수있으면 한가지의 일만하는 것이 가장 중요하다.
//계속 고민을 하다보면 좋은 코드를 쓸수 있다
//함수를 짤때 10줄을 넘지 않게 짜도록 노력하자
3. 함수를 짤때 중요한 요소 3가지
- 함수는 될수있으면 한가지의 일만하는 것이 가장 좋다
- 함수는 계속 고민을 하다보면 좋은 코드를 쓸수 있다
- 함수를 짤때 10줄을 넘지 않게 짜도록 노력하자
'IOS > Swift' 카테고리의 다른 글
[TIL] Swift. Collection (0) | 2020.09.29 |
---|---|
[TIL] Swift. Optional (0) | 2020.09.24 |
[TIL] Swift. Flow Control (0) | 2020.09.22 |
[TIL] Swift 기초 정보 (0) | 2020.09.21 |
[TIL] Swift의 기본 언어적 특징 (0) | 2020.09.19 |