03. 프로퍼티와 출력, 함수
1) 할당 연산자
- A = B
- B값을 A에 할당한다
- 우변에 있는 값을 좌변의 변수에 할당한다는 의미
var color = "purple"
print(color) //출력: purple
//변수 여러개를 한 번에 선언하고 값을 할당
var a = 1, b = 2, c = 3
2) 저장 프로퍼티
- let
- 변경할 수 없는 상수(Constant) 선언 - var
- 변경할 수 있는 변수(Variable) 선언
3) 연산 프로퍼티
- var(let은 불가능)
- 연산 프로퍼티는 그때그때 계산한 값을 알려주기 때문에 변수를 나타내는 var을 사용
- 매번 계산하기 때문에 값을 저장하지 않는다
var x = 10
var y = 20
var z = 0
// 아래 코드에서 sum이 연산 프로퍼티이다.
var sum: Int{
get{
return x + y
}
set {
z = x + y
}
}
- set은 값을 넣어주는 것
- set 은 sum의 값을 넣어주는 것이 아닌, 위 코드에서 z를 30으로 만드는 것 - get은 값을 불러오는 것
- 일반적으로 get만 필요한 경우가 많음
- get은 아래와 같이 생략 후 return 만 넣을 수 있다
var sum1: Int{
return x + y
}
- 만약 중괄호 내부에 코드가 한 줄만 있다면 아래와 같이 return도 생략이 가능하다
- 두 줄 이상인 경우 생략이 불가하다
4) print()
print("Hello World") //출력: Hello world
5) 한 줄 텍스트(String 타입)
var greeting = "Hello World"
- "Hello World" 라는 String 값이 greeting 안에 들어있다
6) 멀티라인 텍스트
var greeting = """
Hello
World
"""
- """내용""" 을 사용하여 표현하다
7) 문자 보간법
- String Interpolation
- \() 를 사용하여 표현한다
- 변수 또는 상수 등의 값을 문자열 내에 나타내고 싶을 때 사용
let name = "솔비"
var greeting = "Hello \(name)" //출력: Hello 솔비
let height = 164
let myInfo = "My height is \(height)" //출력: My height is 164
8) 한 줄 주석 / 멀티라인 주석
//한 줄 주석
/*
여러줄
주석
입니다
*/
9) 함수 기본 형태
- 기능의 수행
- 함수는 특정 작업이나 기능을 수행하는 코드의 블록이다
- 이 코드 블록은 호출될 때 실행되며, 함수 내 정의된 코드들이 순차적으로 실행된다 - 재사용성
- 함수는 코드를 모듈화하고, 같은 기능을 반복하여 사용할 수 있도록 한다
- 이는 코드의 중복을 피하고 유지보수를 용이하게 만든다 - 매개변수(Parameter)
- 함수는 입력값을 받을 수 있다
- 이러한 입력값은 함수의 매개변수에 의해 받아 들여진다
- 이 매개변수들은 함수 내부에서 사용되어 특정한 작업을 수행하는데 활용된다 - 반환값(Return Value)
- 함수는 어떤 값을 반환할 수도 있다
- 반환값은 함수가 실행되고 작업이 완료된 후에 호출 지점으로 반환한다 - 함수 타입
- Swift 에서는 함수도 하나의 타입으로 취급될 수 있다
- 이는 함수를 다른 함수의 매개변수로 전달하거나 함수를 다른 함수의 반환값으로 사용할 수 있음을 의미한다
- 이를 통해 함수를 동적으로 조작하고 조합할 수 있다
10) 메서드와 함수의 차이
- 함수(Function)와 메서드(Method)는 유사한 기능을 수행하지만, 그들 간에는 몇 가지 중요한 차이가 있다
- 정의와 소속성
- 함수는 독립적으로 정의됨
* 특정한 객체나 타입에 속해있지 않다
* 일반적으로 전역 범위에서 정의되거나 특정 범위 내 내장된다
- 메서드는 클래스, 구조체, 열거형 등의 특정한 타입에 속해있다
* 객체 지향 프로그래밍에서 해당 객체의 특정한 기능을 수행하기 위해 사용된다 - 호출 방식
'🍎 Swift > iOS 학습 노트' 카테고리의 다른 글
[Snapkit] offset & inset (1) | 2024.07.01 |
---|---|
[Swift 🍎] Snapkit 활용하기 (3) | 2024.06.30 |
[강의노트] 코드베이스 파일 만들기 (0) | 2024.06.30 |
메서드(메소드) - 조금 더 찾아보고 이해하기! (1) | 2024.04.26 |
IDE / 코딩 컨벤션 (1) | 2024.04.25 |