2008-09-18 4 views
8

У меня есть ощущение, что легко найти образцы, учебные пособия и простые примеры на Flex.
Кажется сложнее найти советы и передовые методы, основанные на реальных проектах.
Любые советы о том, как:Рекомендации по применению Flex?

  • Как написать ремонтопригодны Actionscript код
  • Как обеспечить четкое разделение беспокойства. Кто-нибудь использовал инфраструктуру MVC, такую ​​как cairngorm, puremvc или easymvc в реальном проекте Flex?
  • Как получить данные с сервера с blazeds/amfphp?
  • Как уменьшить латентность для конечного пользователя?
  • ...

ответ

5

Я часто работаю с Flex в моей работе, и я буду рад помочь .. но ваши вопросы заслуживают статьи для каждого из них :) Попробую немного короткий ответ.

Подходящий код: Я думаю, что применяются те же правила, что и в других языках OO. Некоторые правила гибкой спецификации, которые я использую: используйте сильные типизированные переменные, всегда рассматривайте диспетчеризацию событий, так как ваши компоненты интерфейса взаимодействуют друг с другом (немного более оригинальная работа, очень гибкая и развязанная позже).

Рамки: посмотрел на него, прочитал документацию .. очень приятно, но я все еще чувствую, что их осложнения не сбалансированы преимуществами, которые они предоставляют. Во всяком случае, я бы хотел изменить свое мнение по этому вопросу.

Говоря с сервером: Сейчас я использую BlazeDS, он работает очень хорошо .. есть много учебников по этому вопросу, если вы найдете какие-либо проблема с настройкой. Я был бы рад помочь.

Задержка: Вы имеете в виду в отношениях клиент/сервер? Если это так, вы должны изучить различные типы каналов, которые BlazeDS реализует .. pull-only, двухсторонний HTTP-опрос, почти в реальном времени на http (комета) .. Если вам нужно больше, LiveCycle Data Services ES, коммерческая реализация из который BlazeDS рождается, помимо всего прочего, предлагает другой протокол под названием RTMP, он не является http-tunnelled, поэтому могут возникнуть проблемы с брандмауэрами и прокси-серверами, но он обеспечивает лучшую производительность (есть бесплатная версия LCDS с закрытым исходным кодом). Я использую стандартные http-каналы в средах интрасети и не обнаружил реальных проблем с производительностью даже при больших наборах данных.

Ну .. довольно много вещей, не может быть теперь более конкретно по каждому из этих пунктов, прошу вас, если нужно :)

+0

Спасибо за ваш отзыв О латентности: у меня есть приложение с домашней страницей, которая нуждается в данных из многих служб. Ранее я использовал DWR (ajax framework) для пакетной обработки нескольких вызовов службы в один URL-адрес. Вы знаете, как добиться этого с помощью flex? http-канал с шаблоном команды? – 2008-09-19 12:30:47

+0

Почему вы должны командовать командами в одном HTTP-запросе? Обычно вы не кодируете данные с низким уровнем детализации, вы просто вызываете ваши методы remoteobject (и используете конфигурацию XML, чтобы описать, как их обрабатывать). Самый простой способ - создать специальную службу, которая собирает сразу все данные. – 2008-09-23 07:35:21

3

Вот несколько больших ресурсы, чтобы сделать с Flex/AS3 лучшим практика и стандарты:

Flex SDK coding conventions and best practices

Flex best practices – Part 1: Setting up your Flex project

Первый я нашел особенно полезным, и я стараюсь, чтобы убедиться, что любая команда я работаю с все читали его

0

Я нашел MVC-каркас RIAWave link абсолютно невероятным. Он очень легкий и прост в использовании. Я обнаружил, что Cairngorm и PureMVC имеют довольно крутую кривую обучения, и они оба чувствуют себя слишком громоздкими для меня. RIAWave остается в стороне и просто дает вам основы MVC для работы.

AMFPHP на бэкэнде тоже очень хорошо.AMFPHP также имеет модуль apache, который позаботится о сериализации/неэтериализации отправленных и полученных данных, все в C, который быстро вспыхивает.

Если латентность беспокоит вас, вы должны убедиться, что получаете хороший веб-хостинг или даже развертываете несколько центров обработки данных, чтобы ваши пользователи никогда не были далеко от сервера. Похоже, что немного рано беспокоиться об этом.

Смежные вопросы