Я разработал два приложения с интенсивным использованием данных в Silverlight. Одно началось как приложение SL2-B2 и поставляется в SL2, а другое - приложение SL3. С точки зрения приложений с большим объемом данных, между Mac и ПК нет никакой разницы. У меня были некоторые проблемы с рендерингом / производительностью на Mac, хотя я не сожалел об использовании SL. (вы можете посмотреть другие мои вопросы, чтобы увидеть вопрос об использовании процессора silverlight)
Есть много вещей, которые вы найдете очень ценными для приложений с интенсивным использованием данных при использовании SL (многие из которых, я считаю, невозможны в более традиционных веб-языках):
- Изолированное хранилище - вы можете хранить большие наборы данных локально, зашифровавшись, если хотите.
- Многопоточное выполнение - вы можете обрабатывать данные параллельно и в полной мере использовать преимущества многоядерного процессора (в сочетании с # 1 вы можете многое сделать раньше)
- Бинарное кодирование (при использовании WCF в качестве службы) - это значительно повышает эффективность передачи данных на стороне сервера (хотя я думаю, что это может быть воспроизведено с другими технологиями, но оно бесплатно с SL3 и WCF)
- Использование локального ускорения графического процессора для рендеринга. Если ваше приложение, интенсивно использующее данные, производит сложные визуализации, это может значительно увеличить
- Общий взаимозаменяемый язык как для клиента, так и для стороны сервера. Мы разделяем много кода с обеих сторон. Мы вычисляем результаты на стороне клиента, используя ТОЧНО те же фрагменты кода, которые мы используем на стороне сервера. (прямо сейчас мы «связываем» файлы кода в SL и обычные сборки .net, с .net 4 мы можем делиться библиотеками) - это обеспечивает большую эффективность программирования и тестирования.
Также - кто-то прокомментировал выше «просто писать нативные приложения» - я обновлял свои приложения буквально сотни раз - все прозрачно для конечных пользователей. На самом деле, написание собственных приложений - это не проблема, а их развертывание, обновление и т. Д. SL делает это чрезвычайно простым, если не автоматическим. Я все время рассказываю людям, которые пытаются позиционировать SL против Flash или SL против HTML - для меня реальная разница - SL против (целое нативное приложение, собственный установщик, опыт обновления).
Удачи. Дайте нам знать, как это получается.
Кстати: я делаю все свои разработки на Mac Pro с Win7 в VMWare Fusion.