| « Russian Flash Awards и 7-ая RAFPUG | top4top - перемены » |
6-ая RAFPUG
Автор фотографий - Алексей «Vooparker» Аникутин
На 6-ой встрече нашей RAFPUG Constantiner предложил сделать 30-минутный доклад о проблемах и решениях flash-клиента на портале top4top.ru. Я предложил своим коллегам Филиппу «FSB» Бондареву и Игорю «peace» Андрееву сделать наш доклад вместе (по сути переложил на них всю работу
), и так уж получилось что они вместо 25 минут рассказывали 2 часа.
Начал наш архитектор, Игорь. Одна из первых фраз была типа «то ли руки не оттуда ростут, то ли условия были таковы», на что Артемий предложил не впадать в уныние
Сотрудники Flexis соорудили доступ в интернет, и Игорь перешел от слайдов к показу живого сайта через Internet Explorer.
То ли за полгода мы так и не соорудили нормальное определение версий, то-ли и правда в IE был старый плеер, но все увидели предложение обновить плеер вместо top4top
Фидбек от Flexis? Какой там плеер в IE был? В Опере все сразу заработало. Следующие 20-30 минут Игорь ходил по top4top.ru в браузере и оказалось, что функционала-то немало.

Затем он перешел к более системным вещам и решениям, скоро тут появиться его презентация.
Настала очередь Филиппа. Он рассказывал про User Account, показывал запретные картинки, создавал и уничтожал планеты во вселенной.

Особенно запомнился момент, когда Филипп стал убирать красные глаза с помощью инструмента редактирования фото в User Account’е «Человеку-Жопе», символу IT-отдела портала:

Презентация Филиппа:
После короткого перерыва я за 5 минут протараторил свою презентацию:
Выводы (Филипп и Игорь со мной не согласны, их выводы я надеюсь тоже добавить в пост):
- Использование двух кривых версий (flash и html) одного контента - это победа технологий над здравым смыслом.
- На данный момент мне ясно, что лучшим является html решение с вставками flash там, где это абсолютно необходимо и с возможностью получить хоть что-то если FP недостаточно высокой версии
- Требование установить последний релиз плеера отпугнет от Вас бОльшую часть аудитории (если она состоит не из флешеров)
- Если не страшен предыдущий пункт и решено сделать портал на FP, то необходимо использовать Flex Framework
И, наконец, главный вывод:
- Необходимо предоставлять сервис максимального качества при текущей конфигурации машины пользователя, без необходимости установки обновлений чего-либо. Если он захочет (и у него есть такая возможность), то установит все, что попросите.

Я.
В целом получилось позитивно и, надеюсь, не очень занудно. Спасибо вам за вопросы и за то, что пришли.

Отвечаем на разные вопросы.
Настала очередь Артемия. Его доклад о нововведениях во Flash Player 10 Beta состоял из демонстрации множества примеров и активных обсуждений в зале. Мне больше всего понравилась генерация звука - вспомнился MS DOS, и сохранение файлов без участия сервера. Большое спасибо ему за доклад!

Трекбек адрес этой записи
URL трекбека (щелкните правой кнопкой мыши и скопируйте ссылку)
24 комментариев
отличная встреча была, и спасибо докладчикам =)
Жжош! Круто!
>> то необходимо использовать Flex FrameworkВсе остальное предельно понятно, кроме вот этого.
Аргументы "против" я слышал, они много раз повторялись.
Напомни плс аргументы "за"? (Если речь идет о целом портале, а не о вставках флэшового контента.)
Nox Noctis: 1. Разрабатывая портал без Flex мы вынуждены были заново разрабатывать контейнеры, кнопки, списки, лэйауты, поп-апы, систему скинования, систему подгрузки модулей и еще много чего.
2. Представьте, что вы разрабатываетете проект на Flex, получая каждую неделю night-билд от разработчиков фреймворка. Меняются интерфейсы, меняется логика, очень мало компонентов и документации. Нет даже таких базовых компонентов как ComboBox, CheckBox и т.п.
2. На разработку глючного подмножества Flex потрачено время, которое было необходимо для разработки самого портала.
3. Использование Flex-фреймворка увеличило бы размер главной страницы 10%
4. Его использование позволило бы существенно (если не кардинально) сократить время разработки с учетом как UI компонентов, так и других возможностей фреймворка.
5. Не нужно тратить время на отладку фреймворка. Багов в нем очень мало и они известны, как и пути их обхода.
Полностью разделяю два вывода автора:- На данный момент мне ясно, что лучшим является html решение с вставками flash там, где это абсолютно необходимо и с возможностью получить хоть что-то если FP недостаточно высокой версии
- Если не страшен предыдущий пункт и решено сделать портал на FP, то необходимо использовать Flex Framework
Ну и где вы все были с этими умными выводами раньше, во время разработки?
Раз уж тема опять скатывается на обсуждение технологий, то сделаю маленькую ремарку. Проблема не в технологии, Максу куда приятней работать с Flex, и этого его мнение и оно имеет место быть, но как он сам сказал есть и другие мнения. Попробуйте представить что этот портал реализован на Flex или на ASWing, стал бы он от этого более успешным? или более привлекательным для пользователей? Я думаю ответ очевиден.
2fedotov:На встрече Игорь дал ответ на этот вопрос. Выбор той или иной технологии обусловлен функциональными требованиями, на начало разработки, впрочем как и по сей день, таких четко сформулированных требований не было. В этой ситуации закладываться на кой бы то ни было фреймворк все равно что играть в лотерею, поэтому выбор и был сделан в пользу pure actionscript, что вместе со сложностями дало разработчиком определенную свободу.
Игорь, если я где-то тебя не так понял, поправь =)
Макс1. Разрабатывая портал без Flex мы вынуждены были заново разрабатывать контейнеры, кнопки, списки, лэйауты, поп-апы, систему скинования, систему подгрузки модулей и еще много чего.
Контейнеры: наш лэйаут под наши задачи подходит лучше - имеем:
- поддержка процентных размеров только там, где они нужны.
- смена лэйаута (вертикальный, горизонтальный, абсолютный, спираль, шелф) одной строкой
- разнесены глубина и индекс элемента в лэйауте.
Контролы (Button, ComboBox, Pager, Slider, SrollPane), поп-апы: легкий вариант каждого контрола не требует больших времязатрат.
систему скинования: у нас скины меняются слишком часто, причем дизайнером а не разработчиком. В нашей реализации достаточно опубликовать swf, в реализации флекса: опубликовать swf+обновить css+скомпилить нужный swf+удалить лишний swf. И так для каждого модуля. Кроме того, флекс предполагает только простые графические скины, у нас можно использовать и сложные формы, собранные дизайнером.
Это все удобства, но они не лишние и каждое имеет свои преимущества из списка: ускоряет работу компонента \ требует меньше памяти \ экономичнее по коду \ легко расширяемо и модифицируемо под изменяющиеся требования.
2. Представьте, что вы разрабатываетете проект на Flex, получая каждую неделю night-билд от разработчиков фреймворка. Меняются интерфейсы, меняется логика, очень мало компонентов и документации. Нет даже таких базовых компонентов как ComboBox, CheckBox и т.п.
Ядро проекта, в котором и заключена вся логика приложения, меняется независимо от компонентного фреймворка.
2. На разработку глючного подмножества Flex потрачено время, которое было необходимо для разработки самого портала.
Очень спорно, насчет потраченного времени. На as3 пишется, то, что тебе надо. На флексе либо делается то же самое (если начинать с UIComponent), либо время тратится на подгонку уже имеющегося. Как показывает опыт, на подгонку времени уходит не меньше и что самое печальное, после всех подгонок и по прежнему отрицального результата, возвращаемся к пункту 1 и пишем сами.
3. Использование Flex-фреймворка увеличило бы размер главной страницы 10%
По моему это минус, а не плюс
4. Его использование позволило бы существенно (если не кардинально) сократить время разработки с учетом как UI компонентов, так и других возможностей фреймворка.
5. Не нужно тратить время на отладку фреймворка. Багов в нем очень мало и они известны, как и пути их обхода.
Уже все обсудили выше, Макс, ты зациклился

Резюме: как я и говорил на докладе, да, можно было все написать на флексе, но ты лично, готов гарантирвать, что через год (считаем, что портал продолжает работать и развиваться) флекс все также будет удовлетворять требованиям. Что из флекса нужно в юзер эккаунте, например, ведь именно его планировалось развивать больше всего?
2fedotov: я занимался поддержкой и дальнейшей разработкой. Решений я не принимал и повлиять на них не мог.2FSB: да, этот коммент я писал ночью, он не супер
to fsb Если читать твои ответы по поводу флекса то видно, что ты просто не умеешь его готовить. Извени, но все твои доводы только показывают это незнание.
Попробуйте представить что этот портал реализован на Flex или на ASWing, стал бы он от этого более успешным? или более привлекательным для пользователей? Я думаю ответ очевиден.
Использование флекса именно позволило бы сделать портал более успешным:
- проект стартанул бы в более удобоваримом виде.
- изобретая велосипед - в получаете ничего более чем велосипед, ну может в 3й педалью если повезет, если взять чужой велосипед то можно думать уже о езде. Это я клоню к тому что большая часть усили была потрачена на размышление о мелких "кирпичиках"-компонентах. Если это время потратить на продумывание логики работы с пользователем было бы гораздо веселее.

Решений я не принимал и повлиять на них не мог.
Макс, щас обрыдаюсь
Про flex говорить устал, да и не нужно. Было озвучено достаточно аргументов, оставленных без внимания, чтобы очередной раз реагировать на copy/paste пресс-релиза к adobe flex framework.
2__i:проблема как раз не в "кирпичиках"-компонентах, то кто должен думать о езде не должен думать о создании велосипеда. Продумывание логики работы с пользователем не входило в задачи разработчика и не потому что он был занят на кипичном заводе, просто это не его задача.

Если читать твои ответы по поводу флекса то видно, что ты просто не умеешь его готовить.
Блин, я потратил пол часа своего времени, отвечая Максу попунктно, либо не сотрясай воздух (иначе это не назвать), либо пиши конкретнее. А авторитетом меня давить бесполезно
Граждане, а вот дайте ссылок на какие-нибудь Flex-проекты (хотя бы буржуйские), относительно которых вы можете сами сказать: да, это красиво, приятно, и хорошо (с точки зрения пользователя) работает.Все что мне встречалось из этой области было похоже на быстрое решение сложной задачи в рамках готового флексового каркаса. Когда можно поступиться комфортом и красивостями в пользу эффективности разработки.
Это само по себе ценно, то, что можно сразу думать о логике более высокого уровня, не проделывая базовую работу заново. Но я сейчас о другом - кто-нибудь видел на флексе интерфейсы, которые _радуют_? Когда дизайну необходимо мириться с форматом, он иногда бывает бессилен.
Parleys.comBuzzword
Adobe Photoshop Express.
Это то, что сразу в пьяную голову пришло. А тут есть вообще куча приложений на выбор.
А ты, Миша, правда до сих пор считаешь, что Flex - ограниченное говно, и круг его приложений сильно ограничен? Я просто знаю, что многие такое же считали и про v2 components от старого Flash 8 и их архитектуру, когда на ней просто и удобно все строилось с гораздо меньшими усилиями.
Хотя ну его, этот холивар. Соглашусь, что Flex - унылое говно
Замечу, что никто из разработчиков клиентской части Top4Top не говорил, что "Flex - унылое говно"
А ты, Костя, правда до сих пор на вопросы в таком стиле реагируешь? Обрати внимание, в каком контексте идет разговор.
Речь о т. наз. "медиа-портале".
И дизайн, вероятнее всего, при решении этой задачи - первичен.
Ты ведь не будешь спорить, что степеней свободы у флэш-приложения больше? Или будешь?
Вне контекста вообще нельзя говорить, унылое говно, или веселое. Скажем, я бы не взялся делать презентационный сайт с большим количеством разного интерактива на флексе. А систему вроде "фотошопа экспресс" я бы не взялся делать на флэше. Наверное я дурак, и ничего не понимаю.
А ты сразу про "v2 components"... Вот это выражение "на ней просто и удобно все строилось", оно, знаешь, катастрофически зависит от значения слова "всё".
Да. Я такой Ну твой вопрос я воспринял безотносительно к top4top. И просто удивился, что Flex - инструмент для создания приложений на базе Flash-платформы, инструмент, который существует (у говорю про версию 2+, с которой можно воспринимать Flex как решение для создания массовых приложений) уже больше двух лет. Ну вот почему не потратить пару выходных, не изучить основы и самому не ответить на свой вопрос? А так получается, что лежит, пованивает такой монстр с неизвестных планет под названием Flex, и чтобы узнать, хороший он или плохой, надо спрашивать тех, кто не обломался надеть перчатки и вовсю с этим монстром работает, осознав, что не уродец это, а другая, более прогрессивная форма жизни
Ты ведь не будешь спорить, что степеней свободы у флэш-приложения больше? Или будешь?
Ну смотря что для кого свобода. Если речь идет о мультиках, то Flash безусловно рулит. Но! Есть куча способов прекрасно использовать эти мультики во Flex-приложениях (ибо Flex - это как раз mxml+as+assets). И даже Adobe выпустила для этого соответствующие инструменты. Так что степень свободы по части мультиков такая же. Просто используй нужные инструменты в тех целях, для чего они предназначены и добивайся нужного тебе результата от их взаимодействия, не забывая, что Flash - это инструмент для художников, аниматоров и медиа-дизайнеров, а Flex - инструмент разработчика.
кажем, я бы не взялся делать презентационный сайт с большим количеством разного интерактива на флексе.
Ну для презентаций и медиа-дизайна - конечно Flash. Но если речь идет о современном презентационном слайде, то чаще всего он содержит не только красивые картинки, анимацию итд, но и богатый бизнес-функционал (различные методы работы с текстовой/числовой информацией, ее представление, формы связи, заказов итд.). И вот Flex в данном случае как раз является удобным связующим звеном, позволяющим увязать мультики и весь этот функционал в цельное презентационное приложение.
Из примеров таких презентационных сайтов, написанных на Flex, сайт HP. Возможно, это не самый крутой сайт (я не специализируюсь по таким сайтам), но смысл виден.
Все показанные тобой примеры имеют определенный формат. По большей части интерфейсы табличные, аккордеон/список меню, размеченные как в хтмл блоки с контентом, плашечки с картиночками и текстом рядом, ожидания загрузок с прогрессбарами (с минимальными или отсутствующими транзишнами между фрагментами контента). Местами неясно, зачем там вообще флэш (остается один козырь - скорость разработки). Зато системы большие, много всего грузят и показывают, не сильно заморачиваясь про оригинальность подачи. Вот это я имел в виду, когда говорил о "формате" фреймворка, который может мешать дизайнеру развернуться при изготовлении медиа-портального интерфейса. Техническая часть накладывает отпечаток на визуальную, в любом случае, потому что это система правил, идти поперек которой не разумно, раз уж её выбрали (мы ведь говорим об использовании фреймворка, а не просто о флексе, как об IDE для производства AS кода).Это все не говорит о том, что флекс чем-то плох. Просто он для другого. Там, где упор больше на художественную сторону мероприятия, легче обойтись без флексового каркаса. Вопрос - так ли это для портала вроде top4top (кстати, судя по текущему его виду, вероятно, нет).
"Просто используй нужные инструменты в тех целях, для чего они предназначены" спасибо, Костя, теперь я знаю, что делать. Весь этот топик - именно про самое это. Реплика про мультики понравилась.
ps: Непонятно, почему каждое (КАЖДОЕ) такое обсуждение вызывает со второны флексеров реплики "вы лузеры, ничего не знаете про флекс, и не понимаете, какой он крутой". И, как обычно, от темы изначального вопроса мы удаляемся. Флекс вызывает токсикоз какой-то?
Ну про лузеров никто не говорил. Просто не очень понятна критика того, чего не знаешь. А узнать, вроде, не так уж и трудоемко.Насчет мультиков. Тут, думаю, понятно, о чем речь. Основное отличие Flash от Flex - это наличие таймлайна. Во Flash есть, во Flex - нет. Таймлайн - это краеугольный камень Flash. Который и создавался для анимации и позиционирование которого в этой области Adobe опять начала вести с выходом Flex (об этом ярко говорит разница в предоставляемых компонентах между Flash CS3 и Flash 8). Поэтому я употребляю этот термин (мультики) как обозначение контента, использующего таймлайн.
По части "стандартного" дизайна Flex-приложений. Все ограничивается только фантазией и целесообразностью. Точно так же, как человек, посмотревший стандартные Flash-сайты, решит, что все должно пукать, хаотически двигаться и пытаться вызвать паралич мозга у пользователя. Но есть же сайты (написанные на чистом Flash), которые вполне адекватны. Так и во Flex никто не отменял лэйаутов с абсолютным позиционированием (типа Canvas) если они целесообразны.
С точки зрения концептуальной, практически любой интерактивный Flash_сайт, ориентированный на контент (а особенно текстовый), легче написать на Flex.
Но с другой стороны, какая разница на чем писать? Главное чтобы люди были хорошие, никто не ссорился, не было холиворов итд.
Очень понятный комментарий, спасибо. 




