옵셔널 강의를 들으면서 코드를 쳐보니 자바보다 더 보수적인 언어로 보인다. 어쩌면 서버 개발에서도 강력한 언어이지 않을까? 이 부분에 대해서 알아보았다. 스위프트는 어째서 서버를 구현하는데에 사용되는 경우를 보기 힘든 것인가?
Swift의 설계 철학 중 하나는 안전성이다. 여기에는 옵셔널 처리뿐만 아니라 다음과 같은 특징들도 포함된다:
let
키워드를 사용하여 불변 상수를 선언할 수 있다. 이는 상태 관리를 간소화하고 버그를 줄이는 데 도움이 된다.for-in
루프를 사용하여 컬렉션의 요소를 안전하게 순회할 수 있다.throw
, try
, catch
구문을 사용하여 오류를 명시적으로 처리한다.그럼에도 불구하고 Swift가 서버 개발 영역에서 널리 사용되지 않는 이유는 몇 가지가 있다:
그러나 Apple은 Swift로 서버 개발을 할 수 있게끔 Swift Server Work Group을 만들어 지원하고 있다. Vapor, Kitura와 같은 Swift 서버 프레임워크도 있으므로, Swift로 서버 개발을 시작하는 것도 충분히 가능하다. Swift의 안전성과 표현성은 서버 개발에도 매우 유용하므로, 시간이 지남에 따라 Swift 서버 개발의 인기도 높아질 수 있다.
그렇다. 스위프트의 가장 치명적인 단점은 오로지 맥에서만 사용해야한다는 것이다. 아… 맥에서 xcode를 사용해야만 한다는 것 어쩌면 이게 제일 크지 않을까? 그냥 내 생각이다. 이런 제한을 극복하기 위해 크로스 플랫폼 개발을 하려는 시도가 있다고 한다. 대표적으로:
그러나 현재로서는 맥이 Swift 개발의 주요 플랫폼으로 남아 있으며, 많은 개발자와 회사들이 맥을 사용해야 하는 이유 중 하나이다. Apple이 Swift를 오픈소스로 제공함으로써, 다양한 플랫폼과 환경에서의 Swift 활용이 점점 늘어나고 있으나, 여전히 맥의 의존도는 높다.