본문 바로가기
프로그래밍 언어/Swift

Swift 언어란?

by zieunee 2018. 11. 25.
반응형

Swift 언어란?

Swift 는 애플이 출시한 새로운 프로그래밍 언어로 -> 코코아 터치와 코코아 앱 개발을 하기 위한 언어이다.


Swift 특징? 


안전성(Safe) 

엄격한 문법을 통해 실수 미연에 방지 -> 옵셔널, guard 구문, 강력한 타입 통제등 

신속성(Fast) 

미흡하지만 c언어 수준을 목표로 개발되었다. 성능 예측을 할 수 있고 유지할 수 있는 부분에 초점맞춰서 개발 되었다. 실행 속도의 최적화 뿐만이 아니라 컴파일러의 지속된 개량을 통해 더빠른 성능을 구현해 나가고 있다. 

더나은 표현성(Expressive)

사용하기 편하고 좋은 문법 구사하려는 노력을 함 - > 현대적이고 세련된 문법을 구현하고 계속된 업데이트를 함


구체척 특징?

1. 메모리 관리가 간단한다.

Memory Leak원인을 찾기 어렵기 때문에 디버깅에 많은 시간과 노력이 필요하다. 하지만 스위프트는 타입 지정이 필요 없고 ARC를 사용하기 때문에 메모리 관리를 위한 노력을 덜 수 있고 로직에 집중 할 수 있다. 

**ARC ? : 인스턴스가 더이상 필요 없을 때 클래스 인스턴스를 자동적으로 메모리에서 해제 해준다. 


2. 안전한 코딩 설계를 할 수 있다.

스위프트는 안전한 프로그래밍을 지향한다. 반면 현대언어는 유연성을 강조한 나머지 의도하지 않는 동작으로인해 디버깅이 어려운 경우가 많다 애플은 이것을 미연에 방지하고자 노력했고 변수는 반드시 사용되기전에 초기화를 하거나 , 배열의 오버플로우를 검사하는 등 문제가 발생할 여지가 있는 부분을 미리 체크하고 예외를 발생하는 함수나 메소드에 대해서 반강제적으로 처리하도록 하는 안전한 스위프트 구현을 하고 있다. 


3. 신속함

성능을 예측할 수 있고 일정한 수준으로 유지할 수 있음 

LLVM으로 컴파일 되어 실행 속도의 최적화 뿐만이 아니라 빠른 컴파일 성능을 구현해나가고 있다. 

**LLVM ? : 스위프트의 컴파일러 

4. 실행결과 바로 알 수 있는 playground 기능

playground기능으로 개발 적용하기전 검증할 수있다. 


5. objective-c와 같이 사용가능 


6. 스위프트 코드를 리눅스에서 작성하고 컴파일 할 수 있다.


===>결론:  진입장벽이 낮고 생산성과 성능이 높은 언어! 



반응형

'프로그래밍 언어 > Swift' 카테고리의 다른 글

swfit 실습 day02  (0) 2020.02.01
swift 기본 문법  (0) 2020.01.31
IOS Delegate 패턴  (0) 2018.11.25
swift 기본 문법  (0) 2018.11.19