본문 바로가기

학습 노트/Swift (2021)

001 ~ 008. 기본 용어, 특수문자

Swift Project 생성 시 주의사항

  1. 숫자로 시작 불가능
  2. 한글 사용 불가능
  3. 공백 사용 불가능
    경로 문제 발생함
    필요시 '_' underscore 사용
  4. 일반명사 사용 지양
    변수명 충돌, 스토어 등록 불가 가능성 있음
    필요시 'my'나 회사 이름을 접두, 접미로 사용하여 해결

 

용어 설명

  • token
    1 + 2;
    위는 4개의 token으로 구성됨

    문법적으로 가장 작은 단위.
    token 사이에 공백을 추가하는 것이 가능하다.

  • space (공백)
    token을 구분짓는 역할.
    tab, 줄 바꿈, space 모두 포함
  •  
  • expression (표현식)
    실행했을 때 하나의 결과가 나오는(평가 되는)

  • statement (문장)
    expression이 모여 특정 작업을 수행하는 경우
  • litteral
    let x = 7
    let x = 5 + 7
    let x2 = x > 7
    위의 코드에서 5와 7들이 litteral이다.

    값을 대표하는 형식.
  • identifier (이름)
    //⭕️
    let x = 7
    let number = 7
    let Number = 7
    let _Number = 7
    
    //❌
    let 0number = 7
    대문자, 소문자, 언더스코어로 시작 가능.
    숫자로 시작 불가능.
    대문자, 소문자, 언더스코어 중 두가지 이상을 조합해 사용 권장.
  • keyword (예약어)
    //⭕️
    let x = 7
    var x = 7
    
    //❌
    let let = 7
    위 코드에서 'let'과 'var'가 예약어에 해당한다.

    예약어는 이름으로 사용 할 수 없다.
  • code
    사람이 이해할 수 있는 text
    컴퓨터는 이해할 수 없음
    따라서 0과 1의 binary code로 변환
    이를 compile이라 하며, compiler가 담당

        Xcode에선 경고⚠️와 오류🛑를 표시해 문법적 오류를 표시
        경고⚠️는 반드시는 아니지만 되도록 수정하도록 해야함

  • link, linker
    여러 프레임웍, 코드를 엮어주는 것을 link 라고 하고, linker가 담당

        compile + link + @ = build

  • debug mode
    실행파일의 크기 증가
    debug 용이성 증가

  • release mode
    실행파일의 크기 감소
    실행속도 증가

 

특수문자

!

Exclamation Mark
논리 부정
optional에서 저장된 값을 강제로 꺼내는 경우

~

Tilde (물결)
비트연산에서 사용

`

Grave Accent, Backtick
keyword를 identifier로 바꿀 때

@

At Symbol
코드 자체의 특성을 지정하는 데 사용

#

Sharp, Pound, Hashtag
swift의 특별한 명령들이 #으로 시작함

$

Dollar sign
클로저에서 파라미터 이름을 대체 할 때 사용

%

Percent sign
나머지 연산

^

Caret
비트연산에서 사용

&

Ampersand
메모리 주소를 얻거나 참조 사용

*

Asterisk
곱연산자

( )

Parenthese (괄호)
함수 호출, 계산 순서 지정

-

Minus sign

_

Under score
와일드카드 패턴 구현

=

Equal sign
변수, 상수를 저장, 연달아 쓰면 두 값을 비교

+

Plus sign

[ ]

Square bracket
컬렉션에 저장 된 값에 접근하는 경우 (서브스크립트)

{ }

Curlybracket, Brace
코드블록에 범위를 지정하는 경우

\

Back slash
string interfallation 문법에서 사용
keypress 표현식에서 사용

|

Vertical bar, Pipe
논리연산, 비트연산

;

Semicolon
함수나 배열에 전달하는 값을 나열하는 경우

:

Colon
자료형 지정
dictionary에서 key와 value를 구분하는 경우

,

Comma
함수나 배열에 전달하는 값을 나열하는 경우

.

Period
method 호출
속성에 접근

< >

Angle bracket
크기 비교
generic에서는 형식 파라미터 지정

/

Slash
경로 지정

?

Question mark
optional에서 사용

 

First-Class Citizen

  • 상수와 변수에 저장할 수 있다.
  • 파라미터로 전달 가능하다.
  • 함수에서 Return 가능하다.