게임 매니저같은 관리자 옵젝을 제작할 때,
단일 오브젝트와 손쉬운 접근 위 두 가지 조건을 만족해야한다고 합니다.
이런 조건에서 주로 싱글턴 패턴을 사용하고, 이를 구현하는데 정적변수를 이용합니다.
여기까지는 이해가 되는데 구현 부분에서 이해가 어려운 부분이 있습니다
javaCopy code
public class GameManager {
private static GameManager instance;
private GameManager() {
// 생성자를 private으로 선언하여 외부에서의 인스턴스 생성을 막습니다.
}
public static GameManager getInstance() {
if (instance == null) {
instance = new GameManager();
}
return instance;
}
// 게임 매니저의 기능들을 구현합니다.
}
javaCopy code
public class GameManager {
private static GameManager instance = new GameManager();
private GameManager() {
// 생성자를 private으로 선언하여 외부에서의 인스턴스 생성을 막습니다.
}
public static GameManager getInstance() {
return instance;
}
// 게임 매니저의 기능들을 구현합니다.
}
GPT에게 질문해보았을 떄, 질문에 대한 답변입니다. 싱글턴 패턴은 전역 변수를 사용하는 것보다 더 효과적이고 안전한 방법으로 인스턴스를 관리할 수 있습니다. → 왜 그런지 궁금합니다 어떤 부분에서 더 효과적이고 안전한건지..
싱글턴 패턴과 더불어, 다른 패턴이 있다면 간략하게 소개해 주셔도 좋습니다!
추가적으로
GameManager.instance.AddScore(1);
이 코드에 대해서
“게임 매니저에 싱글턴으로 접근하여 AddScore()메소드를 실행한다”
라고 표현하는데,
“싱글턴으로 접근한다”
이 문장이 엄밀하게 이해가 안되는 것 같습니다.
제가 생각한 부분은