모바일 앱 개발/ios

[swift 기초] -1

도툐리 2023. 7. 7. 00:35

:: 명명법 / 콘솔로그 / 문자열 보간법 ::

 

1. 명명법

  • Lower Camel Case : fuction, method, variable, constant

ex.) someVariableName

  • Upper Camel Case : type(class, struct, enum, extension…)

ex.) Person, Point, Week

* Swift는 모든 대소문자를 구분합니다.

 

 

2. 콘솔로그 남기기

  • print 함수 : 단순 문자열 출력
  • dump 함수 : 인스턴스의 자세한 설명(description 프로퍼티)까지 출력

 

 

3. 문자열 보간법 (String Interpolation)

  • 프로그램 실행 중 문자열 내에 변수 또는 상수의 실질적인 값을 표현하기 위해 사용.
  • \()

 

 

:: 상수와 변수 ::

1. 상수와 변수 선언

  • let : 상수 선언 키워드
  • var : 변수 선언 키워드 
// 상수와 변수 선언
let 상수이름: 타입 = 값
var 변수이름: 타입 = 값

// 값의 타입이 명확하다면 타입 생략 가능
let 상수이름 = 값
var 변수이름 = 값

// 상수와 변수 활용
let constant: String = "차후에 변경이 불가능한 상수 let"
var variable: String = "차후에 변경이 가능한 변수 var"

variable = "변수는 이렇게 차후에 다른 값을 할당할 수 있지만"
// constant = "상수는 차후에 값을 변경할 수 없습니다" // 오류발생

 

2. 상수 선언 후, 값 할당하기

  • 선언을 한 뒤, 나중에 값을 할당하려는 상수나 변수는 반드시 타입을 명시해야 합니다. 
let sum: Int
let inputA: Int = 100
let inputB: Int = 200

// 선언 후 첫 할당
sum = inputA + inputB

// sum = 1 // 그 이후에는 다시 값을 바꿀 수 없습니다, 오류발생

// 변수도 물론 차후에 할당하는 것이 가능합니다
var nickName: String

nickName = "yagom"

// 변수는 차후에 다시 다른 값을 할당해도 문제가 없지요
nickName = "야곰"

 

3. 생각해보기

다음과 같은 경우에 각 값은 상수와 변수 중 어느 것으로 선언하는 것이 더 좋을지 생각해 봅시다.

OOO name = "yagom"
OOO numberToAdd = 5
OOO pi = 3.14159
OOO maxItemCount = 1000

 

 

 

:: 기본 데이터 타입 ::

 1. Swift의 기본 데이터 타입

  • Bool
  • Int, UInt
  • Float, Double
  • Character, String

 

2. Bool

  • true false만을 값으로 가지는 타입
var someBool: Bool = true
someBool = false
// someBool = 0 // 컴파일 오류발생
// someBool = 1 // 컴파일 오류발생

 

3. Int, UInt

  • Int : 정수 타입. 현재는 기본적으로 64비트 정수형
  • UInt : 양의 정수 타입. 현재는 기본적으로 64비트 양의 정수형.
// Int
var someInt: Int = -100
// someInt = 100.1 // 컴파일 오류발생

//UInt
var someUInt: UInt = 100
// someUInt = -100 // 컴파일 오류발생
// someUInt = someInt // 컴파일 오류발생

 

4. Float, Double

  • Float : 실수 타입. 32비트 부동소수형.
  • Double : 실수 타입. 64비트 부동소수형.
// Float
var someFloat: Float = 3.14
someFloat = 3

// Double
var someDouble: Double = 3.14
someDouble = 3
// someDouble = someFloat // 컴파일 오류발생

 

5. Character, String

  • Character : 문자 타입. 유니코드 사용. 큰따옴표("") 사용.
  • String : 문자열 타입. 유니코드 사용. 큰따옴표("") 사용.
// Character
var someCharacter: Character = "🇰🇷"
someCharacter = "😄"
someCharacter = "가"
someCharacter = "A"
// someCharacter = "하하하" // 컴파일 오류발생
print(someCharacter)

// String
var someString: String = "하하하 😄 "
someString = someString + "웃으면 복이와요"
print(someString)

// someString = someCharacter // 컴파일 오류발생

 

6. 생각해보기

다음 코드에서 integer, floatingPoint, apple 상수는 각각 어떤 타입이 될까요? 생각해보고 확인해보세요~!

let integer = 100
let floatingPoint = 12.34
let apple = "A"

* 힌트 : type(of: )