Хотя я о том, где вы находитесь в моих поисках нирваны пользовательского интерфейса, я расскажу о том, о чем я думаю.
Лично я считаю, что если вы хотите остаться с Microsoft, но ваше приложение должно работать на платформах, отличных от Windows, в городе есть только две игры. Silverlight и MVC с хорошим набором виджетов пользовательского интерфейса на стороне клиента.
Мой мыслительный процесс до сих пор может быть сведен к:
Silverlight, с большим отрывом, опережает MVC с точки зрения простоты разработки (благодаря истинному MVVM / фантастическому связыванию данных) и «богатства» пользовательского интерфейса. Но, к сожалению для разработчиков, насколько это легко для нас, на самом деле не имеет значения для пользователя.
Недостатком SL, как отмечают другие, является то, что он работает не везде, где вы хотите. В частности, Android и iOS сложны (хотя вы должны оценить MonoDroid и Monotouch).
MVC, который, на мой взгляд, является лучшей серверной веб-технологией, очень хорош в разработке, но просто не имеет тонкостей со стороны клиента с сохранением состояния, как у SL, и вам приходится иметь дело с HTML, javascript и клиентом без сохранения состояния ,
Смягчение этих комментариев заключается в том, что существует довольно много хороших фреймворков, которые делают javascript практически сносным (я использую JQueryUI & wijmo) и предоставляют полуобогащенный пользовательский интерфейс клиента.
Это действительно сводится к тому, чтобы достичь богатства. Я также вижу, что MS уделяет большое внимание MVC. Кто знает, может быть, мы увидим несколько хороших инструментов для связывания данных и т. Д. В будущем?