본문 바로가기

2학년 2학기/ios프로그래밍

swift 와 objective-c 의 차이


 

 swift

 objective-c

 확장자

 .swift .m

 동적타입

 AnyObject

 id

 코딩타입

 .swift , .h

 .m , .h ,  main.m

 do while

 repeat while

 do while

 #import

 import

 #import

 자료형

 Int , 첫자리가 대문자

 (int) , 괄호를 붙임

 상수

 let const

 변수 선언

 var x:Int = 1 또는 var x = 1

 (int) x = 1;

 배열

 var arr = ["1", "2", "3"]

 NSArray *arr = [[NSArray alloc] initWithObjects:@"1",@"2",@"3",nil];

 NSArray *arr = @[@"1",@"2",@"3"];

 튜플

  

 함수 선언 int DDD(int x) { return(x*2);}

 func DDD(x : Int) -> Int { return(x*2) }

 -(int) DDD : (int) x { return(x*2);} // 매개변수 1개

 -(int) DDD // 없는경우

 -(int) DDD : (int) x second : (int) y // 여러개

 매개변수 구분

 ,

 :

 매개변수 자료형

 x:Int

 (int) x

 

  

 객체(인스턴스) 메서드 접근

 obj.fun()

 [obj fun];

 

 obj.fun(2, second : 5)

 [obj fun:2 second:5];
 클래스 선언

 class MyClass { }

 @interface MyClass:NSObject  @end

 // 클래스의 인터페이스 선언

 @implementation MyClass  @end

 // 클래스 정의(구현?) 클래스 이름만 씀

 프로퍼티 (인스턴스 변수)

 var x:Int?

 {

     int x;

    double y;

 }

 객체 선언

 var my = MyClass()

MyClass *myObj = [[MyClass alloc]init];

 Optional

 O ( ? , ! ) X



해당 글의 swift 버전은 2.0입니다.


Objective-C

NSObjcet 는 Foundation/Foundation.h 에 있다.