2011-09-26 2 views
1

누구나 싱글 톤 객체가 무엇인지 설명 할 수 있습니까? 많은 튜토리얼에서 "sigleton 객체 만들기"와 같은 것을 발견했습니다. 이제 저는 cocos2d를 사용하여 아이폰 게임 개발에 참여하고 있습니다. 나는 raywenderlich 멀티 튜토리얼 "한 자리에있는 모든 게임 센터 코드를 유지하기 위해 싱글 톤 객체를 생성합니다"읽기, 또한 그는 말한다 :싱글 톤 객체 란 무엇을 의미하며 사용법은 무엇입니까?

+ (GCHelper *)sharedInstance; 

이 정적 메서드는이 클래스의 싱글 인스턴스를 가져 오지 수 있습니다. 그러나 나는 싱글 톤이 무엇인지, 또는 싱글 톤을 어떻게 사용 하는지를 모른다.

+1

당신이 대답을 받아 들일 것으로 가정하면,이 경우에는 @Brandon E Taylor가 유용하다고 생각합니다. – Asymptote

+0

[Objective C에서 Explain Singleton 클래스]의 가능한 복제본 (http://stackoverflow.com/questions/5761521/explain-singleton-class-in-objective-c) –

답변

5

단일 개체는 주어진 클래스에 대해 하나의 인스턴스 만있는 개체입니다. 싱글 톤 패턴은 클래스의 단일 인스턴스가 시스템의 클라이언트간에 공유되도록 보장하려는 경우에 사용됩니다.

자세한 내용은 C2 wiki page을 확인하십시오.

+0

감사합니다. Brandon.so 우리는 주어진 클래스에 대해 하나의 인스턴스 만 생성합니다 , pls 샘플 제공 Brandon – banu

+0

Brandon에게 감사의 말을 전합니다. – banu

+0

답안의 예에 대한 링크가 추가되었습니다. –

0

싱글 톤으로 의미하는 클래스의 인스턴스이다 : 여기

객관적-C에서 싱글 톤의 사용의 예는 일부 소식있다 그 종류의 유일한 것. 보통이 단일 인스턴스에 대한 포인터를 리턴하거나 아직 존재하지 않는 경우이를 작성하는 클래스 메소드가 있습니다. 싱글의

몇 가지 예는 다음과 같습니다 NSFileManager를 defaultManager NSUserDefaults standardUserdefaults NSCharacterSet whitespaceCharacterset

싱글 톤은 당신이 당신의 다른 코드에 everwhere에서 액세스 할 수있는 중앙 장소에서 모델 데이터와 코드를 유지하기 위해 일반적으로 인정 된 방법입니다. 당신이해야 할 일은 헤더를 추가하고 클래스 메소드를 통해 싱글 톤 포인터를 얻는 것입니다.

전역 변수 대 싱글의 비교 여기를 참조하십시오 : http://www.cocoanetics.com/2009/05/the-death-of-global-variables/

+0

제공 한 세 가지 예는 싱글 톤이 아니라 편의상 제공되는 기본 인스턴스입니다. 더 많은 것은 인 무엇, 당신의 연결 한 기사 w.r.t. 싱글 톤과 전역 변수는별로 유용하지 않습니다. Peter Hosey [http://boredzo.org/blog/archives/2011-03-18/application-delegate-singletons]에 따르면, 싱글 톤의 공개 멤버는 정말로 변장 한 3 차원 글로벌 그룹입니다. –

0

Singleton 객체는 응용 프로그램 전반에 걸쳐 하나의 개체 만이 의미한다. 싱글 톤 클래스의 속성을 사용하고이 클래스의 객체 (싱글 톤 객체라고도 함)를 사용하여이 속성에 액세스하면 수동으로 변경하기 전까지는 전체 응용 프로그램에서 동일한 값을 얻게됩니다. 이 개념은 일반적으로 어플리케이션에 로그인 프로세스가있는 것처럼 응용 프로그램에서 필요로하는 일부 수정 값을 유지 보수하는 데 사용됩니다.