C++와 Objective-C의 차이점 #22: #include 말고도 #import 라는 directive가 있다. #import 를 쓰면 한번만 include 되도록 보장해 준단다. 훌륭하다. C++도 이렇게 만들어야 하는데. 된장!
C++와 Objective-C의 차이점 #21: method 정의 구문이 많이 다르네. (returnType)methodNameArg1:(arg1Type)arg1Name arg2:(arg2Type)arg2Name 이런식으로 한다.
C++와 Objective-C의 차이점 #19: class 정의가 interface 선언과 implementation 정의가 확연히 구분되어 있다. 게다가 정의 구문도 정말 많이 다르다
C++와 Objective-C의 차이점 #18: class variable이 없다. 그냥 전역 변수를 선언해야 한다. class member에 대한 access 조정은 못하겠네. 상속될 수도 없고. 뭐 근데 별로 그래야 하는 경우가 많을 것 같진 않다
C++와 Objective-C의 차이점 #17: multiple inheritance가 안되고, namespace 가 없다. 다중상속은 그렇다 쳐도 namespace가 없다는 건 쫌 그렇다. 대규모 S/W 개발할 때 문제가 될 것 같은데 말이다.
C++와 Objective-C의 차이점 #16: instance 생성 구문 —> id aClass = [[AClass alloc] init]; alloc 은 모든 class object가 구현해야하고, init 는 모든 instance 가 구현해야하고
C++와 Objective-C의 차이점 #15: 역시 예상대로 class metadata 가 장난이 아니군요. 클래스 및 상위클래스명, instance variable 들에 대한 description, method 명과 인자 & 리턴값, method 구현까지…
C++와 Objective-C의 차이점 #14: type 정보를 알아내는 게 언어차원에서 지원되지 않고, NSObject라는 root class의 여러 method 로 지원됩니다. isMemberOfClass: isKindOfClass: 등이 있습니다
C++와 Objective-C의 차이점 #13: 언어 차원에서 Abstract Class를 정의하는 방법은 없습니다. 소위 interface 또는 abstract class를 정의하는 키워드 같은 건 없고, 그냥 특정 클래스를 그런식으로 쓰면 되는 것 같습니다.
C++와 Objective-C의 차이점 #12: 기본적으로 dynamic binding이라는 건 subclass에서 method 를 override 하면 override한 method가 호출된다는 뜻이죠. C++ 용어로 말하자면 모든 method 가 virtual인 셈
C++와 Objective-C의 차이점 #11: root class로 NSObject가 있습니다. 이 클래스는 언어상의 Object는 아니고, Cocoa Framework 상의 Class 입니다.
Objective-C에 대해 이런것. 들.이 이미 있었구나. 항상 나는 뒷북을 치고 있는 거네. 쩝~
적절히 무시할 수 있는 센스: 무슨 인생의 엄청난 교훈 같기도 하고… 프로그래밍팁 같기도 한 중요한 원리. Multi-Core Programming 에서도 새겨둬야할 얘기겠네요.
선점형 RCU의 구현: 이 링크를 처음 발견한 기사. 여기 있는 다른 링크도 읽어봐야 겠어요.
The design of preemptible read-copy-update. 리눅스 2.6.X대 커널에 적용된 RCU 스킴에 대한 해설 기사. 상당히 오래전 기사구나. Multi-Core Programming 이 일반화되면 이런 방법이 Appl에도 쓰이겠지
iPhone Developer Program 에 등록하고 어떻게 하면 iPhone App을 짜 볼 수 있을까를 고민하다가 아내에게 Macbook 사면 안되냐고 얘기했다가 철없다는 소리만 들었다. ㅠ.ㅠ 나는 철없는 40대 인거다