목적
Objective C언어를 이용하여macOS를 개발해본다.Sqlite를 이용하여 데이터를 저장하고, 불러와본다.FMDB를 이용한다.
- 데이터를 
NSTableView를 이용하여 불러와본다.- 추가적으로 
NSOutlineView구현해본다. 
 - 추가적으로 
 - 추가적으로 
KVOController를 이용하여KVO를 사용해본다. 
Pod
FMDBKVOController
FMDB
- 1.DB저장소 
위치설정 - 2.DB 
open - 3.
Table생성 및insert - 4.
selectFMResultSet를 반환하므로,next를 이용하여 원하는 컬럼을 가져와 타입으로 만들어주는 과정이 필요하다.
 
    FMResultSet *result = [self.sqldb selectChatRoom];
    self.chatRoom = [[NSMutableArray alloc] init];
    while ([result next]) {
        ChatRoom *chatRoom = [[ChatRoom alloc] init];
        chatRoom.chatRoomChat = [result stringForColumn:@"chatRoomChat"];
        chatRoom.chatRoomTitle = [result stringForColumn:@"chatRoomTitle"];
        chatRoom.chatRoomId = [result intForColumn:@"chatRoomId"];
        [self.chatRoom addObject:chatRoom];
    }
궁금증
-  
Pod으로 설치했더니, FMDB의 macOS 타겟이 10.6, KVOController은 10.7로 되어있는데, 그럼 지금 프로젝트는 최소타겟이 10.12인데 괜찮겠지...? ?
 -  
FMDB를 이용하여 SQlite 저장소 가져오는 객체를 SQLDB 객체로 만들었고, 이 과정에서 싱글톤으로 구현했다. 여기서 싱글톤으로 구현하기 위해, GCD를 이용했는데,dispatch_once와static에 대해서 공부하자. 
+ (SQLDB *) shared {
    static SQLDB *instance = nil;
    static dispatch_once_t pred;
    
    dispatch_once(&pred, ^{
        instance = [[SQLDB alloc] init];
    });
    return instance;
}