반응형

반갑습니다 :) 에르의 생각공작소의 에르입니다.

이번 시간에 다뤄 볼 주제는 바로 " SWIFT "입니다.

 objective-c 언어의 특징도 가지고 있으면서,

스위프트만의 독자적인 장점도 가지고 있는

오브젝티브씨를 다루셨었던 개발자분들은 

왠  새 한마리가 툭 튀어나와서 이리 마을을 흔드냐..

라고 하시겠는데

처음에는 스위프트가 공개됬을 때는 많은 분들이

많은 분들이.. 스위프트하면 가장 먼저 떠올리실 것 같은...?

네.. 저도 인정합니다.  스위프트하면 " 테일러 스위프트 " 가 가장 먼저 떠오르죠.

뜬금없지만, 레전드 짤하나 퍼왔습니다.

자! 이제 각설하고 본론으로 돌아가보겟습니다. 


스위프트(Swift)는 애플 iOS OS X를 위한 프로그래밍 언어 

2014년 6월 2일 애플 세계 개발자 회의(WWDC)에서 처음 소개되었다. 

기존의 애플 운영체제용 언어인 오브젝티브-C와 함께 공존할 목적으로 만들어졌으며, 

오브젝티브-C와 마찬가지로 LLVM으로 빌드되고 같은 런타임을 공유한다.

 클로저, 다중 리턴 타입, 네임스페이스, 제네릭스, 타입 유추 등 오브젝티브-C에는 없었던 

현대 프로그래밍 언어가 갖고 있는 기능을 많이 포함시켰으며,

코드 내부에서 C나 오브젝티브-C 코드를 섞어서 프로그래밍하거나 스크립트 언어처럼 실시간으로 상호작용하며

 프로그래밍 할 수도 있다. 언어 설명서도 함께 배포되었다. 애플에서는 iBooks에서 Swift에 관한 책을 배포하고 있다.

링크 --> [ swift 언어 개발문서 한국어 번역판 ] 입니다. 

본격적으로 시작하기전에, 앱스토어에서 XCODE를 다운받아주세요.

XCODE가 없다면 Swift는 무용지물입니다.


XCODE를 실행시키시면 위와 같은 화면을 보실 겁니다.

여기서 ' Get started with a playground " 를 클릭해주세요.

playground란 xcode의 장점 중 하나로써 연습장입니다.

코드를 작성해보고 작성하는 즉시 중간중간에 자동으로 혹은 수동으로 실행하여,

결과를 즉시 확인할 수 있습니다.



이름은 아무렇게 편하신데로 적어주시고 플렛폼은 IOS를 선택해주시고 생성해주세요.


플레이그라운드 실행시켰을 때 제일 처음 보게될 화면입니다.

익숙한 hello world 란 문장이 보이네요.

그런데 맨앞 줄에 var 는 도대체 무엇일까요?



let 은 상수 값을 선언하기 위해 쓰입니다. invariable 값을 선언하기위해 사용되죠.

한번 그 값으로 초기화되면 변경 할수없습니다.

var 는 변수 값을 선언하기 위해 쓰입니다. variable 갑슬 선언하기위해 사용됩니다.

한번 선언된 값을 수정할 수 있습니다.

또한, 정석대로라면 let name:type = value가 되어야하는데 타입 선언 부분이 생략되어있습니다.

왜냐하면 스위프트의 자동 타입 추론 기능으로 인해 값을 입력하면 그 값을 자동으로 인식하여,

컴파일러가 해석한 타입으로 선언합니다.

고로, 정수값을 입력하면 그 개체의 타입은 자동추론을 통해 정수로 선언되는 것이며,

문자열을 입력했을 경우 개체의 타입은 자동 추론으로 인해 스트링으로 선언됩니다.


 let으로 maxnumber라는 개체를 생성하였고 저 개체의 값은 300이며, 코드를 수정하지않는 한 변경하지못합니다.

var 로 currentNumber라는 개채를 생성하였고 저 개체의 값은 123이며, 수정가능합니다.

currentNumber 값을 123에서 230으로 수정하였고 문제없이 변경되었습니다.

허나, maxNumber 값을 300에서 350으로 수정하고자 하였으나 에러가 발생했습니다.

이번에는 currentNumber와 pastNumber를 더해보도록 하겠습니다.

currentNumber + pastNumber 라는 코드를 실행했더니 에러가 납니다.

이유는 바로 타입이 서로 다르기 때문입니다.

pastNumber는 더블 값을 가지고 있으나 currentNumber는 정수값을 가지고 있습니다.

스위프트에서는 다른 타입의 값을 서로 연산시킬 수 없습니다.

둘 중 하나의 값을 같은 타입으로 재선언해주셔야합니다.

int 타입인 currentNumber 를 Double값으로 재선언하여 pastNumber 값과 덧셈을 시켜보니...

에러가 사라졌습니다.

값을 재선언하기위해서는 type(value) 문을 사용해주시면 됩니다.!

다음편은 string과 numbers 를 다뤄보도록하겠습니다.

윤성관님의 강의를 참고하엿습니다.




p.s 처음 스위프트가 공개되었을 때는 외면은 많이 받았었습니다.

옵젝씨가 드디어 빛을 발하려고하는 과정에서 스위프트가 공개되었기 때문입니다.

스위프트의 몰락을 점치는 사람들이 꽤 있었습니다.

허나 옵젝씨와 호환되며, 더 세련되고 현대화된 스위프트가 오픈 소스로 공개되며,

실 개발에 사용되고 시간이 지남으로서 영향력이 커져가고 있음은 사실이며,

애플 또한 공식홈페이지를 통해 스위프트 언어 사용을 장려하고 있습니다.

저같이 처음으로 프로그래밍을 공부하시는 분들은 스위프트가 의외로 적합하다고 봅니다.

다들 같이 힘내봅시다! :)






반응형
by 발전소장 에르 :) 2016. 4. 19. 08:27