스위프트 라는 언어를 익혀보고 있습니다.


맥프로가 생겨서, 맥os 에 대한 궁금증(?) 을 풀어보기 위해 시작했습니다.


사실 어플 만들어서 돈을 벌어 보고 싶...


음음..


1. 변수 선언 방법이 다르다.


변수와 상수 에 따라 var, let 으로 선언하며, 타입은 visual basic  같이 변수명 뒤에 선언 합니다.



var tempInt:Int
var tempString:String

세미콜론 안써도 됩니다


2. 제어문 , 반복문 사용시 괄호 를 않씁니다.


if a==b {
print("a==b")
}else{
print("a!=b")
}
for i in 1...10 {
print (i)
}
repeat{
num += 1
} while num < 10 

익숙하지 않아 아직도 자꾸 괄호를 써서 컴파일 오류가 나지만, 슬슬 익숙해지니 조건문이 눈에 잘띕니다.


3. 파이썬에 많이보던 컬렉션 타입들이 있습니다. ( Set, Dictionary , Tuple .. )


4. struct, class 둘다 사용가능합니다.


5. external parameter 라는 label 이 있습니다.

func testFunc(to p1:String, and p2:String){
print("\(p1) \(p2)")
}
testFunc(to:"Han", and:"Hwang")

함수호출시 좀더 명확해 진거 같습니다.

하지만, 레이블이 있어도 순서를 바꾸어 인수를 넘기거나, 레이블을 생략해도 컴파일 오류가 발생합니다.

(편한건지, 불편한건지 .. .)


6. 함수 참조 변수 선언이 가능합니다. ( c 스타일 )


7. inout 예약어로 call by reference 가능합니다. ( pointer 호출 )


아직은 공부한지 얼마되지 않아서 이정도 입니다.


c 언어적인 특성과, 함수언어의 특징(클로저), 그리고 파이썬을 적절히 잘(?) 섞은듯한 느낌입니다. 


슬슬 멀 만들지도 고민해 봐야겠네요~~

Posted by HanTJ 가능성1g