글 수 7
2011.04.07 18:02:30 (*.36.150.248)
14495
이전에 작성하고 실행했었던 Hello World를 조금 더 디테일하게 알아보도록 하겠습니다.
이미 C 언어를 해 보신 분들이라면 굳이 설명이 필요 없을수 있는 부분입니다.
개인적으로는 프로그래밍을 수학의 공식이라고 생각합니다.
공식에 다른 공식을 추가하고, 대입하여서 결론을 얻는것과 마찬가지로 기본 틀에서 다른 기본공식을 대입해서 더 복잡한 계산을 가능하게 하는것으로 이해 하시면 쉬울듯합니다.
자 그럼 Objective C 언어의 기본 공식을 보도록 하겠습니다.
#import <Foundation/Foundation.h>
int main(int argc, char argv){
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
NSLog(@"Hello World!");
[pool drain];
return 0;
}
#import <Foundation/Foundation.h>
C 언어에서는 #include <stdio.h>와 같은 기능을 하는곳입니다.
main() 함수는 설명이 굳이 필요 없겠지만, 프로그래밍을 처음 접하시는 분들을 위해서 간단히 설명하자면,
프로그램에는 반듯이 하나의 main() 함수가 존재하게 됩니다.
NSAutoreleasePool *pool = [[NSAutoreleasePool alloc] init];
이 부분은 해당 프로그램을 위해서 메모리를 할당하는 것입니다.
이 후에 많이 접하게 될 공식중에 하나입니다.
여기에는 많은 것이 포함되어 있습니다만 자세한 것은 추후에 다시설명하도록 하겠습니다.
NSLog(@"");
위 라인은 C 언어의 printf() 함수와 비슷합니다.
차이점은 @ 이가 들어간다는 것입니다. 이것이 없으면 에러가 납니다.
[pool drain];
해당 라인은 위에서 지정한 NSAutoreleasePool 에서 생성한 메모리 pool 을 소거해 주는 작업입니다.
자세한 내용은 메모리 관리에서 다시 설명이 될것입니다. (왜냐면 저도 아직은 디테일하게는 모르기 때문입니다. ^^;)
return 0;
프로그램 종료를 알리는 0을 OS에 반환 시킵니다.
지금 까지가 기본 공식인 Hello World! 에 대해서 설명했습니다.
이후에 이 공식은 계속 해서 사용이 될것입니다.