iOS/개념

[Swift] 변수(variable)와 상수(caontant) (+상수 사용 이유)

안경 쓴 귀니 2020. 11. 3. 00:19
반응형

 

Swift 변수(variable)와 상수(constant)

 

  • 변수 (variable)

변경 가능한 데이터(값)

키워드 var

var [변수명]: [데이터 타입] = [값]

데이터 타입은 생략이 가능하다. (타입추론) 단, 잘못 사용된 타입 추론은 오류가 발생했을 때 해결하기 어려울 수 있으므로 조심히 사용해야한다.

 

- 사용 방법1. 변수를 생성하며 값을 할당

var name: String = "이름"
var age: Int = 25
var height: Float = 170.5

age = 26  // 여러 번 값 지정 가능
age = 27  // 여러 번 값 지정 가능

 

- 사용 방법2.변수를 생성하고 나중에 값을 할당

var name: String 
var age: Int
var height: Float
name = "이름"
age = 25
height = 170.5
height = 171.0  // 여러 번 값 지정 가능
height = 171.6  // 여러 번 값 지정 가능

 

- 사용 방법3. 데이터 타입 생략 (타입 추론)

var name = "이름"
var age = 25
var height = 170.5
height = 170.8  // 여러 번 값 지정 가능

 

반응형

 

  • 상수 (constant)

한 번 지정하면 변경 불가능한 데이터(값)

키워드 let

let [상수명]: [데이터 타입] = [값]

데이터 타입은 생략이 가능하다 (타입추론)

 

- 사용 방법1. 상수를 생성하며 값을 할당

let name: String = "이름"

name = "이름2" // 해당 라인은 오류 발생. 상수는 값 지정 후 변경이 불가능

 

- 사용 방법2.상수를 생성하고 나중에 값을 할당

var name: String 
name = "이름"   // 상수는 한 번만 값 할당 가능
name = "이름2"  // 해당 라인은 오류 발생. 상수는 값 지정 후 변경이 불가능

 

- 사용 방법3. 데이터 타입 생략 (타입 추론)

 데이터 타입은 생략이 가능하다. (타입추론) 단, 잘못 사용된 타입 추론은 오류가 발생했을 때 해결하기 어려울 수 있으므로 조심히 사용해야한다.

let name = "이름"
name = "이름2"  // 해당 라인은 오류 발생. 상수는 값 지정 후 변경이 불가능

 

※ 상수를 사용하는 이유

상수로 선언한 값은 이후에 변경될 일이 없기 때문에 한 곳에서 값을 지정하고 확인하기가 편하며, 이 값은 변경되지 않을 것이라는 등의 주석 설명이 없어도 키워드만 보고 이후에 값이 변경되지 않을 것이라는 것을 알 수 있다.

예를 들어 앱의 모든 화면에 "Copyright 회사명" 텍스트를 넣는다고 할 때, 공통으로 사용하는 클래스에서 상수로 "Copyright 회사명"을 추가해두면 모든 화면에서 가져다 사용하기가 편하다(회사명 같은 경우는 거의 변경되는 일이 없기 때문에 상수로 사용). 만약 회사명이 바뀌는 경우, 클래스에서 상수 값만 변경하면 모든 화면에 적용되므로 간단하게 수정도 가능하다.

 

 

출처: <스위프트 프로그래밍 - 야곰>

반응형