0. Swift란 무엇이냐?

문인범·2023년 10월 3일

Swift

목록 보기
1/9

iOS를 공부하려면 제일 기초적인 언어에 대해 잘 아는 것이 중요하지 않을까 싶어 애플에서 사용중인 Swift에 대해 바닥부터 공부를 시작할 생각이다.
저와 같이 열심히 공부해봅시다!👼

그래서 Swift가 뭔데?


정의



Apple Developer 공식 홈페이지의 소개글을 보면
라고 한다.

기존에 애플에서는 Objective-C 라는 언어를 사용해 왔다고 한다. iOS 앱을 만들다 보면 그 흔적들을 볼 수 있는데 난 사용해 본 적이 없어 모르지만 오래된 언어고 진입장벽이 상당한 언어라고 많이 들었다.
그래서 애플에서는 이러한 진입장벽을 낮추어 애플 생태계를 확장하고자 Swift라는 언어를 새로 만들었다고 생각한다.

이름과 사진에서만 봐도 Swift라는 언어 자체가 뭔가 멋있기도 하고 상당히 날렵해 보인다.
그 이름에 걸맞게 Swift의 특징은

Safe, Fast, Expressive

이 3개로 정의 된다고 한다.



이에 더불어 애플에서 낸 The Swift Programming Language 를 보면 영어 울렁증이 있기 때문에 대충 내용만 보면 '우리 언어 빠르고 안전하고 많이 좋다, 새로 배우는 프로그래머에게도 쉽게 배울 수 있다~'는 것을 알려주는 것으로 보인다.

그 중에서 중간 핵심 문단을 보면

  • 변수는 항상 사용 전에 초기화 되어야 한다.
  • 배열 인덱스는 out-of-bounds 에러 체크가 되어야 한다.
  • 정수는 오버플로우 체크가 되어야 한다.
  • 옵셔널은 nil의 처리를 보장한다.
  • 메모리는 자동으로 관리된다.
  • 에러 처리를 통해 예상치 않은 에러를 해결할 수 있다.

현대 프로그래밍 언어들의 패턴을 채택한 것을 알 수 있다.

이와 하나 더

객체지향 프로그래밍(OOP)

Swift는 객체지향 프로그래밍 언어이다.
현대 프로그래밍 언어에서는 많은 언어가 채택하고 있다고 알고 있다.
우리가 알고있는 Java, C++ 등등 현재 많이 쓰이는 다양한 언어들이 객체지향 언어이다.

객체지향 언어는 크게 4가지 특징을 가지고 있는데

  • 추상화(Abstraction)
  • 캡슐화(Encapsulation)
  • 다형성(Polymorphism)
  • 상속(Inheritance)

간단하게 기존에 쓰이던 절차지향적인 프로세스(위에서부터 차례대로 실행되는)에서 벗어나 하나하나 객체에서 시작이 되는 프로그래밍 방법이다.
이것을 담기엔 내용이 너무 길어지므로 나중에 자세히 적어보기로 한다.



그래서 어디에 쓰이는데?

iOS, macOS, iPadOS, tvOS, watchOS 등 애플에서 쓰이는 거의 모든 기기들의 프로그램을 만들수 있다.
Swift를 배우면 이 모든 것에 프로그램을 만들 수 있다는 것이다!

저와 같이 Swift를 뿌수며 월드 클래스 개발자가 되어 봅시다!
가능하다면...?

profile
월클 개발자를 향한 도전일지

0개의 댓글