|
|
« Предыдущая тема | Следующая тема » |
Опции темы | Опции просмотра |
|
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
Цитата:
|
|
|||||
Banned
[+1 08.05.08]
[+4 14.04.08] [+1.3 02.05.08] Регистрация: Oct 2006
Адрес: кагбэ Киеф!!1
Сообщений: 1,473
|
Цитата:
Цитата:
По сабжу.. кидать ошибку как и сказано постами выше. |
|
|||||
стервочка (я мужик)
|
ну рас всё было сказано, зачем в чужой огород со своими граблями?
|
|
|||||
[+1 18.03.08]
Регистрация: Nov 2006
Сообщений: 223
|
Цитата:
"Защита от дурака" должна быть не только в GUI (против пользователя, который жмёт все красные кнопки), но и в коде (против кодера, которому тоже свойственно ошибаться). |
|
|||||
Banned
[+1 08.05.08]
[+4 14.04.08] [+1.3 02.05.08] Регистрация: Oct 2006
Адрес: кагбэ Киеф!!1
Сообщений: 1,473
|
Цитата:
|
|
|||||
абсолютно согласен с WindWalker, от себя добавлю... придерживаться инкапсуляции даже для себя ИМХО правильно... ) так как сейчас даже в своем фреймворке лень лезть и смотреть синглтон это или еще чего... )
__________________
Кто может делать - делает, кто не может делать - учит, кто не может учить - управляет... |
|
|||||
Вот с защитой от дурака...
package { // Singleton class public class MyClass { private static var instance:MyClass; public function MyClass(block:Blocker):void { if (instance == null) instance = this; } public static function getInstance():MyClass { if (instance == null) instance = new MyClass(new Blocker()); return instance; } } } // блокиратор конструктора MyClass internal final class Blocker { public function Blocker():void { } } |
|
|||||
Banned
[+1 08.05.08]
[+4 14.04.08] [+1.3 02.05.08] Регистрация: Oct 2006
Адрес: кагбэ Киеф!!1
Сообщений: 1,473
|
package com.dimpiax.laboratory.view { import flash.display.Sprite; /** * @author Pilipenko Dmytro */ public class ClassA extends Sprite { private static var __instance : ClassA = null; public static function getInstance() : ClassA { if(ClassA.__instance == null) ClassA.__instance = new ClassA(true); return ClassA.__instance; } public function ClassA(block : Boolean = false) { if(!block) throw new Error('error'); } public function initClass() : void { trace(this); } } } |
|
|||||
Et cetera
Регистрация: Sep 2002
Сообщений: 30,784
|
Цитата:
|
|
|||||
Регистрация: Apr 2001
Адрес: Moscow
Сообщений: 1,475
|
Я не очень поддерживаю карательные меры, но, если говорить о коде синглтонов опубликованых здесь, то __etc прав. Код ужасный.
Могу показать конкретные косяки. А по линку на сайт Юры Ярового не только код, но и хорошее описание.
__________________
http://realaxy.com |
Часовой пояс GMT +4, время: 01:17. |
|
« Предыдущая тема | Следующая тема » |
|
|