WPF

Jan. 19th, 2011 12:00 am
love5an: (Default)
[personal profile] love5an
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. Он слишком отличается от других языков. Он сложен. А где найдешь программистов на нем? И кто будет этим пользоваться? Кучка энтузиастов?

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

Re: ЧТО БЛЯДЬ

Date: 2011-01-19 09:29 pm (UTC)
wizzard: (Default)
From: [personal profile] wizzard
> откуда в этой ветке дискуссии взялся позикс?

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

> $2000, и RHEL твой. Дашь ещё больше, и у тебя будет в RH персональный человек

O, у нас появилось TCO. После чего мы обнаруживаем, что большая часть ISV ориентируется все-таки на винду, и получаем накладные расходы на интероп с тем софтом, который найти под линух не удалось; на поддержание гетерогенной среды; обучение юзеров работать в этой среде, и всякое такое. Ну, либо на команду своих девелоперов, готовых в случае чего переписать всё нафик :)
Последний вариант, бесспорно, хорош, я такое люблю, но тоже не бесплатен.

Ну то есть, если весь стек укладывается в линух - то ок. Мне пока такое встречалось только для хорошо очерченного круга задач, типа "мелкого офиса"\"школы"\"хостинга"\"онлайн-игрушки" и т.д., но не для автоматизации предприятий. Маемо, Palm, Google и пр. - характерные примеры "переписать всё нафик".

> подсистемы, выполняющие аналогичные функции?

Я утверждаю, что ACL лучше битмасок, WMI лучше зоопарка hw- и sw- related демонов и утилит, Group Policy лучше зоопарка конфигов, а Object Manager "в общем" легче поддается унификации, чем конкретная имплементация /dev, /proc и т.д., в текущем линуховом ядре, хоть он и хуже, чем "всё есть файл" в Plan9 (но п9, увы, не очень жив)

> Все хотят Линукс, и не без причин.

Ну, с тем, что чпукс сейчас маргинален, я согласен. Но работать за цельным прилизанным workstation - приятно.

> А в стране с крупнейшей экономикой - Линукс

А какие там основные ISV получаются?

> не будем трындеть про то, в чём не разбираемся

Мне неоднократно жаловались, что "в итоге внедрили какую-то чрезвычайно глючную фигню, красивую в теории, но очень нестабильную, которая нагружает лишней работой операторов и надеется на их безошибочность".

Я искренне надеюсь, что ОС тут ни при чем, но на вид типичное "решили сэкономить на лицензиях, и не получилось".

Re: ЧТО БЛЯДЬ

Date: 2011-01-20 03:32 am (UTC)
From: [identity profile] 13-49.livejournal.com
Я не буду проводить аналогии линуксовых кишков с вендовыми, ибо с вендами давно не встречался, а пиздеть без знания дела не хочу. Но вышеприведённые утверждения, как минимум, спорны, а некоторые в корне неверны, как, например, сравнение ACL (как там в венде дела с MLS?)

> Мне неоднократно жаловались, что "в итоге внедрили какую-то чрезвычайно глючную фигню, красивую в теории, но очень нестабильную, которая нагружает лишней работой операторов и надеется на их безошибочность".

Если вы про эпический фейл LSE с вендой, то я двумя руками за! Парни жутко много бабла растеряли.

Re: ЧТО БЛЯДЬ

Date: 2011-01-20 03:45 am (UTC)
wizzard: (Default)
From: [personal profile] wizzard
> MLS

Я не знаю ни одной системы, которые реально утверждают что поддерживают MLS и не были в свое время взломаны. Это красивая теория, но поскольку "bits don't have colour", реализовать ее чрезвычайно тяжело. Как минимум, надо верифицированное ядро, компилятор, и верифицированную функциональную спецификацию. И 10-15 лет потом на написание всей обвязки. Их просто еще нету.

Что на винде, что на линухе без особых проблем реализуется MSL, и AFAIK все так и живут сейчас.

> Если вы про эпический фейл LSE с вендой

Нет, я не про LSE. Прочитайте мой комментарий внимательнее, вы пропустили фразу и таким образом вырвали цитату из контекста.

Я про конкретную попытку внедрить opensource-стэк на РАЭС.
Ну то есть да, у них получилось аж в два раза дешевле. 15 лямов что ли. Только один недостаток - пользоваться нельзя :)

Конечно, есть подозрение, что оба проекта профакаплены тупо из-за cost-cutting, или вообще кому-то чего-то занесли, черт его знает.

Re: ЧТО БЛЯДЬ

Date: 2011-01-20 03:46 am (UTC)
wizzard: (Default)
From: [personal profile] wizzard
> вы пропустили фразу

Извиняюсь, виноват. Это я ее не процитировал. Речь о фразе "А, ну да, на Ровенскую АЭС все-таки пролоббировали каких-то студентов с "отказоустойчивыми серверами на свободном софте на базе обычных ноутбуков". Что вышло - см. новости."

Profile

love5an: (Default)
Dmitry Ignatiev

June 2020

S M T W T F S
 123456
78910 111213
14151617181920
21222324252627
282930    

Most Popular Tags

Style Credit

Expand Cut Tags

No cut tags
Page generated Jul. 17th, 2025 12:50 am
Powered by Dreamwidth Studios