2012-06-20 2 views
0

나는 안드로이드 시스템을 배우려고하고 표준 (기본) DescClock 응용 프로그램을 찾고있었습니다 (여기에서 얻은 것 같습니다 : http://omapzoom.org/?p=platform/packages/apps/DeskClock.git). 특히, 내 질문에 대한 클래스 AlarmAlarms에 대한 것입니다. Alarm은 하나의 알람을 구현하는 반면 AlarmsAlarm으로 다양한 작업 방법을 가지고 있습니다. Alarms의 모든 메소드는 static입니다.안드로이드의 디자인 패턴 기본 DeskClock 응용 프로그램

지금, 질문입니다. 정적 메서드를 사용하여 "관리자"클래스를 만드는 것이 잘 알려진 디자인 패턴입니까? 그러한 접근 방법의 일반적인 이점은 무엇입니까? 고맙습니다!

답변

2

처음에는 아마도 Composite pattern 일 수 있다고 생각했는데, 이것은 독립형 또는 동일한 유형의 컨테이너 일 수있는 경우에 일반적입니다. 그러나 모든 Alarms 메서드가 정적 인 것을 읽었을 때, 나는 그것이 Composite와 아무런 관련이 없음을 깨달았습니다.

Alarms 모든 메소드는 정적 있다는 사실은 Alarms 더 상태가 없다는 것을 의미한다, 만 Alarm 클래스 인스턴스에 대한 행동 적역할을합니다. 코드를 살펴본 후 Alarms 클래스가 Facade pattern 또는 심지어 Visitor pattern의 하이브리드 인 것처럼 보이지만, 하나의 클래스에서만 작동합니다.

무엇 Alarms 클래스 효과적으로 따라서 최종 사용자에 대한 사용을 단순화 Alarm 클래스에서 작동하는 방법을 의 세부 사항을 캡슐화되어하고있다. 실제로이 접근 방식을 좋아하지만, 이렇게 어려운 캡슐화 된 Alarm 클래스를 사용하기가 어렵다면 디자인을 리팩터링해야한다고 주장 할 수도 있습니다.

관련 문제