love5an: (Default)
Dmitry Ignatiev ([personal profile] love5an) wrote2011-01-19 12:00 am

WPF

WPF охуенно. WPF круто, нереально круто.

GTK+ - говно. Qt - говно. wxWidgets - говно. Tk - говно. Pure Winapi, MFC, ATL, WTL - говно. Windows.Forms - говно. Cocoa - говно. SWT - говно. Swing - говно. Все это блевотное говно.

А WPF пиздато.

Проблема в том, что WPF переусложнено. Сильно переусложнено. Да, оно многое позволяет, оно очень хорошо отделяет интерфейс от реализации, оно расширяемо, оно интероперабельно с WinAPI, оно использует ресурсы видеокарт для отрисовки. Но, WPF очень сложное, слишком. И подпертое костылями со всех сторон.

И, да, это проблема не только WPF - это проблема практически всех продуктов и технологий Microsoft.

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

MS, например, прямым текстом признается, что семантика .NET-языков, и самого дотнета - слишком примитивна, убога и нерасширяема, и недостаточна для красивой реализации dataflow gui-фреймворка:
http://msdn.microsoft.com/en-us/library/ms750441.aspx#System_Windows_DependencyObject
Отсюда все эти костыли типа DependencyObject и прочая.

Кроме того, рефлекшн, и вообще, динамика - один из ключевых столпов WPF, в самом дотнете совершенно неюзабельны. Объектная система невероятно убога и примитивна. Интроспекция - очень сильно ограничена и неудобна в использовании. Система типов скорее мешает разработке, чем помогает. Про функциональное программирование я вообще промолчу(хотя где-то версии с третьей дотнета с этим стало получше, конечно).

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


На Common Lisp парадигмы event-driven и dataflow программирования ложатся идеально.
http://common-lisp.net/project/cells/

И динамичности в нем предостаточно.

Но Microsoft никогда бы не стала реализовывать свой передовой фреймворк на платформе типа CL. Он слишком отличается от других языков. Он сложен. А где найдешь программистов на нем? И кто будет этим пользоваться? Кучка энтузиастов?

Любую корпорацию, даже связанную с высокими технологиями, технологии не интересуют. Ее интересует стабильность и финансовые потоки.

даже веб всрали

[identity profile] swizard.livejournal.com 2011-01-19 12:06 am (UTC)(link)
...поиск (msn, bing) -- всрали, myspace всрали (весь персонал тока недавно разогнали), картографию всрали, silverlight уже официально и с позором захоронили, облака всрали...

че там еще бывает? это твои румяные менеджеры и гениальные инженеры тоже всрали
wizzard: (Default)

Re: даже веб всрали

[personal profile] wizzard 2011-01-19 01:23 am (UTC)(link)
Бинг, кстати, последний год по слепым тестам лучше гугла. Это, конечно, во многом заслуга сеошников, засравших гугл, и персонализация у Гугла дает надежды, но "всрали" - это вряд ли.

Алсо, а что с сильверлайтом? Ну, не считая долбоебистых речей отдельных маркетологов, что сильверлайт это хрень для программинга веба на С++, которую мы закрываем т.к. ею никто не пользуется (да-да, MS родила ДВА сильверлайта, один пришлось закрыть).
А народ радостно распиарил.

Не знаю пока ничего про WP7 и анонс "Windows 8 on ARM", тем не менее сильверлайт в них считается одной из 3 ключевых платформ.

Винмобайл при всей уебищности интерфейса умудряется как-то жрать в 1.5-5 раз меньше батареи на идентичном железе телефонов, почитайте стоны андроидоводов как-нибудь.

Офис, который начал загибаться во времена 2003, вон тоже причесали. OneNote вполне себе рулезная штука, например.

Так что да, у них просто дохренищи говенных продуктов, в отличие от Гугла они не лепят на них лейблочку "бета", но и всей разницы.