정말 잡담임 , 나중에 다시 정리할생각.
요즘 objective -c 를 책을 읽고 있다.
그리 진도는 많이 안나가고 4장 까지 읽어봤는데.
몇몇 흥미로운점을 정리하자면
1.기본적으로 dynamic binding을 지원한다.
즉 return type을 신경쓰지 않고 프로그래밍을 할수 있다.
2.c언어와 일부 smalltak를 적용한 hybrid언어다.
즉 언어를 해석하는 compiler자체가 두언어를 지원한다.
(확장자 .c , .m 으로 구분)
3. objective-c는 oop형식의 프로그래밍을 지원하는데,
재미있는 점은 interface, implement를 구분해서 작성해야한다.
interface는 .h 의 확장자로 헤더파일을 의미하고
implement 즉 구현부는 .m의 확장자로 작성한다.
컴파일러의 컴파일 대상은 .m의 파일들인데, .h의 interface는 컴파일 대상에서 제외된다.
아마도 interface의 호환을 위해 저런 방식을 쓰는것이 아닌가한다.
(자바에서는 컴파일을 하더라도 외부 i/o 정보는 보여지기때문에 상관없지만
objective-c에서는 저런 i/o 정보의 표시를 저렇게 구현한듯한다. 심증;)
기본적인 상속과 메소드호출은 자바와 비슷하다.
NSobject라는 프레임워크라 부를지 언어라 부를지 미묘한 클래스를 상속하여
사용한다.
..아직은 이정도..
익숙해지려면 언어 이외에도 익힐게 많이 있어보인다.
요즘 objective -c 를 책을 읽고 있다.
그리 진도는 많이 안나가고 4장 까지 읽어봤는데.
몇몇 흥미로운점을 정리하자면
1.기본적으로 dynamic binding을 지원한다.
즉 return type을 신경쓰지 않고 프로그래밍을 할수 있다.
2.c언어와 일부 smalltak를 적용한 hybrid언어다.
즉 언어를 해석하는 compiler자체가 두언어를 지원한다.
(확장자 .c , .m 으로 구분)
3. objective-c는 oop형식의 프로그래밍을 지원하는데,
재미있는 점은 interface, implement를 구분해서 작성해야한다.
interface는 .h 의 확장자로 헤더파일을 의미하고
implement 즉 구현부는 .m의 확장자로 작성한다.
컴파일러의 컴파일 대상은 .m의 파일들인데, .h의 interface는 컴파일 대상에서 제외된다.
아마도 interface의 호환을 위해 저런 방식을 쓰는것이 아닌가한다.
(자바에서는 컴파일을 하더라도 외부 i/o 정보는 보여지기때문에 상관없지만
objective-c에서는 저런 i/o 정보의 표시를 저렇게 구현한듯한다. 심증;)
기본적인 상속과 메소드호출은 자바와 비슷하다.
NSobject라는 프레임워크라 부를지 언어라 부를지 미묘한 클래스를 상속하여
사용한다.
..아직은 이정도..
익숙해지려면 언어 이외에도 익힐게 많이 있어보인다.