Кстати, о конструкциях... Читал хабрарабр. Наткнулся на такое
Кстати, о конструкциях... Читал
Код AS1/AS2:
UPD: "Такой прием во многих случаях может сократить объем кода и убрать негативный оттенок асинхронности". Очень понравилось. UPD_1: Изучая комменты хабралюдей, увидел: "Функцию-то описать можно, но этот код не скомпилируется в том виде, в каком вы его привели, т.к. отсутствует конструктор, принимающий параметр. Будет сгенерирован по дефолту пустой конструктор, который не принимает аргументов, и при попытке туда что-то передать вылезет ошибка. Я допускаю, что наличие правильного конструктора подразумевается, но это не для всех очевидно, некоторых читателей вы вводите в заблуждение". Факт 1. Чувак вводит нас в заблуждение. UPD_2. Чорт. Я не могу читать следующие комменты! Все слишком банально: "По-поводу TestClass, зачем так конструктор? Он не нужен, в примере использования ничего в класс не передаётся". А кто объяснит UFO: "TestClass(this).property = value;"? |
Это шедевр просто. Кастинг самого в себя. Безопасность кода чуть менее чем плохая, никакой смысловой нагрузки я тут не вижу. Ощущение, что человек путает as2 с as3.
|
Это я писал про конструктор. Прочитав пост DarkLight, я понял что я идиот, ибо проглядел отсутствие new и спутал кастинг с созданием экземпляра :)
|
Друзья, но кто объяснит таки конструкцию
Код AS1/AS2:
|
TestClass(this) - это приведение типов, аля this as TestClass, но немного не то, гуру меня поправят, да и как сказал DarkLight это реально шедевр, а вообще статья довольно холиварная, что легко заметить в коментах в оригинале.
Код AS3:
|
Сейчас какраз говорим об этом с автором:
http://habrahabr.ru/blogs/flex/52458/#comment_1419237 |
Кстати, для любителей подобных шедевров с легким налетом идиотизма... :)
http://www.actionscript.org/forums/s...=179053&page=3 |
Код AS3:
Похоже вызывается это так: Код AS3:
|
Хм, в случае того поста на хабре это будет паттерн "параноик". Ни один метод класса ни в чем не должен быть уверен:) Основным применением является защита от копипаста кода из одного класса в другой:)
|
Интересно стало. потестил:
Код AS3:
Код AS3:
Код AS3:
зачем тогда: Paranoik(this)._value ? |
Часовой пояс GMT +4, время: 15:14. |
Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2024, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.