3. Framework: weak linking
 
            3. Framework: weak linking          이번 포스트에서는 저번 포스트에 이어서 Framework의 weak linking에 대해서 알아보려고 합니다.  weak linking이란?  먼저, 상황을 먼저 설명드리겠습니다. 최신 OS가 출시되면서 새로운 기능이 추가되었습니다. 이 기능은 당연히 이전 버전OS에서는 없는 기능이기 때문에 동작할 수 없습니다. 이전 버전 OS와 최신OS를 지원하는 framework를 제작하는데 최신OS에서 동작하는 새로운 기능도 지원하고 싶을 때 문제가 발생합니다. 새로운 기능은 이전 버전 OS에서는 동작하지 않기 때문에 오류가 발생합니다. 이 문제를 해결하기 위해서 나온 해결책이 weak linking입니다. weak linking은 심볼이 framework에 존재하지 않으면 null로 변경하고 심볼이 존재하면 동작을 수행합니다. weak linking을 통해 이전 OS의 호환성을 유지하면서 새로운 OS에 기능 추가를 할 수 있는 유연성을 발휘할 수 있습니다.  weak linking이 어떻게 동작하는지 예제를 통해서 알아보겠습니다.  WeakFramework를 Objective-C용 framework로 생성한 후 WeakTest.h와 WeakTest.c파일을 아래와 같이 생성합니다.  // WeakTest.h 파일   #ifndef WeakTest_h  #define WeakTest_h   #include < stdio . h >   #endif /* WeakTest_h */      // WeakTest.c 파일   #include "WeakTest.h"   void WeakFunc ( void )  {      printf ( "Weak Func가 호출되었습니다.\n" ) ;  }   Sample App 프로젝트를 생성하고 ViewController.m파일에 아래와 같이 코드를 작성합니다.  # import  "ViewContr...
 
 
 
