티스토리 뷰

IOS 앱을 개발하기 위해서는 swift 라는 언어를 알아야 합니다. 

우선 개발하기에 앞서, swift라는 언어의 역사나 특징에 대해서 공부하려고 합니다. 

안드로이드, 서버 등 여러가지 언어로 개발을 해보니 언어의 특성을 알아야 좀더 잘 개발할 수 있습니다. 

다른 코드를 봐도 왜 이렇게 짜는 것인지에 대해 이해하기도 쉽습니다.


swift 언어 특성을 설명하기 앞서, object-c와 swift 중 swift로 개발하려는 이유에 대해서 설명드리려고 합니다. 저는 여태까지 안드로이드 개발을 하면서  java와 kolin을 사용하였습니다. swift가 직관적이고 object-c에 비해 학습하는 시간이 덜 걸린다고 판단했습니다.


ios 공부를 시작하시는 분들도 object-c와 swift 두 언어에 대해서 모두 간략하게 보고 어떤 것을 공부해서 개발하는게 좋을지 각자 생각해보는 시간을 가져보시길 바라겠습니다.


Swift란, macOS, iOS, watchOS, tvOS를 위한 강력하고 직관적인 프로그래밍 언어이자, 손쉽에 학습할 수 있는 강력한 프로그래밍 언어입니다.


특징

1) 빠른 성능

Swift 코드는 뛰어난 고성능 LLVM 컴파일러를 사용하여 최신 하드웨어를 최대한 활용할 수 있도록 최적화된 기본 코드로 변환됩니다. 

cf ) LLVM 컴파일러는 언어와 구조로부터 독립적이며, 언어 모듈과 시스템을 위한 코드 생성 부의 사이에 위치해 가상 기계를 생성, 가상 기계가 언어에 독립적인 최적화를 실행하는 역할을 합니다. 이부분은 따로 정리하려고 합니다.


2) 안전 중신의 설계

Swift는 불안전한 코드의 전체 클래스를 제거합니다. 변수는 사용 전에 항상 초기화되고, 배열 및 정수에 대한 오버플로우를 검사하며, 메모리는 자동으로 관리됩니다. 구문은 사용자의 의도를 쉽게 정의할 수 있도록 조정됩니다. 

이말은 swift의 객체가 nil이 될수없게 하기 때문에 충돌을 방지할 수 있습니다. 이부분의 설명이 어려울 수 있습니다. 


3) Objective-C 상호 운용성

동일한 프로젝트에서 기존 Objective-C 파일과 함께 Swift 코드가 공존하며, Objective-C API에 대한 완전한 접근 권한이 제공되므로 적용이 용이합니다.


4) 버전 간의 호환성

Swift 5를 사용하면 새로운 버전의 컴파일러를 사용하기 위해 Swift 4 코드를 수정할 필요가 없습니다. 새로운 컴파일러를 사용하여 한 번에 한 모듈씩 새로운 Swift 5 기능을 활용하여 자신만의 속도로 마이그레이션할 수 있습니다.


읽어주셔서 감사합니다. 


댓글