Показать сообщение отдельно
Старый 08.05.2011, 13:58
expl вне форума Посмотреть профиль Отправить личное сообщение для expl Найти все сообщения от expl
  № 27  
Ответить с цитированием
expl

блогер
Регистрация: Feb 2006
Сообщений: 1,474
Записей в блоге: 3
Имеете в виду статическую фабрику?
Код AS3:
public function ServiceOwner
{
    private var _service:IService;
    public static function get service():IService
    {
          if (_service == null)
          {
               _service = new MyService();
           }
           return _service;
    }
}
Ну да, преимуществ по сравнению с сингилком 2: Нет ограничения на количество сервисов, код сервиса свободен от выполнения обязанностей по контролю за своим инштанцированием. Но на них и забить можно - тупо _не_ запрещать синглику инштанцироваться вне getInstance() - кому второй синглик понадобится - фабрику се сделает.


Последний раз редактировалось expl; 08.05.2011 в 14:01.