2009-09-13 5 views
6

읽고 코코아 튜토리얼 동안 나는 자습서 중 일부는 NSWindowController의 서브 클래스를 사용하는 다양한 창을 열 IBActions를 정의하는 AppDelegate 일부 AppController를 사용하는 것으로 나타났습니다.AppDelegate에 또는 AppController가

어림짐작의 규칙이 있습니까?

답변

10

단지 클래스 이름입니다. AppDelegate는 클래스의 주된 임무는 NSApplication의 대리인 인 반면 AppController는 광범위한 책임을 암시하는 것으로 보입니다.

11

전 단지 내 응용 프로그램 대리인 인 하나의 클래스를 만들고 주 컨트롤러 (applicationWillFinishLaunching:)를 인스턴스화하고 해제합니다 (applicationWillTerminate:). 그런 다음 명확하게 정의 된 책임이있는 두 개의 클래스가 있습니다. 주 컨트롤러는 주 윈도우 및 모델의 소유자이고 응용 프로그램 대리자는 응용 프로그램 대리자 일뿐입니다 (이러한 작업의 일부로 주 컨트롤러의 소유자).

+2

분명히하기 위해, 이것은 메인 윈도우를 메인 메뉴와는 별도의 nib 파일에 두는 것을 의미합니까? –

+0

@Stephen : 예; 주 컨트롤러는 그 펜촉과 그 안에있는 모든 것을 소유합니다. 보통 하나의 창과 하나 이상의 배열 및 객체 컨트롤러입니다. –

+0

메인 컨트롤러 란 RootViewController를 의미합니다 ... 맞습니까? –

관련 문제