Здравствуйте, Aлeкceй, Вы писали:
A>Здравствуйте, Kernan, Вы писали:
A>>>Возможно. Одна из них создавала руководила интерфейсом для вин7 и 8, а также ввела риббон. K>>Мне риббон понравился.
A>Мне понравился риббон в восьмерке, а в офисе никак привыкнуть не могу.
Ты шутишь?! Я офисом не мог нормально пользовтаь из-за менющек/панелей до рибонна.
Здравствуйте, Ночной Смотрящий, Вы писали:
LC>>Еще раз повторяю вопрос, какие инновации были задавлены Синофски?
НС>Тебя в какой области интересует? Из свежего, к примеру, WPF.
Тупое унылое дерьмо. Перформанс на нуле. Возможности по реюзанию кода на нуле. Сильверлайт получился настолько убогим, что пришлось 4 раза клонировать что бы хоть чтото вышло. И тож самое — перформанс дерьмо, контролы дерьмо, возможности по реюзанию кода на нуле.
LC>>А что ты предлагаешь вместо COM?
НС>Ничего. Пусть СОМ доживает в своей нише спокойно.
Дотнетная команда доказала неспособность решать хронические проблемы с перформансом.
LC>> Как бы ты, поступил на его месте?
НС>Вообще бы не трогал API по возможности и уж точно не создавал еще один дотнет, только другой.
И утопил бы всю винду. Синофски буквально вытащил винду из говна, в котором она оказалась благодаря менеджед-специалистам(и висте).
Здравствуйте, Aлeкceй, Вы писали:
A>Будет интересно почитать.
Так, давайте начнем. Сначала определимся с постановкой вопроса, если я правильно понял, то вопрос стоит в том, почему был выбран нативный WinRT основанный на COM, вместо .NET.
По идее, тут нужно понимать, какие цели и задачи ставила перед собой Microsoft в данном вопросе. В первую очередь, требовалась замена сильно устаревшей и не отвечающей требованиям времени Win32 API, которой около 20 лет уже. При этом, новое API должна удовлетворять принципам универсальности и общности. Тут и кроется ответ на наш вопрос.
И тут .NET не проходит по многим критериям. Как бы она не задумывалась изначально общей языковой платформой (CLR), она накладывает сильные ограничения. Одной из них, является система типов. У каждого языка и среды, есть разные и уникальные системы типизации, а то и вовсе они могут быть динамически типизированными (относительно недавно только была внесена поддержка динамической типизации). .NET навязывает всем свою систему типов.
Следующим барьером является Garbage Collector. .NET навязывает всем свой GC. Хотя на самом деле, GC по сути является частностью реализации. И у каждой среды, свой GC наиболее подходящий под их задачи. Например, GC у JS и GC .NET'а это два очень разных по внутренней реализации механизма.
И наконец, производительность. Что бы не говорили адепты управляемых сред, каким бы эффективным и производительным ни был GC, у него все равно есть задержки, какими бы маленькими и не заметными для пользователей они не были. Все равно есть класс приложений и задач, где это недопустимо и необходимо всегда детерминированное время отклика. Соответственно, среда должна позволять ручное управление памятью, там, где это нужно. Сам сейчас работаю в такой области и это действительно важный фактор.
С другой стороны. Начиная где-то с 90-х годов у нас есть COM. Который уже показал себя в бою, не навязывает никаких технических деталей реализации GC и системы типов. Позволяет писать высокопроизводительные системы в нативном коде. И что очень важно, почти у всех сред и языков уже есть биндинги к COM'у. Эдакий клей, соединяющий все и вся. В том числе, у .NET'а тоже отличные биндинги к COM'у. И вполне логично и здраво было взять COM как за основу новой API.
Если посмотреть на конкурирующую Apple, они пошли другим путем, перешли на LLVM, что тоже является очень здравым решением для них.
И только Google выбрали Java, на чем кстати и сильно обожглись, пришлось им все таки потом выпускать Android NDK что дает возможность писать нативные приложения. Теперь у них все это на костылях, а могли бы изначально выбрать более общую платформу, а потом с боку приклеивать более частные фреймворки.
[]
LC>И тут .NET не проходит по многим критериям. Как бы она не задумывалась изначально общей языковой платформой (CLR), она накладывает сильные ограничения. Одной из них, является система типов. У каждого языка и среды, есть разные и уникальные системы типизации, а то и вовсе они могут быть динамически типизированными (относительно недавно только была внесена поддержка динамической типизации). .NET навязывает всем свою систему типов.
не вижу ничего страшного
LC>Следующим барьером является Garbage Collector. .NET навязывает всем свой GC. Хотя на самом деле, GC по сути является частностью реализации. И у каждой среды, свой GC наиболее подходящий под их задачи. Например, GC у JS и GC .NET'а это два очень разных по внутренней реализации механизма.
а что, GC у JS хороший?
c++/cli?
LC>И наконец, производительность. Что бы не говорили адепты управляемых сред, каким бы эффективным и производительным ни был GC, у него все равно есть задержки, какими бы маленькими и не заметными для пользователей они не были. Все равно есть класс приложений и задач, где это недопустимо и необходимо всегда детерминированное время отклика. Соответственно, среда должна
позволять ручное управление памятью, там, где это нужно. Сам сейчас работаю в такой области и это действительно важный фактор.
c++/cli
LC>С другой стороны. Начиная где-то с 90-х годов у нас есть COM. Который уже показал себя в бою, не навязывает никаких технических деталей реализации GC и системы типов. Позволяет писать высокопроизводительные системы в нативном коде. И что очень важно, почти у всех сред и языков уже есть биндинги к COM'у. Эдакий клей, соединяющий все и вся. В том числе, у .NET'а тоже отличные биндинги к COM'у. И вполне логично и здраво было взять COM как за основу новой API.
Здравствуйте, hi_octane, Вы писали:
M>>А в чем собственно hell?
_>В том что эта технология совершенно не ориентирована на программистов, тех кто должен её использовать.
Вот как, на кого же она ориентирована? Ну и перечисли тогда уже технологии ориентированные на программистов, очень интересно послушать.
Успешность технологии зачастую проверяется временем, COM — долгожитель, хорошо зарекомендовавший себя в различных по сложности программах. Это не значит, что его нужно пихать куда только можно, но зачастую решения на базе COM превносят в программу модульность, делают ее менее монолитной, легко масштабируемой + не будем забывать о таких приятных вещах как инкапсуляция кода и возможность взаимодействия с компонентами разработанными на других языках, том же .Net.
_>Абсолютно все ошибки выносятся в рантайм. Вот получил ты IUnknown — что он может — ты не знаешь, документация врёт, автокомплит молчит. Вот пишешь ты реюзабельный компонент, какой IХренЗнаетЧто обязательно поддержать чтобы всё завелось способа узнать нету. А неудачный каст для многих приложений — тупо ошибка в рантайм. Кодами возврата HR пользуются только в самой MS, все остальные только S_OK, и E_FAIL. Стэктрэйса ошибки нету, сиди думай на входе там сфэйлилось, или глубоко зашло. Забытый AddRef — утечка памяти, лишний Release — случайный прострел, с этого момента всё может сыпаться случайным образом, а может и дальше работать.
Много буков, мало смысла
Складывается впечатление, что ты дааааааалек от темы.
1) Что значит "документация врет"? Открой для себя OleView или директиву #import
2) "получил ты IUnknown — что он может — ты не знаешь, ...," — он может вернуть тебе нужный интерфейс
3) "автокомплит молчит" — я чего-то не понял или ты полсыаешь лучи поноса IntelliSense-y
4) "Кодами возврата HR пользуются только в самой MS, все остальные только S_OK, и E_FAIL" — рукалицо) открою тебе страшную тайну, HRESULT предоставляет диапазон для кастомных ошибок, а такие интерфейсы как IErrorInfo... позволяют получить текстовую информацию. (конечно это должно поддерживаться используемым com_объектом). Не нравиться HRESULT юзай _com_ptr_t
5) "Забытый AddRef — утечка памяти" — используй смарт поинтеры и не думай об этом вообще — _com_ptr_t и CComPtr к твоим услугам.
_>Да, когда документация врёт...
Имхо, диагноз такой: ты не разобрался в теме, зато немного понаступав на грабли кричишь громче всех, что COM — гавно. У этой технологии есть болезни, как и у любой другой, но с её помощью уже сделали и продолжают делать сложные и качесвтенные продукты.
В том что эта технология совершенно не ориентирована на программистов, тех кто должен её использовать. Абсолютно все ошибки выносятся в рантайм. Вот получил ты IUnknown — что он может — ты не знаешь, документация врёт, автокомплит молчит. Вот пишешь ты реюзабельный компонент, какой IХренЗнаетЧто обязательно поддержать чтобы всё завелось способа узнать нету. А неудачный каст для многих приложений — тупо ошибка в рантайм. Кодами возврата HR пользуются только в самой MS, все остальные только S_OK, и E_FAIL. Стэктрэйса ошибки нету, сиди думай на входе там сфэйлилось, или глубоко зашло. Забытый AddRef — утечка памяти, лишний Release — случайный прострел, с этого момента всё может сыпаться случайным образом, а может и дальше работать.
Да, когда документация врёт и не знаешь во что захотят тебя скастить я вполне реальные случаи из жизни описываю. Пару лет назад под IE аддон с кастомным отладчиком JS/DOM писал. Прям окунулся в конец прошлого века, как морж в прорубь. Сделал логгер для QueryInterface и скрупулёзно копировал в Notepad все приходящие IID'ы А то глубоко оно зашло или нет проверял (гусары молчать!) по мультимедиа таймеру . И если бы не утёкшие сорцы древнего IE, хрен бы дописал. Так это для IE производства самой MS, в которой качество документации и протестированность работы на высшем уровне. А для обычных контор выпускающих обычный софт, и меряющих затраты на разработку человекочасами, COM это просто hell как по затратам времени, так и по и качеству того что получается на выходе.
LC>Дело в том, что с ним уже имеют дело, более двадцати лет.
Вынуждены иметь дело. Многие части Shell, целиком IE, Office, DirectX, другие системные API даны только в виде COM. Хочешь не хочешь а пользоваться будешь. Придётся высунуть наружу COM если хочешь написать скриптуемое приложение. Но в данном случае альтернативой могло быть что угодно. А за пределами вынужденного использования COM не очень-то выбирают. Круто сказать что почти все игры используют COM. Но они не COM используют, а DirectX. Выйди за пределы графического движка, и нету COM.
Ну и просто для поддержания флейма. IDispatch появился почти одновременно с IUnknown. Именно в момент его появления команде MS надо было схватиться за одно место и начать много думать над тем где же фейл. Но никто думать не стал.
Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>Сейчас ты мне расскажешь, что без всего этого можно спокойно жить
Да ты вообще там в своем ДытНоте опупел
Мы раньше, блин, месаги слали, блин, сэндмессадж, блин, гетпарент, блин, никаких этих ваших РилайтивСоурс, блин. Программирование вырождается. Новый API спасение. Учите С++, блин. ТекстИнпут не могут, блин. Да раньше, блин, я его одной левой. СетВиндоуЛонг, понял!
Здравствуйте, sysenter, Вы писали:
S>Глава подразделения Windows and Windows Live, вице-президент Microsoft Стивен Синофски сложил полномочия вскоре после запуска Windows 8. S>тут
Здравствуйте, Ikemefula, Вы писали:
НС>>СОМ, скрещеный с дотнетными метаданными вместо type library — да, огромная инновация, просто прорывная.
I>Это не инновация, это восстановление баланса, который был слишком перекошен в менеджед.
Инновация тут в том что наконец то создана равноправная компонентная среда в которой можно
легко и удобно создавать компоненты как на управляемых так и неуправляемых средах.
Это нужно было делать с самого начала NET эпопеи, а не заниматься тупой политикой по
вытеснению натива.
Здравствуйте, Геннадий Васильев, Вы писали:
ЕА>>Он за последние пару лет сделал все чтобы уничтожить сообщество лояльных разработчиков МС. История с Сильверлайтом не единственная, но самая показательная — никогда раньше не видел, чтобы компания сама топила новую, феноменально успешную технологию, несмотря на протесты клиентов в угоду личным предпочтениям. Причем делалось это очень демонстративно — типа "а хрен вы куда денетесь". Причем жесткая компания по утоплению сильверлайта началась практически сразу после интервью с Гатри, где он буквально клялся, что все будет развиваться.
ГВ>Я тут подумал, а какой смысл держаться за технологию, которую надо рихтовать под каждый новый браузер? Это ж ахиллесова пята, а не технология, разве нет? В противовес SL тот же JS поддерживают более или менее все, вне зависимости от их лояльности курсу MS.
Одно дело когда отказываешься от технологии по каким-то техническим или маркетинговым причинам и заранее объясняешь своим партнерам почему это сделано. Такой процесс практически всегда идет постепенно, люди успевают хотя бы отбить свои вложения и относятся с пониманием.
Другое дело когда ты активно топишь технологию, потому что у тебя война с отделом, который ее разрабатывает, при этом половина представителей Микрософта говорит, что ничего круче Сильверлайта нет и мы будем это развивать, а другая половина, что Сильверлайт это говно, и его использовать не надо. Офигенно эффективный стиль руководства.
ЕА>>По мне так то, что избавились от Синофского, лучшая новость о Микрософте для разработчиков
ГВ>Я этого оптимизма не разделяю, но поглядим.
Я тоже не уверен, что они теперь результаты такого руководство смогут исправить — поглядим.
Здравствуйте, Ikemefula, Вы писали:
ЕА>>Наверно это какой-то другой сильверлайт . У меня есть проекты которые на 1000-х компов по всему миру работают на всяких разных браузерах и компах. Была проблема с некоторыми версиями фаерфокса — плагин иногда зависал, все остальное в пределах статистической погрешности. Наоборот, первая технология в моей практике которое тупо везде, где заявлено работает, причем одинаково.
I>1000 компов это очень мало. У меня был первый опыт SL, втыкал в него всего три месяца и первый пробный "тираж" был на полторы тыщи юзеров.
1К — это очень мало, а 1.5К — это уже достаточно. Интересная теория.
I>Оказалось, все не так, процентов тридцать юзеров вообще не смогли войти в клиент за отсутствием клиента. Пришлось делать кастомную страничку инсталяции сильверлайта, что бы они не пугались.
Не пугались чего, картинки "у вас не установлен SL, нажмите сюда"?
I>Потом пришлось прикрутить табличку на счет совместимости браузеров, т.к. у многх оказалась какая то экзотика.
Какая же, интересно? ЕМНИП уже второй раз вопрос звучит.
Собственно из "проблем" аж одна: вы не оповестили дополнительно юзеров, что надо доставить sl а они и ой. Юзеры — они такие, на кнопочку "вы выиграли Айфон, нажмите сюда что бы скачать" смело давят, а на "установите флеш/сильверлайт/java" — робко прячут.
У sl по большому счёту на клиенте есть аж два состояния. "Работает" и "на работает". Что-бы перевести из второго в первое обычно надо просто проинсталить клиент. Судя по вашему описанию никаких проблем кроме установить у вас не встретилось. О чём и речь.
В отличии от js, где в зависимости от есть "не работает вообще", "работает так, что лучше бы не", "очень сильно глючит но всё-таки работает", "работает, но как-то очень уж странно", "работает, но совсем не так, как в ХХХ" и еще вагон с тележкой всякого даже на совсем не экзотических броузерах. А с экзотикой, на которую и даже sl нету — так там проще повеситься сразу.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>ИМХО, НС тут имеет в виду, что пользователи купят устройство с SL чтобы пользоваться SL-приложениями. При таком раскладе — да, андроид остаётся за бортом. Правда, расклад слегка фантастический.
Здравствуйте, vdimas, Вы писали:
V>Я же говорю, вы не туда и не тот порядок цифр смотрите. Покажешь мне такой рендерер, который рисует сцену за сотню ms? То-то... А задержки именно такие.
Давайте заканчивать цирк. Вам в 100й раз сказали, что проблемы не в очереди рендерера (если рассуждать логически, то рендер напрямую в UI-потоке должен тогда тормозить ещё сильнее).
Здравствуйте, sysenter, Вы писали:
S>Глава подразделения Windows and Windows Live, вице-президент Microsoft Стивен Синофски сложил полномочия вскоре после запуска Windows 8. S>тут
S>С сегодняшнего дня, 13 ноября, обязанности Синофски будут разделены между двумя женщинами — Джулией Ларсон-Грин (Julie Larson-Green) и Тэми Реллер (Tami Reller). Первая будет отвечать за разработку всех новых продуктов семейства Windows и аппаратного обеспечения. В свою очередь, Реллер возьмет на себя ответственность за бизнес-развитие платформы. Обе будут подчиняться генеральному директору Microsoft Стиву Балмеру (Steve Ballmer).
Вот теперь точно веднекапец
Бабы быстренько доведут винду до полного говна
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Но дело, как я уже говорил, вовсе не в WinRT. WinRT сам по себе, в принципе, не так уж и ужасен, хоть и не шедевр. Проблема в другом — Синовский вел себя как носорог — кидался на все, что не соответсвовало его представлениям о прекрасном. Истории с Реем Оззии или совсем свежая с Гатри — ты как, считаешь что это нормально, такое поведение со стороны второго человека в компании? По мне так нет.
Что-то у меня складывается обратное впечатление, что он чуть ли не единственный адекватный руководитель в MS:
Count Microsoft’s Dare Obasanjo as a member of Team Steven:
The way things get done in Steven’s organizations is so straightforward it hurts. You spend some time thinking about what you want to build, you write it down so the entire team has a shared vision of what they’re going to build and then you build it. The part where things become contentious is that getting things done (aka shipping) requires discipline. This means not changing your mind unless you have a good reason to after you’ve decided on what to build and knowing when to cut loses if things are coming in late or over budget.
Примерный перевод:
Метод Синофски прост, как дубина. Вы некоторое время обдумываете, что хотите сделать, потом записываете, чтобы вся команда имела представление о происходящем, и — делаете задуманное. Момент, где всё становится больно и неприятно — что дальше нужна определённая дисциплина. Это означает, что нельзя ничего менять, коль скоро вы определили, что делать и где остановиться, если опаздываете.
Респект и уважуха такому руководителю. Зная любовь апологетов дотнета к обещаниям светлого будущего, я не удивлён, что эта мечтательность не ужилась с политикой Синофски. Можно даже сценарий представить:
- Что именно?
— Примерно это!
— Когда?
— Скоро!
— На..й!
Гы-гы.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Есть одно "но", которое, на мой взгляд, перекрывает всё остальное. Одно "не такое" назначение в MS — и привет, потому что все реализации следуют в кильватере MS
НС>Ну так я ж говорю — лично я согласен и на коллективное творчество в этом плане. Лишь бы не навязывали очередную унылую херню на тему HTML+JS. Только альтернатив SL и что-там-у-жабы-аналогичное что то не видать.
Ну вот и займись материализацией своих представлений о прекрасном. Контрибуторы, поди, везде нужны.
Просто получается так, что в погоне за представлениями о прекрасном будущем ты (и подобные тебе) как будто не видят вполне реальных проблем, которые окружают основного "продвигателя" этой самой технологии. Синофски виноват, Синофски виноват... Но я вот не знаю, у меня лично складывается всё более отчётливое впечатление, что не разгони Синофски дотнетчиков, так семёрка была бы ещё более мрачным творением, чем Виста, да и вышла бы хрен знает, на сколько позже. А деньги-то для компании кто зарабатывает? Сильверлайт, что ли?
Но это — так, бездоказательные домыслы, разумеется.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Видимо потому что все возможности WinRT С++/CLI покрывает как бык овцу. Но у С++/CLI был фатальный недостаток — его писал не Синовский. Зато Синовский в свое время ваял СОМ 2.0, похороненный после старта дотнета. Видимо, закрытие этого проекта оставило глубокий след в его душе. И когда он получил в свои руки огромную власть, он сделал то что сделал. Хотели идеи 15-летней давности? Кушайте теперь, не обляпайтесь. Инновации, ять ...
Дотнетчики допоказали полную несостоятельность при решении проблемы перформанса своих приложений. По этой причине пришлось срочно реанимировать то, что изначально обладало перформансом.
Здравствуйте, vdimas, Вы писали:
V>Я вообще не понимаю возмущение дотнетчиков... Когда-то поддержка тем WinXP обходилась в нейтивных GUI-приложениях куда как дороже по трудоёмкости, чем миграция WPF-приложений на WinRT. Эта миграция простая и дешевая, и стоит переписанного порядка 10% кода, связанного исключительно с GUI.
V>Сорри, но охать по поводу перехода на более шуструю технологию — вот уж действительно ретроградство, как оно есть.
Я, как возмущенный дотнетчик, причем уже с опытом перевода проектов на сию более шуструю технологию, отвечу:
1) Это более шустрая технология доступна только в вин8, и только на стороне метро (Если бы была возможность юзать на десктопе, и была бы поддержка вин7 — большая часть возмущений бы прошла)
а так получили прекрасный выбор между шустрым WinRT который использовать нигде нельзя, и тормозным WPF, в котором никто проблемы с перфомансом фиксить не собирается
2) Это более шустрая технология даже по сравнению с сильверлайтом в текущей версии на уровне детской поделки, заточена в основном под планшетные приложения класса "Прогноз погоды". С WPF даже сравнивать смешно.
ну вот например забыли сделать события на ввод текста, в результате нельзя нормально написать даже банальный контрольчик с вводом по маске, уже не заикаясь о тестовом редакторе или редакторе кода с подсветкой
Здравствуйте, michae1, Вы писали:
M>Имхо, диагноз такой: ты не разобрался в теме, зато немного понаступав на грабли кричишь громче всех, что COM — гавно. У этой технологии есть болезни, как и у любой другой, но с её помощью уже сделали и продолжают делать сложные и качесвтенные продукты.
а рабы уже построили в Египте классные пирамиды, без всяких экскаваторов. Откажемся от экскаваторов и вернем рабство? Ведь проверенная временем технология
Здравствуйте, Ночной Смотрящий, Вы писали:
LC>>WPF живет и здравствует.
НС>Развитие остановлено.
и правильно. Нахрен не упало дерьмо, которое не может выдать перформанс.
НС>А нужно? Вот лично мне — нет, не нужно.
А на кой ляд твое "лично мне" нужно ?
НС>А зачем тогда WinRT вообще нужен? Красивые объектные обертки и так уже для Win32 есть в любой зрелой платформе, capability based песочницу можно и на старом плоском Win32 сделать, разметив экспортируемые функции, будет не хуже. Что то еще?
Заколупаешься пыль глотать. Перформанс приходится все еще нативными средставми обеспечивать. Отсюда ясно,что нативные средства должны быть достаточно продвинутыми.
Здравствуйте, iLikeCookies, Вы писали:
LC>Она является неким склеивающим промежуточным этапом между Managed and Unmanaged средами. Для облегчения портирования C++ проектов под .NET. Сам провел кошмарные два года занимаясь Managed C++, а затем C++/CLI проектами, бессмысленная и не нужная трата времени
Не согласен. На C++/CLI удобно писать высокопроизводительный код в виде C++ классов, внутри которых много Win32 API вызовов.
LC>И этот код потеряет свойство портабельности. Ладно, допустим и этого нам не надо. Что мешает этот высокопроизводительный код написать на голом C++ и воспользоваться P/Invoke?
P/Invoke для классов? Можно конечно, но только если через P/Invoke передавать COM интерфейсы, что еще не удобнее чем C++/CLI
Здравствуйте, FR, Вы писали:
FR>[...] меня записывают в менеджедненавистники
За невосторженность, а не за всё то, что ты перечислил. Синофски, как я понимаю, за то же невзлюбили. Так что, FR, у тебя хорошая компания!
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
_>>А то глубоко оно зашло или нет проверял (гусары молчать!) по мультимедиа таймеру КЛ>это как?
А вот так. Ожидалась довольно продолжительная работа, а оно вылетало вместо того с E_NOINTERFACE. Какой интерфейс, кому нужен, зачем — хрен узнаешь. После долгих попыток угадать по астральным картам документации понизил частоту компа, включил таймер, и отключая у себя поддержку всяких IXyz смотрел через сколько оно вылетает с ошибкой. Типа там без IObjectWithSite через 10мс, без какого-то ещё через 12, а с моей проблемой где-то через 18мс. Понятно непредсказуемые разбежки туда-сюда, но локализовать место и проблемный интерфейс всё-таки удалсь.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>"Допиливать" и "отсуствует" — не одно и то же, не находишь?
Тут, видишь ли, вопрос в объеме работы. Написать простенький интерпретатор IL + рендерер задача далеко не смертельной сложности, существенно проще написания современного интерпретатора JS. При этом даже интерпретатор IL порвет по перформансу навороченный JS на британский флаг. А простенький JIT позволяет в браузере делать то, что на JS невозможно в практическом плане.
При этом я даже не агитирую за конкретно сервелат. Умер и умер. Но замена интерпретируемого прямо по исходнику JS с кучей нюансов + HTML DOM, который как то очень скромно стандартизирован, на жесткие стандарты промежуточного байткода и лейаут-движка, пусть никак с МС и не связанного, это для веба огромнейший шаг вперед.
А пока я вижу только регресс. Задавливаем технологически намного более продвинутый и хорошо опробованный даже на более дохлых армах сервелат, а вместо него выкатываем унылый HTML+JS, который, даже если оставить за кадром стоимость разработки, совершенно непонятно как поведет себя в десктопной и куцей на ресурсы среде.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Есть одно "но", которое, на мой взгляд, перекрывает всё остальное. Одно "не такое" назначение в MS — и привет, потому что все реализации следуют в кильватере MS
Ну так я ж говорю — лично я согласен и на коллективное творчество в этом плане. Лишь бы не навязывали очередную унылую херню на тему HTML+JS. Только альтернатив SL и что-там-у-жабы-аналогичное что то не видать.
ГВ>При этом JS такой проблеме не подвержен
JS пока что очень дорог в разработки. Тривиальнейшие с точки зрения десктопного гуя вещи в вебе до сих пор преподносятся как откровение. В результате в различных аппсторах просте окиян разливанный клиентов к популярным веб-проектам. Веб, увы, остается зоной уродских технологий разработки.
Здравствуйте, Ikemefula, Вы писали:
I>Хоткеи нужны для клавиатуры, для тачскрина они не нужны. Есть жесты, есть кнопки, которые можно показывать в самый нужный момент без каких либо проблема, есть тулбары. Вобщем все что надо.
И клавиатура, выплывающая на весь экран и всё это заслоняющая.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Ночной Смотрящий, Вы писали:
I>>При чем здесь "из винды" ?
НС>Мы тут в основном за винду беседовали.
Про винду было, а про вытеснение чего то "из винды" — не было.
НС>И какими же иезуитскими методами МС сумел такого добиться? С++ вроде никуда не делся. А может все дело проще — разработка на дотнете сильно дешевле?
Дешевле при полном провале в перформансе например и во многих сценариях с памятью. С++ сдулся очень сильно, раньше на нем практически все писалось.
Дотнетчики обещали классный перформанс, но сдулись. Обещали классный GC, но сдулись. Обещали быстрый запуск и сдулись. Вобщем много чего обещали и ничего из этого не вышло.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>При всём при том, я вполне допускаю, что Баллмеру это не понравилось, как допускаю и то, что Синофски в определённом смысле "узколобый рационалист", т.е. — может пропустить что-то потенциально интересное. Но повторюсь: результат политики Синофски мне нравится гораздо больше, чем результат политики обобщённо — "дотнетчиков". Дабы избежать спекуляций: дело не в том, что кто-то где-то что-то меняет — это как раз нормально. Дело в том, что windiv предлагает готовые изменения в виде продукта весьма неплохого качества, которым можно пользоваться, а дотнетчики — уж больше десяти лет кормят обещаниями светлого будущего. Понимаешь?
Да уж. По ходу плюсисты — самые закомплексованные из всего сообщества программистов. ДотНет-а в коде Винды никогда толком и не было, а им все-равно хочется его оттуда изжить. Ветряные мельницы, как смысл жизни.
Здравствуйте, Геннадий Васильев, Вы писали:
MM>>Да уж. По ходу плюсисты — самые закомплексованные из всего сообщества программистов. ГВ>Я так понимаю, что ты не врубился, о чём идёт речь, поэтому на всякий случай перешёл на личности. Ну, дело твоё, разжёвывать не буду.
Я тебя умоляю, ты сам тут давно уже перешел на личности. Иначе, я уж и не знаю, к кому применить термин "дотнетчики", как ни ко мне, например. Что касается понимания, то и здесь проблемы у тебя. Никто не предлагает слепо втютрить ДотНет в ядро и будь, что будет. Речь идет о том, чтобы делать ДотНет лучше, развивать. Та же WPF — очень хороша идеей, но слаба реализацией, в частности в нативном (внезапно!) рендеринге. Вот и пускай ДотНет-чики спокойно занимаются улучшением реализации. Пускай windiv помогает им в этом, раз уж ДотНет является одной из ключевых технологий в мире Windows. Синофски вместо этого разгоняет команду WPF и SL, куче людей затыкает рты, вынуждает MVP, вроде Джоша Смита, свалить в iOS. Уж и не знаю, что здесь радостного для Microsoft. Разве что, "подобные тебе" утешатся эфемерному изгнанию никогда не присутствовавшего в ядре ДотНета.
НС>Виндив и wpf team. Спасибо, насмешил. Это как конфликт Путина и мэра усть-зажопинска.
Существование города с таким названием крайне малоправдоподобно, так, как для этого должна быть речка "зажопинск", на впадении которой в другую реку и должен бы стоять Усть-Зажопинск...
Какая-нибудь Усть-Моча или Усть-Задница намного правдоподобнее звучат...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Здравствуйте, MxMsk, Вы писали:
MM>Привлекайте вы своих геймеров (половина из которых, кстати, поставит пиратскую Винду), но и корпоративщиках не забывайте. Они тоже покупают Windows в огромных количествах.
[...] MM>Я говорил с точки зрения .Net разработки. Так вот в ее случае получается, что WPF встала, вместе со всеми своими багами и недоработками, а перейти на WinRT означает выбросить всех заказчиков с Windows 7 и ниже. С GDI+ та же самая фигня вне ДотНета.
Подумалось, что тут можно ответить, скомбинировав риторические приёмы разных форумчан.
Начать, наверное, стоит а-ля НС:
Я понимаю, что у вас в почёте старперская позиция — чем меньше изменений, тем лучше. Но в современном мире кто не меняется, тот не выживает!
А дальше добавить что-то в духе VladD2 (пятилетней давности):
WPF — это замшелые стереотипы и признак костности мышления.
Потом посочувствовать собеседнику в стиле IT:
Конечно, обидно: столько сил было вложено в изучение технологии SL и WPF.
И дополнить всегда взвешенной и непробиваемой позицией в духе AndrewVK:
WPF? Ни за что! Ему надо электростанцию на телефон вешать.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, MxMsk, Вы писали:
ГВ>>При всём при том, я вполне допускаю, что Баллмеру это не понравилось, как допускаю и то, что Синофски в определённом смысле "узколобый рационалист", т.е. — может пропустить что-то потенциально интересное. Но повторюсь: результат политики Синофски мне нравится гораздо больше, чем результат политики обобщённо — "дотнетчиков". Дабы избежать спекуляций: дело не в том, что кто-то где-то что-то меняет — это как раз нормально. Дело в том, что windiv предлагает готовые изменения в виде продукта весьма неплохого качества, которым можно пользоваться, а дотнетчики — уж больше десяти лет кормят обещаниями светлого будущего. Понимаешь? MM>Да уж. По ходу плюсисты — самые закомплексованные из всего сообщества программистов. ДотНет-а в коде Винды никогда толком и не было, а им все-равно хочется его оттуда изжить. Ветряные мельницы, как смысл жизни.
Не надо передёргивать. Речь про разработку софта под винду а не разработку компонентов самой винды. Дотнетчики из микрософта обещали перформанс и сдулись. Потому .нет повторяет подвиг джавы — уходит во всякие серверные области. Но там тухло для него, ибо все крепко и прочно завязано на джаву, ибо это кроссплатформенная технология. У дотнета кроссплатформенности около нуля.
Здравствуйте, Ikemefula, Вы писали:
>>Поэтому утверждение, что windiv кормит команду WPF слишком упрощенное. Далее, откуда взялось мнение, что WPF мешает windiv-у работать? I>Перформанс например мешает.
Ты голову себе Макбуком отсидел, Павлик. WPF не мешала ни Висте, ни Семерке, что она сделала Восьмой тем более непонятно.
Здравствуйте, iLikeCookies, Вы писали:
LC>Во первых, давайте уточним, о какой проблеме Вы говорите? Что именно Вам не понятно? Зачем Вы мне все время предлагаете C++/CLI
Видимо потому что все возможности WinRT С++/CLI покрывает как бык овцу. Но у С++/CLI был фатальный недостаток — его писал не Синовский. Зато Синовский в свое время ваял СОМ 2.0, похороненный после старта дотнета. Видимо, закрытие этого проекта оставило глубокий след в его душе. И когда он получил в свои руки огромную власть, он сделал то что сделал. Хотели идеи 15-летней давности? Кушайте теперь, не обляпайтесь. Инновации, ять ...
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Ну вот и займись материализацией своих представлений о прекрасном. НС>У меня нет таких денег. И еще мне надо кушать.
Странно, как о тебе речь зашла, так сходу представления о прекрасном куда-то сдвинулись. А как про MS — так она, видите ли, должна, хоть ты тресни, мечту воплотить.
ГВ>>Просто получается так, что в погоне за представлениями о прекрасном будущем ты (и подобные тебе) как будто не видят вполне реальных проблем, которые окружают основного "продвигателя" этой самой технологии. НС>Ты вообще о ком?
Об MS, естественно.
ГВ>> Синофски виноват, Синофски виноват... Но я вот не знаю, у меня лично складывается всё более отчётливое впечатление, что не разгони Синофски дотнетчиков, так семёрка была бы ещё более мрачным творением, чем Виста, да и вышла бы хрен знает, на сколько позже
НС>Видишь ли Гена, у тебя информации существенно меньше, чем даже у меня. Я уж не говорю о тех людях, которые с сабжем сталкивались непосредственно. И вот они почему то тоже высказывают похожие на мое мнения. Уже даже до лысого дошло, что Синовский приносит больше вреда, чем пользы.
Мнений по поводу Синофски высказывается много и разных. Почему я должен доверять мнениям твоих источников больше, чем тому, что нашёл в интернете? Понимаешь ли, есть такой нюанс, присущий человеческому общению: если речь идёт о личном общении, мы всегда склонны общаться с приятными нам людьми, мнения которых, в конечном итоге, не сильно отличается от нашего. Кроме того, в приватных разговорах мнение может быть высказано одно, а на публику — чуть другое. Отсюда я с некоторых пор перестал доверять мнениям, полученным через личные контакты — слишком много искажений, влияний посторонних факторов и т.п. Хрен поймёшь, одним словом.
Так вот, если абстрагироваться от эмоциональной компоненты мнений, то складывается такая картина: пришёл Синофски — навёл порядок. Смежники в таком режиме работать не могут и не хотят (творчество!!! инновации!!!) Отсюда у Синовски один выход — распинать эту шарашку чем дальше, тем лучше, желательно — вообще с глаз долой, чтобы под ногами не мешались. При этом пользователям результат его политики оказался очень даже по нраву (программистов я сейчас не касаюсь).
При всём при том, я вполне допускаю, что Баллмеру это не понравилось, как допускаю и то, что Синофски в определённом смысле "узколобый рационалист", т.е. — может пропустить что-то потенциально интересное. Но повторюсь: результат политики Синофски мне нравится гораздо больше, чем результат политики обобщённо — "дотнетчиков". Дабы избежать спекуляций: дело не в том, что кто-то где-то что-то меняет — это как раз нормально. Дело в том, что windiv предлагает готовые изменения в виде продукта весьма неплохого качества, которым можно пользоваться, а дотнетчики — уж больше десяти лет кормят обещаниями светлого будущего. Понимаешь?
НС>Но нет, некто Геннадий Васильев продолжает считать сабжа непризнанным гением разработки.
Выпускать продукты в срок и хорошего качества — это признак гениальности? Дотнетчики не перестают удивлять.
ГВ>>. А деньги-то для компании кто зарабатывает? Сильверлайт, что ли? НС>В том числе.
А по-моему, он наоборот оттягивает ресурсы компании в неизвестность. Вот смотри, допустим, я пишу некую веб-аппликуху для широкого пользователя. "Широкий юзер" придёт ко мне, в числе прочих, с устройств на Андроиде и iOS — мне желательно их всех обслужить. На хрена, скажите мне, я буду писать под SL если сам SL на этих устройствах поддерживается не пойми как? Да я вообще постараюсь воспользоваться минимальным подмножеством HTML и JS, которые без проблем поддерживаются всеми устройствами. И добро бы MS сама активно портировала SL на всё, что движется — так нет же, портированием занимаются снова не пойми кто, не пойми в каком статусе. А доля устройств с WP под микроскопом не видна. То есть для ISV, который хочет добраться до максимального числа пользователей, сильверлайт — как собаке пятая нога. Flash — и то лучше.
Нет, я понимаю, корпоративный сектор и т.п. — но корпоративный сектор покупает "платформу Windows" или "решение от MS" по причинам вроде TCO, а не ради того, чтобы программисты могли наслаждаться крутизной технологий. И здесь опять таки SL — ни к селу, ни к городу. То есть польза от него есть, но не наиважнейший параметр.
Так как же SL помогает деньги-то зарабатывать?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[40]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Ergo, никакой фантастической подковёрной борьбы не было, поскольку начальники с подчинёнными не сражаются по определению. НС>Нет там прямого начальник-подчиненный, есть разный вес.
Ну то есть власть, всё-таки есть? А раз есть власть над кем-либо, то он её попросту реализовал и всё. Безотносительно — хорошо это или плохо. Просто реализовал свои властные полномочия, формальные они или неформальные — не суть важно.
ГВ>> А toxic environment по-видимому, создавали в основном те, кто образовывал это самое environment НС>Таки Баллмер врет?
Зависит от точки отсчёта: если считать, что властитель должен носиться со своими подвластными как с писаной торбой — то "не врёт", а если считать, что подвластные должны "делать под козырёк" и не возникать, то скажем так, сознательно меняет оценки. Повторюсь, на мой взгляд, многих непонятных моментов удалось бы избежать при наличии формализованных отношений подчинения, которых, как я понимаю, не было и нет. А так — писькомерка сплошная: чья харизма длиньше, чей отдел больше бабла приносит и т.п. Короче, кто "круче" — тот и прав. Весело, я не спорю, даже в каком-то смысле "творчески", но мрак тот ещё. По сути — это и есть тот самый toxic environment, который может потечь ядом при любом неосторожном шаге.
А такой каток как Синофски просто взбудоражил это болото. Да, метафора болота мне нравится. Вот осушительная техника на болоте — это хорошо или плохо? Зависит от точки отсчёта: если смотреть с позиций лягушки — плохо, ей резко усложняют жизнь (toxic!!!). Если с позиций тех, кто прокладывает дорогу — хорошо, болото — это решаемая задача, а проблемы тритонов их не волнуют (хотя и toxic, ибо метан и т.п.). Ну а с позиции дорожного рабочего это грёбаное болото — вообще п...ц, как и руководство компании, которое направило его на осушение, но потом, вполне вероятно, он будет ещё и гордиться причастностью к прокладке дороги.
Всех троих можно понять и все три точки зрения имеют право на существование и больше того, все трое достойны определённого сочувствия.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, IT, Вы писали:
IT>Здравствуйте, drewet, Вы писали:
IT>>>Кто тебе сказал, что JS не надо допиливать под каждый новый браузер? Ты в курсе сколько кода для совместимости написано в том же jQuery. А SL работает везде ожидаемо одинаково. D>>То есть нигде не работает? А то я уже задолбался... чуть что — "Ля-ля тополя, нужен сервелат." Его че, как открываешь страничку где используется SL нужно каждый раз устанавливать?
IT>Давай обойдёмся без вот этого тупого тролинга. У меня вообще ни разу не было проблем с "как открываешь страничку где используется SL нужно каждый раз". Просто никогда. Речь идёт о большой финансовой компании и моим юзером может быть практически любой из десятков тысяч её работников по всему миру. То, что у тебя такие проблемы лично мне говорит прежде всего о кривых ручках ваших админов.
Родной мой, а ты где здесь тупой троллинг увидел, я уже закалупался, когда захожу на сайт не помню точно как называется, но вроде techday нау-мынау... и постоянно мне заявляет, что мне надо установить сервелат...
Здравствуйте, IT, Вы писали:
IT>Здравствуйте, drewet, Вы писали:
D>>Родной мой, а ты где здесь тупой троллинг увидел, я уже закалупался, когда захожу на сайт не помню точно как называется, но вроде techday нау-мынау... и постоянно мне заявляет, что мне надо установить сервелат...
IT>Ну так установи один раз? Тот же флешплеер, наверное, каждый месяц по пять раз обновляешь, а один раз сильверлайт установить в лом. Видимо тогда не будет повода здесь потролить.
Мда... Не надо думать, ты здесь один Д'Артаньян. Если бы я один раз установил и в последующие разы все было ОК, я бы даже и не думал сюда писать.
Здравствуйте, Cyberax, Вы писали:
MM>>А тебе зачем WinRT? Ты же Макбук купил. Или тебя MS заставила поставить WinRT? C>Это я про то, что свободы выбора на Винде всё меньше.
Да ну, чья бы корова мычала. Ты вложил бабки в самую закрытую экосистему в мире. После такого, все обвинения в ограничениях с твоей стороны — лицемерие.
Здравствуйте, iLikeCookies, Вы писали:
LC>По возможности он его и не трогал, Win32 осталась и останется надолго for bacward compatibility. И какой еще один .NET? Вроде он один, если не считать Mono. Но ты наверняка имеешь в виде WinRT под новым дотнетом, это не так, это не новый дотнет. Смею предположить, что ты хотел, чтобы увидеть вместо WinRT был .NET?
Я бы этого хотел. Мне интересно, почему везде пишут, что он не пригоден для смартов, но ведь вп7.5 шустро работал даже на 610.
Здравствуйте, iLikeCookies, Вы писали:
LC>Тут дело совсем даже не в производительности, тут все гораздо глубже. Могу объяснить более подробно, но не сейчас, т.к. вторую ночь подряд готовлюсь к презентации проекта Обещаю, как высплюсь и будет время еще выйти в онлайн, попробую более подробно описать все причины такого решения.
Здравствуйте, Aлeкceй, Вы писали:
НС>>Вообще бы не трогал API по возможности и уж точно не создавал еще один дотнет, только другой. A>Мне вот интересно, какова вероятность создания новой "убийцы" дотнета.
~0%.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Ночной Смотрящий, Вы писали:
LC>>Какие инновации? Как раз его детище WinRT и является огромным шагом и реальной инновацией.
НС>СОМ, скрещеный с дотнетными метаданными вместо type library — да, огромная инновация, просто прорывная.
Это не инновация, это восстановление баланса, который был слишком перекошен в менеджед.
Здравствуйте, iLikeCookies, Вы писали:
LC>Здравствуйте, Константин Л., Вы писали:
LC>>>Тут дело не в том, хороший он у него или плохой. Дело в том, что он у него свой. Кроме JS есть еще куча разных сред с еще более специфичными GC. Если мы возьмем .NET в качестве базы для нового API, то он должен реализовать все эти специфичные GC для каждой из этих сред. Должен будет предоставить отдельную реализацию GC для JS, отдельную реализацию GC для ...
КЛ>>удивительно, но эта проблема решена в c++/cli. я не понимаю, зачем вот это выделенное.
LC>Во первых, давайте уточним, о какой проблеме Вы говорите? Что именно Вам не понятно? Зачем Вы мне все время предлагаете C++/CLI, это инструмент совершенно для иных задач.
мне не понятно, почему в c++/cli смогли решить проблемы и гетерогенной системы типов, и разных моделей управления памятью и проч, а в новом winapi — нет.
LC>>>C++/CLI работает поверх CLR, соответсвенно, она тоже является managed средой. Да и вообще, задумана она была изначально как промежуточный этап в портировании проектов на C++ под .NET.
КЛ>>она является одновременно и managed и unmanaged. а ты рассказываешь что это невозможно.
LC>Она является неким склеивающим промежуточным этапом между Managed and Unmanaged средами. Для облегчения портирования C++ проектов под .NET. Сам провел кошмарные два года занимаясь Managed C++, а затем C++/CLI проектами, бессмысленная и не нужная трата времени
что именно трата?
КЛ>>палка обкатана и проверена многими поколениями неандертальцев, прости за аналогию.
LC>И ты прости, суть твоей аналогии не уловил.
суть такова, что все уже давно кроме палки знают другие инструменты
КЛ>>COM в текущем виде — единственно верный фейл, с ним никто не захочет иметь дело.
LC>Дело в том, что с ним уже имеют дело, более двадцати лет.
вопрос в том, кто с ним имеет дело. сейчас COM мало кто знает/помнит, а вспоминать тем более не захотят
Здравствуйте, edton, Вы писали:
E>Не согласен. На C++/CLI удобно писать высокопроизводительный код в виде C++ классов, внутри которых много Win32 API вызовов.
И этот код потеряет свойство портабельности. Ладно, допустим и этого нам не надо. Что мешает этот высокопроизводительный код написать на голом C++ и воспользоваться P/Invoke? Что мешает обернуть наш код в COM, и затем его уже дергать из .NET'а?
Другое дело, C++/CLI нужен тогда, когда вам нужно из проекта на C++ воспользоваться возможностями платформы .NET.
PS: Не обращайте сильного внимания на мою особую не любовь к C++/CLI, это моя старая юношеская душевная травма, до сих пор дает о себе знать
PPS: И да, я считаю, что C++/CLI получился ужасным монстриком, эдаким Франкенштейном
Здравствуйте, FR, Вы писали:
НС>>А пытались? FR>Судя по шуму вокруг NET и Longhorn ночей не спали все делали
Это доподлинно неизвестно, кто и что там делал. По единственному публичному билду Лонгхора, который PDC 2003, я бы не сказал что там прям так много дотнета было.
НС>>Там не только про managed обещали, только и native фич там тоже из обещанного почти нет. FR>Это да.
Следовательно, проблема была явно не в дотнете.
FR>>>Но переключив все ресурсы на NET НС>>Это утверждение нуждается в доказательствах. FR>Возможно не все, но большую часть
Доказательства все равно нужны.
FR>для С++ в VS2003, VS2005 и VS2008 никаких существенных изменений не было
А какие изменения ты ожидал от С++, если там сам язык меняется крайне медленно?
FR>, и я думаю если бы ms не охладел тогда к C++ то вполне возможно у нас новый FR>стандарт был бы не C++11 а скажем C++08.
Это вряд ли.
НС>>Чем конкретно? Тем что пришлось убухать кучу ресурсов на допиливание почти уже померших компиляторов VB и C# для поддержки WinRT, отняв их у Розлина? Тем, что CLR&Framework team в очередном релизе, вместо кучи важных вещей занималась в основном поддержкой WinRT? Обалденная польза, ничего не скажешь. FR>Я имел ввиду сразу с начала появления NET (> 10 лет назад) сделать так чтобы NET и натив могли FR>использовать общую компонентную среду с нативным ядром.
Они и так могут. Среда называется СОМ. Слыхал про такую?
Здравствуйте, FR, Вы писали:
FR>Конечно тормоза на чем угодно делаются, но почему-то на практике нативные GUI шустрые.
На моей практике почему то шустрость не зависит от нативности.
FR>Но без него вполне возможно что хоть какая-то поддержка C++11 появилась бы в FR>каком нибудь VS 2015.
Здравствуйте, hi_octane, Вы писали:
M>>Вот как, на кого же она ориентирована? Ну и перечисли тогда уже технологии ориентированные на программистов, очень интересно послушать. _>Она ориентирована на кого-то кто заранее знает всё о разрабатываемой системе и не совершает ошибок. Но явно это не программисты. Возможно даже вообще не люди.
Ни о чем.
Я так понимаю тебе не нравиться необходимость поддержки старых интерфейсов: IMyInterface, IMyInterface2...? Но в этом нет ничего плохого, более того это обязательное условие для любой публичной сущности: библиотеки, API, COM-объекта. Это даёт гаратнии, что через полгода супер-герой не наменяет все и вся и N-е количество программ завязанных на твой объект перестанут рабоать.
Ну а с точки зрения проектирования, COM-объект — черный ящик, предоставляет тебе конкретные интерфейсы, ты же имплементишь взаимодейтвие модулей. Что не так?
M>>Успешность технологии зачастую проверяется временем, ... _>Успешность технологии определяется тем насколько быстро её идеи заимствуют другие. То сколько времени технология прожила это скорее к тому насколько качественно MS поддерживает свои API.
Это скорее успешность идеи, а не технологии. Технология — не зависит от платформы и реализации, она описывает способы взаимодействия и представления, а тех. детали могут отличаться в разных системах. Посмотри на COM, в основе технологии описания посредством интерфейсов, подсчет ссылок, вводиться такое понятие как маршалинг и механизм получения объектов по идентификаторам CLSID... то есть общие понятия, все это вполне реализуемо не только в Windows.
M>>1) Что значит "документация врет"? Открой для себя OleView или директиву #import _>Какую-бы директиву открыть, чтобы реализуя IOleClientSite узнать что ещё конкретно должен поддерживать мой IOleContainer когда хостишь IE? А в дизайн-моде?
Ну открой для себя msdn, stackoverflow, google наконец
Чего пенять на всю технологию, если обжегся на IE? С другой стороны, посмотри на описание объектной модели офиса — все четко описано, пусть и не очень подробно.
M>>2) "получил ты IUnknown — что он может — ты не знаешь, ...," — он может вернуть тебе нужный интерфейс _>Спасибо кэп. А какой интерфейс мне нужен я могу узнать только из документации. Для сравнения — доброй половиной API java, .net, или даже забвенных VB6 или Delphi реально пользоваться вообще имея только поверхностные представления о теме и посматривая на то что предлагает автокомплит.
А как иначе? Откуда прога знает что ты хочешь? Или ты хочешь работать в стиле "дай мне то не знаю что"? так только в сказках
M>>4) "Кодами возврата HR пользуются только в самой MS, все остальные только S_OK, и E_FAIL" — рукалицо) открою тебе страшную тайну, HRESULT предоставляет диапазон для кастомных ошибок, а такие интерфейсы как IErrorInfo... позволяют получить текстовую информацию. (конечно это должно поддерживаться используемым com_объектом). Не нравиться HRESULT юзай _com_ptr_t _>Выделил существенное. Увы люди не идеальны, и если что-то может быть не сделано — сразу готовься к тому что так и будет. В тех же .net-ах, даже словив самый общий Exception я могу хотябы посмотреть откуда оно прилетело и локализовать ошибку.
и что? как недоработка того или иного COM-объекта кидает тень на технологию? Таже ситуация может быть с любой библиотекой.
M>>5) "Забытый AddRef — утечка памяти" — используй смарт поинтеры и не думай об этом вообще — _com_ptr_t и CComPtr к твоим услугам. _>Ой ли. Кучу раз встречался с однотипной ситуацией — есть иерархия объектов. Умный смартпойнтер делает Release корню, а он грохает всё что в него было вложено игнорируя их счётчики. Логика у иерархии такая, что без корня ничё работать не будет. Люди писали. Всё, крутись как хочешь. Либо ссылку на корень за собой таскай, либо сохрани её в надёжном месте. В итоге вместо облегчения слежения за временем жизни мы получаем усложнение. Формально это проблема библиотеки, но причина её — COM, а решать её мне.
Ничего не понял, иерархия чего? Опиши подробней.
M>>Имхо, диагноз такой: ты не разобрался в теме, зато немного понаступав на грабли кричишь громче всех, что COM — гавно. У этой технологии есть болезни, как и у любой другой, но с её помощью уже сделали и продолжают делать сложные и качесвтенные продукты.
_>Обожаю священные войны! И без заглядывания в MSDN ручками, без ATL, через IConnectionPoint событие протяну если дело до писькомера дойдёт Так что разобрался будь здоров. Только вот удовольствия от того что разобрался как-то не получил значит субьективно, для меня, как для программиста, технология хреновая.
Рад за тебя ты — монстр, еще бы IConnectionPoint да еще и без ATL
А удовольствие обычно от результата, может результат неочень?
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Я тут подумал, а какой смысл держаться за технологию, которую надо рихтовать под каждый новый браузер? Это ж ахиллесова пята, а не технология, разве нет? В противовес SL тот же JS поддерживают более или менее все, вне зависимости от их лояльности курсу MS.
Кто тебе сказал, что JS не надо допиливать под каждый новый браузер? Ты в курсе сколько кода для совместимости написано в том же jQuery. А SL работает везде ожидаемо одинаково.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, michae1, Вы писали:
M>Вот как, на кого же она ориентирована? Ну и перечисли тогда уже технологии ориентированные на программистов, очень интересно послушать.
Практически все менеджед
M>1) Что значит "документация врет"? Открой для себя OleView или директиву #import
Вот этот OleView может врать а работая через #import ты ничем не исправишь ситуацию.
M>2) "получил ты IUnknown — что он может — ты не знаешь, ...," — он может вернуть тебе нужный интерфейс
Если документация не врёт, то да.
M>3) "автокомплит молчит" — я чего-то не понял или ты полсыаешь лучи поноса IntelliSense-y
Не интелисенсу, а поддержке этой фичи в комиках.
M>4) "Кодами возврата HR пользуются только в самой MS, все остальные только S_OK, и E_FAIL" — рукалицо) открою тебе страшную тайну, HRESULT предоставляет диапазон для кастомных ошибок, а такие интерфейсы как IErrorInfo... позволяют получить текстовую информацию. (конечно это должно поддерживаться используемым com_объектом). Не нравиться HRESULT юзай _com_ptr_t
Первосортное дерьмо. Увеличивает время на разработку компонентов и затрудняет использование. Правильный путь — исключения, но в ком этого нет и никогда не будет.
M>5) "Забытый AddRef — утечка памяти" — используй смарт поинтеры и не думай об этом вообще — _com_ptr_t и CComPtr к твоим услугам.
Предполагается, что язык должен быть устаревший С++ ? А как же "многоязыковость" ком ?
Вобще, смартпоинтеры не панацея, т.к. все равно надо уделять внимание тому, как ты используешь указатели.
Более того, это внимание ничем нельзя скомпенсировать, никаких плюсов не дает, а даже один начинающий наплодит столько ошибок, что потом и за десять лет не вычистить.
_>>Да, когда документация врёт...
M>Имхо, диагноз такой: ты не разобрался в теме, зато немного понаступав на грабли кричишь громче всех, что COM — гавно. У этой технологии есть болезни, как и у любой другой, но с её помощью уже сделали и продолжают делать сложные и качесвтенные продукты.
У неё есть хронические болезни которые никак не лечатся уже лет двадцать.
Здравствуйте, michae1, Вы писали:
КЛ>>кроме того, советую все-таки попробовать пописать многопоточные приложения с обилием COM-а. КЛ>>Вот вы представляете себе чем threading model 'Free Threaded' отличается от 'Both', и в каких случаях КЛ>>нужен FreeThreadedMarshaller?
M>Опыт работы с COM у меня неплохой, но с такими задачами я не сталкивался, хотя спасибо за вопрос — почитал.
И этот человек утверждат, что аргумент hi_octane необоснованы Почитай еще, может найдешь их обосноваными
M>Я только не понял, что ж это доказывает и как относиться к теме, что разработка многопоточных приложений сложное занятие? Да, это и так понятно. Или что COM предлагает сложное решение? ну дык и задача непростая. С другой стороны какое альтернативное решение такой задачи (без COM)?
Да, ком предлагает слишком сложное решение. Городить на КОМ большие фремворки это самоубийство. Вот отдельные нативные феньки для низкоуровневого доступа или перформансу — очень даже и неплохо.
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>>Да, ладно — может он там классный технарь, но руководитель компании из него хуже некуда. Он за последние пару лет сделал все чтобы уничтожить сообщество лояльных разработчиков МС. История с Сильверлайтом не единственная, но самая показательная — никогда раньше не видел, чтобы компания сама топила новую, феноменально успешную технологию, несмотря на протесты клиентов в угоду личным предпочтениям.
I>Да ладно, где у ней феноменальность ? Аппаратное ускорение так и не смогли нормально прикрутить, это оно ?
Я имел в виду успешную с точки зрения внедрения на корпоративном рынке — со одной стороны имеем простую инсталляцию, автообновления и кроссплатформенность в пределах десктопа, в отличии от обычных клиентских технологий, с другой стороны получаем удобные и знакомые корпоративным разработчикам тулзы, единую среду разработки для клиента и сервера и избавляемся от цирка с несовместимостью браузеров, в отличии от html.
Да, это все вышеперечисленное фигня если мы пишем игрушки или что-нибудь массовое. Но для внутри-корпоративного софта — это мега-хит.
I>Перформанс даже там где есть это ускорение есть, и то умудрились уронить ниже плинтса. Цирк — когда не хватает аппаратного ускорения, надо открыть для себя битмап и рисовать прямо в ём, это быстрее аппаратно ускореных фич
Опять же, для корпоративных приложений перфоманса за глаза.
I>Сами же контролы не смогли внятные склепать
Ну это классическая проблема всех платформ от МС. (Надо же и производителям компонентов, вроде меня, на чем-то зарабатывать )
I>За одну ObservableCollection нужо поразбивать головы всем причастным вплоть до третьего колена
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, Евгений Акиньшин, Вы писали:
I>>>Да ладно, где у ней феноменальность ? Аппаратное ускорение так и не смогли нормально прикрутить, это оно ?
ЕА>>Я имел в виду успешную с точки зрения внедрения на корпоративном рынке — со одной стороны имеем простую инсталляцию, автообновления и кроссплатформенность в пределах десктопа, в отличии от обычных клиентских технологий, с другой стороны получаем удобные и знакомые корпоративным разработчикам тулзы, единую среду разработки для клиента и сервера и избавляемся от цирка с несовместимостью браузеров, в отличии от html.
ЕА>>Да, это все вышеперечисленное фигня если мы пишем игрушки или что-нибудь массовое. Но для внутри-корпоративного софта — это мега-хит.
I>Эээ, больше проблем, нежели с SL я никогда не видел. То не инсталится, то инсталится но не та версия, то настройки безопасности не те, то с сетью что то не так, то браузер не тот
Наверно это какой-то другой сильверлайт . У меня есть проекты которые на 1000-х компов по всему миру работают на всяких разных браузерах и компах. Была проблема с некоторыми версиями фаерфокса — плагин иногда зависал, все остальное в пределах статистической погрешности. Наоборот, первая технология в моей практике которое тупо везде, где заявлено работает, причем одинаково.
I>>>Перформанс даже там где есть это ускорение есть, и то умудрились уронить ниже плинтса. Цирк — когда не хватает аппаратного ускорения, надо открыть для себя битмап и рисовать прямо в ём, это быстрее аппаратно ускореных фич
ЕА>>Опять же, для корпоративных приложений перфоманса за глаза.
I>Для CRUD-приложений хватает. А как чего побольше, все, капут. А круд можно и на ajax накидать быстро, да еще мобайл будет на раз работать.
I>>>Сами же контролы не смогли внятные склепать
ЕА>>Ну это классическая проблема всех платформ от МС. (Надо же и производителям компонентов, вроде меня, на чем-то зарабатывать )
I>Не надо делать мега-контролы, надо делать базовый минимум который работает качетсвенно и не надо часами разбираться, что именно на что биндить, почему летят непонятные исключения и как сделать простые вещи.
Ну не знаю — там конечно много своих специфических проблем, но чтобы часами разбираться что на что биндить
Ну вроде логично все — событие полного сброса для этого и сделано — сообщает о неких глобальных изменениях, при которых проще в интерфейсе все перестроить, чем искать что изменилось. Что не устраивает-то?
Здравствуйте, Ikemefula, Вы писали:
IT>>Слишкомвысокость в основном из-за того, что объясняльшики и книжкописатели не то ообъясняют и не о том пишут. I>Это везде так. Ты вот свои видео про Немерле в таком же духе оформил, мой студент дважды заснул пока было объяснение синтаксиса в первые 18 минут
А твой студент был готов к этому видео? Вообще-то я его не для студентов делал, а для подготовленных C# девелоперов. Уверен, что в детском саду моё видео тоже имело бы успех только как средство быстрого усыпления. Но все те, кому я рекомендовал посмотреть видео про ПМ и АТД, а это были далеко не студенты, потом признавались, что вот теперь то они знают что это за хрень, ничего сложного, а типа раньше они думали, что это какой-то рокет-саинс.
Обучение должно быть направлено на определённую аудиторию. То, что рассказывают про SL направлено непонятно на кого. Свистелки типа 3D производят вау-эффект, но не дают никакого представления о том какие проблемы и как я могу решать с помощью этой технологии. Нигде ни в одной книжке не встречается упоминание о том, что в WPF и SL впервые в мэйнстриме сделана попытка отделения логики представления от логики поведения в базовых контролах. Не в пользовательских формах, а именно в контролах. А ведь это одна из самых ценных вещей в WPF. Да, о шаблонах рассказывается, о том, что они есть, но читатель на это дело тупо смотрит и не понимает зачем это нужно и нафига такие сложности. Нужно объяснить немного сути и дальше всё пойдёт гораздо легче и чататель будет воспринимать материал гораздо легче. Но похоже, что писатели сами этого ничего не понимают.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>А пыталась? Потому что те люди, которые этот рендерер делали, они, мягко говоря, совсем не звезды. И что мешало нанять кого нибудь вроде McSeem2, чтобы он привел composition engine в чувство — большой вопрос, на который нормального ответа у меня лично нет.
Ну да, Сильвелайт классный, но рендерер хорошым сделать как то не пыталися, да вообще, мягко говоря, девелоперы сервелата совсем не звезды, и чтото помешало им композицию прикрутить.
Вобщем, Сервелат он классный. Ну, не вышло у ребят хорошие контролы слепить, сами не понимали, что писали. И акселерацию сначала забыли, а потом уже было поздно, когда же прикрутили хоть чтото, оказалось, что примитивы лучше всего рендерить вручную в битмап.
Все равно классная технология.
Вобщем расслабься, сервелат — классная технология, незаслужено задавленая злобным Синофски в сговоре с оголтелыми нативными разрабами.
I>>Не порвёт.
НС>Порвет. Если, конечно, это будет нормальный строготипизированный IL, а не бинарная разновидность JS.
Интерпретированый — не порвет.
I>>Собтсвенно потому что JS уже давно джыт.
НС>Если бы все было так просто ...
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Великолепно! Ты как раз сказал то самое, что я обозначил, как негативный момент: "хорошая идея", "слаба реализацией", "спокойно занимаются улучшением реализации". Когда-нибудь хорошие парни из WPF обязательно доберутся до вершины! Они же хорошие парни? Значит, доберутся! А то, что их кормит windiv при этом — так на это наплевать, зато хорошие парни и перспективная (?) идея!
Чтобы этот самый windiv зарабатывал бабло, нужно, чтобы под их софт кто-нибудь да что-нибудь писал. WPF в том числе привлекает разработчиков. Поэтому утверждение, что windiv кормит команду WPF слишком упрощенное. Далее, откуда взялось мнение, что WPF мешает windiv-у работать? Ничего подобного на практике мы не имеем. У WPF свой API и свой нативный слой. Этот слой мог бы развиваться, притягивая всяких там Ikemeful на свою сторону. Да более того, было бы супер, если бы такой распрекрасный WinRT вдруг стал нативным слоев для WPF. Но нет. Вместо этого WPF зарубили, а в ответ предложили то, что нигде, кроме Восьмой Винды, не работает. При этом оно еще и урезанное в угоду нативу. Получается, что в сущности, кучу разработчиков корпоративного софта, обеспечивающего нехилый доход того же windiv, поставили в очень неудобное положение. Под Восьмерку писать рано, потому что мало кто из заказчиков ей обзавелся. API же Седьмой винды брошено на произвол судьбы.
ГВ>Мне кажется, что для MS безрадостны обе крайности: и передача всей полноты власти в руки Синофски, и полное его изгнание. Поглядим, как оно будет — может быть, всё и не так плохо.
Так не поддерживай первую крайность, раз считаешь "оба хуже".
V>Де-факто нейтивная технология-заменитель WPF взлетела. Все отмечают живость нового UI в сравнении с WPF. V>Выходит, ты бы на его месте позволил и дальше сливаться XAML-направлению?
Этот самый заменитель мало чем отличается от Сильверлайта — (де-факто на 90% все апи и классы те же, сильверлайт также по большей части в нативе сделан), но при этом вместо того чтобы отставить обратную совместимость зачем-то переименовали все нейпспейсы, кучу классов и методов итд.
А по факту — только работает пошустрей + более совершенные АПИ для тача, и еще некоторых специфических областей. Вот зачем было так делать? Сильверлайтовские прилоги приходиться портировать практически исключительно переименованиями.
Только что, поставил SDK для Windows Phone — оказывается, хоть он и перешел на Windows Runtime по большей чачсти, но UI там остался сильверлайто-подобный, с сильверлайтовскими названиями неймспейсов, событий итд.
Итого на сегодняшний день имеем 4 очень похожие, но нефига не совместимые реализации одного и того же: WPF, Silverlight, Windows Phone и Windows Runtime
Здравствуйте, vdimas, Вы писали:
V>Здравствуйте, Евгений Акиньшин, Вы писали:
ГВ>>>Что-то у меня складывается обратное впечатление, что он чуть ли не единственный адекватный руководитель в MS:
ЕА>>Да, ладно — может он там классный технарь, но руководитель компании из него хуже некуда. Он за последние пару лет сделал все чтобы уничтожить сообщество лояльных разработчиков МС. История с Сильверлайтом не единственная, но самая показательная — никогда раньше не видел, чтобы компания сама топила новую, феноменально успешную технологию, несмотря на протесты клиентов в угоду личным предпочтениям.
V>Ты драмматизируешь. Наработки не пропали. Есть помощники-конвертеры и там совсем немного после них труда надо, чтобы допилить код до работоспособного на WinRT.
Да не, оно понятно, что переименование это не самая сложная работа в мире. Только вот абсолютно непонятно, нахрена так было делать. Особенно хреново, если надо, чтоб и там, и там работало — это либо куча IFDEF в коде, либо несколько версий и сам следи, чтобы они развивались синхронно. А в Xaml IFDEF-в нету, так что без вариантов несколько версий.
V>Можешь считать WinRT эдаким Silverlight 6.0, в который добавили всё то, чего раньше не хватало в кастрированных версиях сервелатного фреймворка.
Если брать чисто UI, то скорее наоборот — WinRt эдакий каcтрированный сильверлайт 3.0
Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>Итого на сегодняшний день имеем 4 очень похожие, но нефига не совместимые реализации одного и того же: WPF, Silverlight, Windows Phone и Windows Runtime
При этом если несовместимость первого и остальных еще можно понять и простить, все таки для полной реализации всех фич WPF нужен полноценный фреймворк, а SL и WP почти совместимы между собой, то WinRT — чистейшая блажь сабжа.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Подумалось, что тут можно ответить, скомбинировав риторические приёмы разных форумчан.
Значит Игорь прав
Здравствуйте, Erop, Вы писали:
E>Ты же хотел передать метафору страшного захолустья, а этот город, названный по крепости, Усть-Каменная, имеет зап 300 000 жителей
Неважно. Важно, что совсем не обязательно в названии должно присутствовать точное имя речки.
E>Ты уверен, что эта модель передаёт то, что ты хотел сказать?
Я думаю все все прекрасно поняли, и только ты решил доиметься на пустом месте.
Re[33]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, alex_public, Вы писали:
_>Интересно, каким надо быть маркетологом, что бы суметь продать такое http://habrahabr.ru/company/apps4all/blog/159285/ ?) Тут даже руководители секты Apple не справились бы... )
А ничего что у меня 100 лет релизный айпад делает ровно то же прямо здесь и сейчас? Разбираться надо с конкретным софтом. Хотели нейтив для прикладников — кушайте, не обляпайтесь. В WP7.5 я за год эксплуатации ни разу не видел подвисания или перезагрузки телефона.
Здравствуйте, Ночной Смотрящий, Вы писали:
C>>Я боюсь, что открою страшную тайну, но тот же WinRT для UI взял очень многое из WPF. НС>Что то мне подсказывает, что GUI библиотека, ограниченная только метрой, не очень подходит на роль основной.
Всё будет зависеть от того, как быстро народ будет переходить на Win8. ДОС-приложения поддерживали в виндах относительно долго... От этой дуальности не убежать.
================
Хотя... метро-интерфейс — это же просто полноэкранное DirectX — окно. Т.е. я не вижу технических проблем предоставить доступ к GUI-функционалу WinRT в оконном виде для классического десктопа. Проблема тут только маркетинговая и никакая более...
Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>Этот самый заменитель мало чем отличается от Сильверлайта
Дык, скажи спасибо.
ЕА>(де-факто на 90% все апи и классы те же, сильверлайт также по большей части в нативе сделан), но при этом вместо того чтобы отставить обратную совместимость зачем-то переименовали все нейпспейсы, кучу классов и методов итд.
Таблин. Потому что 90% совместимости, а не 100%. Вообрази на секунду, что оставили бы те же неймспейсы для несовместимого АПИ.
ЕА>А по факту — только работает пошустрей
Да, и это перевесит кучу ноющих разработчиков. Потому что эта фишка для пользователя, а платит именно он. Потому что рабочий стол Win7 летает, а WPF/SL — унылое тормозное Г. Источник издевательств и потешательств над MS.
А как же банальный авторитет фирмы как разработчика "лучшего в мире ПО"? ))
Давно так MS не получало на орехи как насчет WPF и VS2010. Им до сих пор синие экраны смерти припоминают...
ЕА>Только что, поставил SDK для Windows Phone — оказывается, хоть он и перешел на Windows Runtime по большей чачсти, но UI там остался сильверлайто-подобный, с сильверлайтовскими названиями неймспейсов, событий итд.
Тебе помочь написать скрипт по переименованию одного в другое? )))
ЕА>Итого на сегодняшний день имеем 4 очень похожие, но нефига не совместимые реализации одного и того же: WPF, Silverlight, Windows Phone и Windows Runtime
Держи: http://msdn.microsoft.com/en-us/library/gg597391.aspx
Кароч, споры ни о чем. Собственно кодирование GUI (не разработка, а именно кодирование программистом) занимает порядка 10% от всей разработки (или даже меньше). Из этих 10% обыгрыванию подлежат тоже дай бог 10% функционала для поддержки всего твоего списка. Боюсь, гораздо больше будет отличий в коде, продиктованных самим принципом работы с GUI на десктопе/тачпаде/браузере/телефоне, чем вызванных несовместимостью АПИ.
Здравствуйте, michae1, Вы писали:
I>>Практически все менеджед
M>шутишь? С++ — цветет и пахнет.
С++ растерял минимум две трети былой доли.
I>>Вот этот OleView может врать а работая через #import ты ничем не исправишь ситуацию.
M>Круто! Как же он может врать если он вытаскивает инфу из бинарников и реестра? Гуиды не те показывает или припишет чего в дерево интерфейсов?
А ты я вижу специалист. Олевью врет потому что кривая инфа в бинарниках. Реестр кривой по этой же причине. Вопрос = откуда берутся кривые бинарники ? Ты вообще в курсе про idl ?
I>>Первосортное дерьмо. Увеличивает время на разработку компонентов и затрудняет использование. Правильный путь — исключения, но в ком этого нет и никогда не будет.
M>Возврат кода ошибки ничем не хуже бросания ексепшена — это две равноправных идеологии.
Чушь. Код ошибки надо обрабатывать самому и всегда, в противном случае ошибки будут глотаться, что вобщем то норма для кома.
>Вообще, для сведения, _com_ptr_t обертка генерирует _com_error эксепшн но ты можешь юзать CComPtr и работать с кодами ошибок.
Ты в курсе, что это костыль и он не покрывает всех сценариев ?
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>, с какой стороны ни посмотри. Даже выкидывание WPF и SL можно объяснить тем, что им найдена замена и не где-нибудь, а аж на уровне базовых API.
Нет им никакой замены. WinRT UI жестко ограничен рамками метро, с WPF и SL он не пересекается.
ГВ>Откуда тогда разговоры о распылении усилий?
Оттуда, что задача декларативного метроподобного UI уже была решена в рамках Windows Phone. При этом, что характерно, совместимость с SL там обеспечена максимальная, в отличие от WinRT.
ГВ> Или это из-за того, что теперь кто-то придумал новый велосипед, которым срочно будут заменять WinRT?
Здравствуйте, Ikemefula, Вы писали:
I>А почему эти же самые руки не мешают работать другим технологиям ? Странно, да ? А может это фича такая — зависимость от ЧФ ?
Я без понятия подо что там заточены руки ваших админов. Наши админы свои задачи решают и дают нам программистам возможность не думать в дальнейшем о проблемах межбраузерной несовместимости и не париться с таким нетипизированным овном как JS.
Если SL работает, то он работает везде одинаково. А работает он как минимум везде, где мне когда-либо было нужно. И хватит уже тролить на эту тему. Только законченному фанату с промытыми мозгами не понятно, что как технология JS+CSS в сравнении с SL — это позапрошлый век.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, drewet, Вы писали:
D>Родной мой, а ты где здесь тупой троллинг увидел, я уже закалупался, когда захожу на сайт не помню точно как называется, но вроде techday нау-мынау... и постоянно мне заявляет, что мне надо установить сервелат...
Ну так установи один раз? Тот же флешплеер, наверное, каждый месяц по пять раз обновляешь, а один раз сильверлайт установить в лом. Видимо тогда не будет повода здесь потролить.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, drewet, Вы писали:
IT>>Ну так установи один раз? Тот же флешплеер, наверное, каждый месяц по пять раз обновляешь, а один раз сильверлайт установить в лом. Видимо тогда не будет повода здесь потролить. D>Мда... Не надо думать, ты здесь один Д'Артаньян. Если бы я один раз установил и в последующие разы все было ОК, я бы даже и не думал сюда писать.
В том то и дело, что я здесь не один Д'Артаньян. Похоже тут все Д'Артаньяны, кроме тебя.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Ночной Смотрящий, Вы писали:
V>>>>Была бы возможность сделать быстрый WPF, за 7 лет был бы сделан. НС>>>Докажи. V>>Это надо понимать так, что ты бы дал еще 7 лет???
НС>Это надо понимать, что твои заявления, как обычно, высосаны из пальца.
Докажи (С). А то юлить тут все горазды.
=============
Достаточно было выделить четверть ставки всего одного не самого глупого программиста на работу над эффективностью, и за год можно было бы достигнуть насыщения в плане перформанса (а если совсем не глупый, то 3-6 месяцев). Вот и доказательство — это из реальных проектов с не меньшим объемом того кода, который потребовалось бы тюнить.
А когда речь идёт о 7-ми годах, то ты тут в позе кривляющегося, разве что.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>То есть по делу сказать нечего.
Если по делу, то я уже писал что не вижу никаких реальных проблем у .Net сейчас. Думаю что он поселился в винде уже навечно, так что откуда все эти вопли? Ведь с самим .Net ничего не сделали, а просто стали развивать и другие направления тоже. Т.е. грубо говоря поставили его в равные условия с другими платформами. Или дотнетчики так боятся что их мирок при равной конкуренции автоматом сдуется? )
Так что даже не знаю чем кроме шуток (типа совета использовать wxWidgets) можно реагировать на вопли дотнечиков в стиле "и на чём же теперь писать gui".
Хотя... Если в Qt или wxWidgets действительно допилят поддержку metro так, что можно будет писать единый кроссплатформенный код и под планшеты (metro) и под десктоп (win7), то это уже может оказаться не шуткой а реально лучшим gui инструментом. )))
M>Вот как, на кого же она ориентирована? Ну и перечисли тогда уже технологии ориентированные на программистов, очень интересно послушать.
Она ориентирована на кого-то кто заранее знает всё о разрабатываемой системе и не совершает ошибок. Но явно это не программисты. Возможно даже вообще не люди.
M>Успешность технологии зачастую проверяется временем, COM — долгожитель, хорошо зарекомендовавший себя в различных по сложности программах. Это не значит, что его нужно пихать куда только можно, но зачастую решения на базе COM превносят в программу модульность, делают ее менее монолитной, легко масштабируемой + не будем забывать о таких приятных вещах как инкапсуляция кода и возможность взаимодействия с компонентами разработанными на других языках, том же .Net.
Успешность технологии определяется тем насколько быстро её идеи заимствуют другие. То сколько времени технология прожила это скорее к тому насколько качественно MS поддерживает свои API.
_>>Абсолютно все ошибки выносятся в рантайм. Вот получил ты IUnknown — что он может — ты не знаешь, документация врёт, автокомплит молчит. Вот пишешь ты реюзабельный компонент, какой IХренЗнаетЧто обязательно поддержать чтобы всё завелось способа узнать нету. А неудачный каст для многих приложений — тупо ошибка в рантайм. Кодами возврата HR пользуются только в самой MS, все остальные только S_OK, и E_FAIL. Стэктрэйса ошибки нету, сиди думай на входе там сфэйлилось, или глубоко зашло. Забытый AddRef — утечка памяти, лишний Release — случайный прострел, с этого момента всё может сыпаться случайным образом, а может и дальше работать.
M>Много буков, мало смысла
Ну давай по-другому. Смысл каких слов тебе непонятен?
M>Складывается впечатление, что ты дааааааалек от темы.
Чёрт. Я не хотел переводить стрелки на себя.
M>1) Что значит "документация врет"? Открой для себя OleView или директиву #import
Какую-бы директиву открыть, чтобы реализуя IOleClientSite узнать что ещё конкретно должен поддерживать мой IOleContainer когда хостишь IE? А в дизайн-моде?
M>2) "получил ты IUnknown — что он может — ты не знаешь, ...," — он может вернуть тебе нужный интерфейс
Спасибо кэп. А какой интерфейс мне нужен я могу узнать только из документации. Для сравнения — доброй половиной API java, .net, или даже забвенных VB6 или Delphi реально пользоваться вообще имея только поверхностные представления о теме и посматривая на то что предлагает автокомплит.
M>3) "автокомплит молчит" — я чего-то не понял или ты полсыаешь лучи поноса IntelliSense-y
Я посылаю лучи поноса самой идее. А то что потом IntelliSense не работает из-за того что не может найти информацию о фактическом типе объектов ни в компайл-тайме ни в отладчике — это следствие.
M>4) "Кодами возврата HR пользуются только в самой MS, все остальные только S_OK, и E_FAIL" — рукалицо) открою тебе страшную тайну, HRESULT предоставляет диапазон для кастомных ошибок, а такие интерфейсы как IErrorInfo... позволяют получить текстовую информацию. (конечно это должно поддерживаться используемым com_объектом). Не нравиться HRESULT юзай _com_ptr_t
Выделил существенное. Увы люди не идеальны, и если что-то может быть не сделано — сразу готовься к тому что так и будет. В тех же .net-ах, даже словив самый общий Exception я могу хотябы посмотреть откуда оно прилетело и локализовать ошибку.
M>5) "Забытый AddRef — утечка памяти" — используй смарт поинтеры и не думай об этом вообще — _com_ptr_t и CComPtr к твоим услугам.
Ой ли. Кучу раз встречался с однотипной ситуацией — есть иерархия объектов. Умный смартпойнтер делает Release корню, а он грохает всё что в него было вложено игнорируя их счётчики. Логика у иерархии такая, что без корня ничё работать не будет. Люди писали. Всё, крутись как хочешь. Либо ссылку на корень за собой таскай, либо сохрани её в надёжном месте. В итоге вместо облегчения слежения за временем жизни мы получаем усложнение. Формально это проблема библиотеки, но причина её — COM, а решать её мне.
Скажешь не используй кривые библиотеки, а я скажу, ещё года два назад даже MS-овский DirectX 9 при работе с SwapChain именно так себя и вёл. Сейчас как не знаю, потому что другими делами занят, но не думаю что сильно лучше.
_>>Да, когда документация врёт...
M>Имхо, диагноз такой: ты не разобрался в теме, зато немного понаступав на грабли кричишь громче всех, что COM — гавно. У этой технологии есть болезни, как и у любой другой, но с её помощью уже сделали и продолжают делать сложные и качесвтенные продукты.
Обожаю священные войны! И без заглядывания в MSDN ручками, без ATL, через IConnectionPoint событие протяну если дело до писькомера дойдёт Так что разобрался будь здоров. Только вот удовольствия от того что разобрался как-то не получил значит субьективно, для меня, как для программиста, технология хреновая.
M>Я так понимаю тебе не нравиться необходимость поддержки старых интерфейсов: IMyInterface, IMyInterface2...? Но в этом нет ничего плохого, более того это обязательное условие для любой публичной сущности: библиотеки, API, COM-объекта. Это даёт гаратнии, что через полгода супер-герой не наменяет все и вся и N-е количество программ завязанных на твой объект перестанут рабоать.
Версионность тут не причём. Люди пишут программы с ошибками. Особенно много ошибок в то время когда программа только разрабатывается. Т.е. человек не знает ещё что он собирается вызывать, ещё не знает что будут вызывать у него, не знает что можно передавать а что нет. И COM только усложняет этот этап. Если бы сразу ввели в стандарт требования на документирование самим IUnknown поддерживаемых им интерфейсов и методов, всё было бы в тысячи раз проще. И Ole Automation изобретать не пришлось бы.
Но если хочется обсудить версионность, то вот выходит новая винда. Я хочу посмотреть что же нового может предложить новый Shell. Без документации не посмотреть IКакой# мне надо создать чтобы получить доступ к новым фичам. И какие это будут фичи тоже не узнать.
M>Ну а с точки зрения проектирования, COM-объект — черный ящик, предоставляет тебе конкретные интерфейсы, ты же имплементишь взаимодейтвие модулей. Что не так?
А то что чёрным ящиком должна быть только реализация. А в случае с COM чёрным ящиком является вообще всё. Что этот объект может, к чему ещё его можно скастить, какие методы у него будут если он успешно скастится к чему-то ещё.
_>>Успешность технологии определяется тем насколько быстро её идеи заимствуют другие. То сколько времени технология прожила это скорее к тому насколько качественно MS поддерживает свои API. M>Это скорее успешность идеи, а не технологии. Технология — не зависит от платформы и реализации, она описывает способы взаимодействия и представления, а тех. детали могут отличаться в разных системах. Посмотри на COM, в основе технологии описания посредством интерфейсов, подсчет ссылок, вводиться такое понятие как маршалинг и механизм получения объектов по идентификаторам CLSID... то есть общие понятия, все это вполне реализуемо не только в Windows.
Ну то есть идея такая плохая что больше никто у себя подобное реализовать не захотел, а технология построенная на этой идее хорошая? А может закономерно — хреновую идею уже никакая реализация не спасёт?
_>>Какую-бы директиву открыть, чтобы реализуя IOleClientSite узнать что ещё конкретно должен поддерживать мой IOleContainer когда хостишь IE? А в дизайн-моде? M>Ну открой для себя msdn, stackoverflow, google наконец
Я понял, да, обязательно. А от себя могу осторожно посоветовать ещё diff между файлами старого и нового SDK, иногда помогает
M>Чего пенять на всю технологию, если обжегся на IE? С другой стороны, посмотри на описание объектной модели офиса — все четко описано, пусть и не очень подробно.
Офис? А видел как оттестированный в ActiveX Control Test Container контрол, ведёт себя совсем по другому в Word, по третьему в Excel, и совсем не позволяет себя вставить в PowerPoint? Ведь тот же COM, что ж опять всё не так-то. А им оказывается какой-то очередной I***Site* понадобился, и на его нехватку они реагируют кто как.
M>А как иначе? Откуда прога знает что ты хочешь? Или ты хочешь работать в стиле "дай мне то не знаю что"? так только в сказках
Да в этом стиле куча народу работает. Надо получить размер окна. Есть объект скажем Window, нажимают ., смотрят — какие методы есть. Вбивают наугад Size, есть — хорошо, попались сразу два ClientSize, OuterSize — выбираем который подходит, нет ни одного — поищем тем же способом что-нибудь с Rect, нашлось — отлично, нет — поищем какой-нить Manager, может он знает, и т.д. А в стиле COM — есть объект IWindow, методов всего пара штук, все остальные описаны у IWindow3 скажем, про IWindow3 ты узнаешь только в документации, если есть. А если метод Size описан у какого-нить ISizeableHostedControl, то простым поиском по Window ты его вообще не найдёшь. Отличная технология для программистов.
M>>>4) "Кодами возврата HR пользуются только в самой MS, все остальные только S_OK, и E_FAIL" — рукалицо) открою тебе страшную тайну, HRESULT предоставляет диапазон для кастомных ошибок, а такие интерфейсы как IErrorInfo... позволяют получить текстовую информацию. (конечно это должно поддерживаться используемым com_объектом). Не нравиться HRESULT юзай _com_ptr_t _>>Выделил существенное. Увы люди не идеальны, и если что-то может быть не сделано — сразу готовься к тому что так и будет. В тех же .net-ах, даже словив самый общий Exception я могу хотябы посмотреть откуда оно прилетело и локализовать ошибку.
M>и что? как недоработка того или иного COM-объекта кидает тень на технологию? Таже ситуация может быть с любой библиотекой.
Это недоработка самой технологии. Типизация объектов подразумевается, но получить информацию о типах нельзя. Возможность ошибок подразумевается, но оставляется возможность для возврата пустого E_FAIL. Версионность подразумевается, но работа с нею отдана на откуп тем же несовершенным людям. Я же говорю — она рассчитана на тех программистов которых нету. Идеальных, всегда точно реализующих и документирующих весь функционал, реализующих все опциональные интерфейсы, ничего не забывающих и поддерживающих документацию в точнейшем соответствии с кодом. Но если сократить это до "не программисты. возможно даже вообще не люди." — то ты сделаешь вид что не в теме и напишешь "ни о чём"
M>>>5) "Забытый AddRef — утечка памяти" — используй смарт поинтеры и не думай об этом вообще — _com_ptr_t и CComPtr к твоим услугам. _>>Ой ли. Кучу раз встречался с однотипной ситуацией — есть иерархия объектов. Умный смартпойнтер делает Release корню, а он грохает всё что в него было вложено игнорируя их счётчики. Логика у иерархии такая, что без корня ничё работать не будет. Люди писали. Всё, крутись как хочешь. Либо ссылку на корень за собой таскай, либо сохрани её в надёжном месте. В итоге вместо облегчения слежения за временем жизни мы получаем усложнение. Формально это проблема библиотеки, но причина её — COM, а решать её мне.
M>Ничего не понял, иерархия чего? Опиши подробней.
Объект, создаёт вложенные объекты, много. Дальнейший алгоритм работает только с вложенными, посему ссылка на корень успешно грохается смарт-пойнтером при выходе, вложенные тут же умирают, потому что по логике реализации библиотеки они не имеют смысла без корня. А корень умирает — потому что COM требует удаления объекта. Все делают свою работу честно, и заметь, даже циклических ссылок нет. А ошибка есть. Посколько крайнего не найти, всё валим на COM
M>А удовольствие обычно от результата, может результат неочень?
А у тебя на что больше времени уходит, на программирование, или на созерцание результата?
Здравствуйте, IT, Вы писали:
ГВ>>>>"Допиливать" и "отсуствует" — не одно и то же, не находишь? IT>>>Ты вообще о чём? SL поддерживается всеми браузерами. ГВ>>Точно?
IT>Всеми известными мне поддерживаются. Тебе видимо известно больше.
Что, и в ведроиде и в ios тоже поддерживается ? То-то я смотрю, челы переходят на HTML5+JS пачками.
Здравствуйте, Евгений Акиньшин, Вы писали:
I>>Да ладно, где у ней феноменальность ? Аппаратное ускорение так и не смогли нормально прикрутить, это оно ?
ЕА>Я имел в виду успешную с точки зрения внедрения на корпоративном рынке — со одной стороны имеем простую инсталляцию, автообновления и кроссплатформенность в пределах десктопа, в отличии от обычных клиентских технологий, с другой стороны получаем удобные и знакомые корпоративным разработчикам тулзы, единую среду разработки для клиента и сервера и избавляемся от цирка с несовместимостью браузеров, в отличии от html.
ЕА>Да, это все вышеперечисленное фигня если мы пишем игрушки или что-нибудь массовое. Но для внутри-корпоративного софта — это мега-хит.
Эээ, больше проблем, нежели с SL я никогда не видел. То не инсталится, то инсталится но не та версия, то настройки безопасности не те, то с сетью что то не так, то браузер не тот
I>>Перформанс даже там где есть это ускорение есть, и то умудрились уронить ниже плинтса. Цирк — когда не хватает аппаратного ускорения, надо открыть для себя битмап и рисовать прямо в ём, это быстрее аппаратно ускореных фич
ЕА>Опять же, для корпоративных приложений перфоманса за глаза.
Для CRUD-приложений хватает. А как чего побольше, все, капут. А круд можно и на ajax накидать быстро, да еще мобайл будет на раз работать.
I>>Сами же контролы не смогли внятные склепать
ЕА>Ну это классическая проблема всех платформ от МС. (Надо же и производителям компонентов, вроде меня, на чем-то зарабатывать )
Не надо делать мега-контролы, надо делать базовый минимум который работает качетсвенно и не надо часами разбираться, что именно на что биндить, почему летят непонятные исключения и как сделать простые вещи.
I>>За одну ObservableCollection нужо поразбивать головы всем причастным вплоть до третьего колена
ЕА>А чего с ней сильно не так?
Здравствуйте, IT, Вы писали:
IT>Значит у нас разное представление об интеррактивном функционале. Честно говоря я не очень представляю как сделать нужную мне интеррактивность на HTML при отсутсвии возможности использования горячих клавиш. А уж на телефоне или планшетке — это вообще нонсенс.
Хоткеи нужны для клавиатуры, для тачскрина они не нужны. Есть жесты, есть кнопки, которые можно показывать в самый нужный момент без каких либо проблема, есть тулбары. Вобщем все что надо.
Здравствуйте, MxMsk, Вы писали:
ГВ>>Великолепно! Ты как раз сказал то самое, что я обозначил, как негативный момент: "хорошая идея", "слаба реализацией", "спокойно занимаются улучшением реализации". Когда-нибудь хорошие парни из WPF обязательно доберутся до вершины! Они же хорошие парни? Значит, доберутся! А то, что их кормит windiv при этом — так на это наплевать, зато хорошие парни и перспективная (?) идея! MM>Чтобы этот самый windiv зарабатывал бабло, нужно, чтобы под их софт кто-нибудь да что-нибудь писал. WPF в том числе привлекает разработчиков.
Главным образом, продукт должны покупать конечные пользователи. Остальное — вторично. В таком разрезе "кто-нибудь что-нибудь писал" — это очень сложный вопрос и наличие или отсутствие WPF — дело десятое. Скажем, какая-нибудь новая игрушка будет обязательно написана для Windows вовсе не из-за того, что там есть распрекрасный WPF или DirectX, а сугубо потому, что Windows — это >90% инсталляций у геймеров.
MM>Поэтому утверждение, что windiv кормит команду WPF слишком упрощенное.
Ну да, ещё их кормит devdiv и остальные подразделения.
MM>Далее, откуда взялось мнение, что WPF мешает windiv-у работать? Ничего подобного на практике мы не имеем. У WPF свой API и свой нативный слой. Этот слой мог бы развиваться, притягивая всяких там Ikemeful на свою сторону. Да более того, было бы супер, если бы такой распрекрасный WinRT вдруг стал нативным слоев для WPF. Но нет. Вместо этого WPF зарубили, а в ответ предложили то, что нигде, кроме Восьмой Винды, не работает. При этом оно еще и урезанное в угоду нативу. Получается, что в сущности, кучу разработчиков корпоративного софта, обеспечивающего нехилый доход того же windiv, поставили в очень неудобное положение.
Вот эти твои "бы-бы-бы" — их ни к чему не приклеишь. Было бы хорошо, было бы здорово, было бы замечательно. Откуда мне (и тебе) знать, насколько все эти "бы" на самом деле реализуемы? В условиях конфликта двух управленческих моделей можно предсказать только то, что останется только один. Так оно и вышло — только на самом деле не осталось вообще никого.
MM>Под Восьмерку писать рано, потому что мало кто из заказчиков ей обзавелся. API же Седьмой винды брошено на произвол судьбы.
Ну, API Win7 ни на какой произвол не брошено, как было, так и осталось (Surface Pro и Win8 вполне поддерживают приложения Win7). А так — ну, ещё один API в мире Windows — да, он поддерживает и native, и managed. Что плохого-то? Эволюционное развитие и всё такое.
ГВ>>Мне кажется, что для MS безрадостны обе крайности: и передача всей полноты власти в руки Синофски, и полное его изгнание. Поглядим, как оно будет — может быть, всё и не так плохо. MM>Так не поддерживай первую крайность, раз считаешь "оба хуже".
А где я поддерживал первую крайность? Я что, бегаю с лозунгом: "Вся власть — Синофски!" Так нет же, не бегаю и не собираюсь.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Потому что на SL разработка обойдется существенно дешевле, а качество будет выше. А до что андроид за бортом — так это именно тот способ, которым SL зарабатывает деньги.
Честно говоря, не особо это понял. По-моему, СЛ за бортом, а андроид впереди планеты всей.
Здравствуйте, Ночной Смотрящий, Вы писали:
LC>>Еще раз повторяю вопрос, какие инновации были задавлены Синофски? НС>Тебя в какой области интересует? Из свежего, к примеру, WPF.
Это не так. Наработки пользовательского уровня не пропали (хорошая переносимость), т.е. была задавлена лишь неудачная реализация, но не сам инновационный подход.
LC>> Как бы ты, поступил на его месте? НС>Вообще бы не трогал API по возможности и уж точно не создавал еще один дотнет, только другой.
Де-факто нейтивная технология-заменитель WPF взлетела. Все отмечают живость нового UI в сравнении с WPF.
Выходит, ты бы на его месте позволил и дальше сливаться XAML-направлению?
V>Хотя... метро-интерфейс — это же просто полноэкранное DirectX — окно. Т.е. я не вижу технических проблем предоставить доступ к GUI-функционалу WinRT в оконном виде для классического десктопа. Проблема тут только маркетинговая и никакая более...
Эксплорер сам показывает метрошные окна в классическом десктопе. Обратное — создать классическое win32 окошко поверх метро лаунчера — тоже как два пальца.. после пива
Наличие поддержки классического окружения сделано путем проверки эксплорером специательного ключика в реестре и отказе запускать win32 апликухи если оного нету. Бинарники метрошных апликух отличаются от бинарников win32 наличием одного битика в IMAGE_OPTIONAL_HEADER и тем что обычно они запускаются под AppContainer токен'ом, который в свою очередь отличается от обычного — наличием AppContainer SID'а и capabilities SID'ов. А в остальном там полый win32
Как много веселых ребят, и все делают велосипед...
Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>Ну вот навскидку, с чем столкнулся в последнее время:
ЕА>1) Нет события OnTextInput — чего ввели с клавиатуры узнать нельзя. Глубоко не копал, но судя по тому что пишут, совсем нельзя. Никакой свой текстовый процессор не напишешь, включая элементарный ввод по маске итд.
В гугле забанили?
I confirmed that support for character input is only at the CoreWindow level. You will need to handle CharacterReceived and consult the FocusManager to determine which control the input is for. This is essentially what the TextBox is doing internally.
Вы там с ума уже в своём дотнете посходили... Тебе в поток приходят только системные события KeyUp/KeyDown, остальная трансляция ввода происходит уже на юзверской стороне. Соответственно, всё у тебя есть, т.к. есть события KeyUp/KeyDown.
Для примера, в нейтиве это было так: http://stackoverflow.com/questions/2441457/keyboard-input-the-win32-message-loop
В таком виде трансляция в виндах происходит на уровне окна, поэтому в процитированном стоит совет делать это на уровне окна.
Другое дело, что TextBox не особо позволяет вмешиваться в свою работу... Но и его можно обмануть через переопределение OnKeyDown/OnKeyUp, вызывая базовые методы с задержкой только после фильтрации события CharacterReceived. Кароч, вопрос выеденного яйца не стоил.
В выделенном вообще жжешь напалмом.
Text Services Framework — это и есть "разобранные на запчасти" внутренности RichEdit, умеющего общаться со всеми текстовыми службами, типа экранных клавиатур или речевого ввода и т.д... так что залудить свой текстовый процессор можно. И да, Text Services Framework доступен для АппСтор-приложений: http://msdn.microsoft.com/en-us/library/hh848069%28v=vs.85%29.aspx
А простая IME-фильтрация делается так:
// Keyboard state
BYTE abKbdState[256];
if (!GetKeyboardState(abKbdState))
{
return 0;
}
// Map virtual key to character code
WCHAR wch;
if (ToUnicode(VK_PACKET, 0, abKbdState, &wch, 1, 0) == 1)
{
return wch;
}
Раз оно доступно для АппСтора, то должно быть доступно для P-invoke.
ЕА>2) Нельзя отрисовать никакие объекты UI в битмап. Совсем нельзя. Нам пришлось повторить все, что отображается в UI на DirectX, только ради того, чтобы png-ку сохранить
Как скопировать экран в буфер обмена?
keybd_event(VK_SNAPSHOT, MapVirtualKey(VK_SNAPSHOT, 0), 0, 0);
keybd_event(VK_SNAPSHOT, 0, 0, 0);
Переведи её на SendInput.
ЕА>3) Биндинг — то что мне больше всего нравилось во всех XAML реализациях, кастрирован по самое нехочу
Конкретней.
ЕА>4) Нету драг-н-дропа между приложениями
По-идее, в Win8 нету перекрывающихся окошек, поэтому спорно. Безопасность, опять же.
ЕА>5) Примитивнейший форматированный текст, можно сказать нет его. В сочетании с пунктом 1, так вообще весело.
Ниче не понял... WebView-компонент есть? Или GUI-приложение можно сделать как HTML-приложение, которое вызывает ваши компоненты для основной функциональности.
ЕА>6) Нет элементарной заливки повторяющимся растровым изображением
http://www.blakepell.com/Blog/?p=564
ЕА>7) ScrollViewer — который шустрый, с правильным поведением и плавной анимацией, поглощает практически все события манипуляции. Если хочется иметь интерактивный контент со скроллированием, приходится писать свой контрол, который таким же отзывчивым и плавным никак не выходит
Без ревью самописной приблуды ничего посоветовать не смогу...
ЕА>Если подскажешь как это все победить, да еще чтобы раз плюнуть, буду признателен.
Здравствуйте, IT, Вы писали:
IT>Давай обойдёмся без вот этого тупого тролинга. У меня вообще ни разу не было проблем с "как открываешь страничку где используется SL нужно каждый раз". Просто никогда. Речь идёт о большой финансовой компании и моим юзером может быть практически любой из десятков тысяч её работников по всему миру. То, что у тебя такие проблемы лично мне говорит прежде всего о кривых ручках ваших админов.
А почему эти же самые руки не мешают работать другим технологиям ? Странно, да ? А может это фича такая — зависимость от ЧФ ?
ГВ>Допустим. А что на счёт десктопов? Приложения Windows Phone на десктопах работали до появления Win8?
Наверное с 2005 года, Winforms приложения для Winmobile 6 запускались на десктопе, показывали окошки, лезли в сеть и т.п. Без эмулятора. Более того программисты которые писали мобильный софт для .NET, сначала на десктопе своё поделие тестировали, потому что проще и быстрее, а потом сразу на реальном железе, пропуская этап гоняния на эмуляторе.
Здравствуйте, dilmah, Вы писали:
D>не троллинга ради, а токмо просвещения для: D>а открыт ли код их файловых систем (on-disk и сетевой для time machine), volume manager, hybrid drive?
HFS+ открыт: http://www.opensource.apple.com/source/xnu/xnu-517.3.15/bsd/hfs/ TimeMachine — это просто применение snapshot'ов в HFS+.
Насчёт сетевого формата — скорее всего нет.
Volume manager тоже должен быть, но мне его сейчас искать лень.
Здравствуйте, sysenter, Вы писали:
S>Глава подразделения Windows and Windows Live, вице-президент Microsoft Стивен Синофски сложил полномочия вскоре после запуска Windows 8. S>тут
S>С сегодняшнего дня, 13 ноября, обязанности Синофски будут разделены между двумя женщинами — Джулией Ларсон-Грин (Julie Larson-Green) и Тэми Реллер (Tami Reller). Первая будет отвечать за разработку всех новых продуктов семейства Windows и аппаратного обеспечения. В свою очередь, Реллер возьмет на себя ответственность за бизнес-развитие платформы. Обе будут подчиняться генеральному директору Microsoft Стиву Балмеру (Steve Ballmer).
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Синовский конечно мужик. Но проблема в другом — он окончательно задавил все инновации, которых и так негусто у МС. Хорошо хоть Розлин поздно уже было закрывать, а то сидели бы мы с toolchain 20 летней давности.
Какие инновации? Как раз его детище WinRT и является огромным шагом и реальной инновацией.
НС>СОМ это не виндив, СОМ это Синовский персонально. Но, боюсь, WinRT это надолго — этот фарш не провернуть назад. С друнгой стороны, из секретных источников известно, что более 60% софта в винсторе на дотнете. Еще процентов 30 на JS. С++ это оставшиеся 10 процентов и в основном это проекты со старым сложным кодом.
Так это и без секретных источников понятно, тем более что сильверлайт\wpf отлично сортируется на винрт, сильверлайт так вообще почти 1 к 1.
Хотя я думал, что будет побольше 60%.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Тебя в какой области интересует? Из свежего, к примеру, WPF.
WPF живет и здравствует.
НС>Ничего. Пусть СОМ доживает в своей нише спокойно.
Понятно, взамен ничего предложить не можешь.
НС>Вообще бы не трогал API по возможности и уж точно не создавал еще один дотнет, только другой.
По возможности он его и не трогал, Win32 осталась и останется надолго for bacward compatibility. И какой еще один .NET? Вроде он один, если не считать Mono. Но ты наверняка имеешь в виде WinRT под новым дотнетом, это не так, это не новый дотнет. Смею предположить, что ты хотел, чтобы увидеть вместо WinRT был .NET?
Здравствуйте, Константин Л., Вы писали:
LC>>Следующим барьером является Garbage Collector. .NET навязывает всем свой GC. Хотя на самом деле, GC по сути является частностью реализации. И у каждой среды, свой GC наиболее подходящий под их задачи. Например, GC у JS и GC .NET'а это два очень разных по внутренней реализации механизма.
КЛ>а что, GC у JS хороший?
Тут дело не в том, хороший он у него или плохой. Дело в том, что он у него свой. Кроме JS есть еще куча разных сред с еще более специфичными GC. Если мы возьмем .NET в качестве базы для нового API, то он должен реализовать все эти специфичные GC для каждой из этих сред. Должен будет предоставить отдельную реализацию GC для JS, отдельную реализацию GC для ...
LC>>И наконец, производительность. Что бы не говорили адепты управляемых сред, каким бы эффективным и производительным ни был GC, у него все равно есть задержки, какими бы маленькими и не заметными для пользователей они не были. Все равно есть класс приложений и задач, где это недопустимо и необходимо всегда детерминированное время отклика. Соответственно, среда должна позволять ручное управление памятью, там, где это нужно. Сам сейчас работаю в такой области и это действительно важный фактор.
КЛ>c++/cli
C++/CLI работает поверх CLR, соответсвенно, она тоже является managed средой. Да и вообще, задумана она была изначально как промежуточный этап в портировании проектов на C++ под .NET.
КЛ>COM это в общем-то hell на текущий 2012 год.
Так ты предложи альтернативу. Причем альтернативу обкатанную, проверенную временем. Для Windows это почти единственный логично-верный шаг. Вон, Apple сколько лет обкатывали и контрибьютили в LLVM пока полностью туда не пересели.
Здравствуйте, koandrew, Вы писали:
K>Здравствуйте, Константин Л., Вы писали:
КЛ>>во-первых, свои догадки оставь при себе. во-вторых, я так говорю, потому что как раз осилил. и те игры, что я видел, "на COM" не писались, так что не надо.
K>Здрассьте — а как же весь насквозь COMовский DirectX, на котором пишут бОльшую часть современных игр?
ок, я в геймдеве не рулю, видел только пару игр на opengl. но что это, в общем-то, доказывает? что есть узкая ниша, где все вынуждены юзать COM?
Здравствуйте, michae1, Вы писали:
M>ну хз, с MTA практически не сталкивался — не было необходимости, все время юзаю STA и там все прозрачно. Было бы интересно узнать что не так с MTA?
Для этого надо попробовать. COM на примере STA как то несерьёзно.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Сдаётся мне, что как раз представлениями о прекрасном руководствуются именно дотнетчики. Так что, всё разумно, все занимаются своим делом: одни продолжают представлять прекрасное, другие — doing things done. Области ортогональные, не пересекающиеся.
"doing things done" недостаточно для должности такого уровня.
НС>>Истории с Реем Оззии или совсем свежая с Гатри — ты как, считаешь что это нормально, такое поведение со стороны второго человека в компании?
ГВ>А что за истории?
В гугле есть, сорри.
ГВ>ИМХО, конечно, но Product Vision должны формировать маркетологи, но уж никак не руководитель отдела разработки и уж точно — не голубоглазые мечтатели.
Стив Джобс, для примера — он кто из этих по твоему?
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Так... Ох, не надо было про Линукс вспоминать, ох, не надо было...
Просто это не особо удачный пример того, где всё стабильно и редко меняется.
ГВ>Так, придётся признать ошибку: да, Линукс — это та ещё арена сражений красноглазых борцунов. Правда, меня наличие LSB всё-таки несколько успокаивает.
Не поймите меня неправильно, я не против линукса. Я сам им пользуюсь дома в дуалбуте, но не надо делать из него серебряную пулю, у него своих проблем хватает.
Здравствуйте, Yoriсk, Вы писали:
Y>Здравствуйте, Константин Л., Вы писали:
КЛ>>>>во-первых, свои догадки оставь при себе. во-вторых, я так говорю, потому что как раз осилил. и те игры, что я видел, "на COM" не писались, так что не надо. K>>>Здрассьте — а как же весь насквозь COMовский DirectX, на котором пишут бОльшую часть современных игр? КЛ>>ок, я в геймдеве не рулю, видел только пару игр на opengl. но что это, в общем-то, доказывает? что есть узкая ниша, где все вынуждены юзать COM?
Y>DirectX — это не только игры(не такая, кстати, и узкая ниша), а графика вообще. 3D моделлеры, CAD-ы, скетчеры и прочее.
ну да, остальные 95% девелоперов не знают и не хотят знать.
Здравствуйте, FR, Вы писали:
FR>Еще я не говорю что NET ненужен
Но подразумеваешь
FR>нужен но для компонентов натив во многих случаях лучше
Для каких компонентов?
FR>, так вот только за то что компоненты как для натива так и FR>для нет должны были бы с самого начала легко делатся как на нативе так и FR>на NET меня записывают в менеджедненавистники
Ты думаешь, что с введениеми WinRT простота создания компонентов на C++/CX станет такой же, как на шарпе?
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>>Из непринципиальных отличий — многие АПИ, которых долго ждали, откатились опять на уровень 3-го сильверлайта
НС>А так оно и будет если вместо нормального WPF изобретать очередной имитатор.
Хотя в WPF другая проблема — плохой перфоманс и большая прожорливость на слабых машинах. В WinRT мне хоть и пришлось костылей нагородить, зато даже на совсем слабом железе вполне шустренько все работает
Здравствуйте, michae1, Вы писали:
M>Здравствуйте, Константин Л., Вы писали:
КЛ>>Здравствуйте, michae1, Вы писали:
КЛ>>[]
КЛ>>уважаемый, если все перечисленные вами пункты вам нравятся, и вы с удовольствием КЛ>>используете COM, то это не значит что у всех есть куча времени бегать по граблям. КЛ>>COM — неплохая технология для 90х, но для 201х — уже плохая.
M>Вопрос не в том нравиться мне или нет (мне нравиться и у меня нет с COM-м проблем), а в том что аргументы hi_octane необоснованы и смешны. Я попытался обяснить почему.
пока смешно то, что ты пишешь ты.
КЛ>>кроме того, советую все-таки попробовать пописать многопоточные приложения с обилием COM-а. КЛ>>Вот вы представляете себе чем threading model 'Free Threaded' отличается от 'Both', и в каких случаях КЛ>>нужен FreeThreadedMarshaller?
M>Опыт работы с COM у меня неплохой, но с такими задачами я не сталкивался, хотя спасибо за вопрос — почитал.
M>Я только не понял, что ж это доказывает и как относиться к теме, что разработка многопоточных приложений сложное занятие? Да, это и так понятно. Или что COM предлагает сложное решение? ну дык и задача непростая. С другой стороны какое альтернативное решение такой задачи (без COM)?
Здравствуйте, michae1, Вы писали:
M>Здравствуйте, Константин Л., Вы писали:
M>>>Вопрос не в том нравиться мне или нет (мне нравиться и у меня нет с COM-м проблем), а в том что аргументы hi_octane необоснованы и смешны. Я попытался обяснить почему.
КЛ>>пока смешно то, что ты пишешь ты.
M>Ну расскажи что тебя так рассмешило? То что c COM-м можно вполне комфортно себя чувствовать, задумайся аж в 2012 году? Блин, мне еще и с++ нравиться, я забыл что у нас 2012 год и это немодно
то, что ты пару раз за карьеру подергал STA объекты, и уже мнишь себя экспертом. а про моду это не ко мне. да, в 2012 RAD и COM друг с другом не уживаются.
если это для тебя новость, советую расширить кругозор
КЛ>>не вижу смысла отвечать
M>было бы что сказать
я уже все сказал. вот когда надо будет написать многопоточный COM-exe сервер с UI из IE/Shell, тогда вспомнишь мои слова.
Здравствуйте, Константин Л., Вы писали:
LC>>Во-первых, C++/CLI есть частная реализация языка C++ на базе .NET.
КЛ>во-первых, c++/cli это первый пример смешанной системы типов и сборки мусора с управлением памятью КЛ>вручную.
А ещё Эппл придумал первый ПК, а Майкрософт был первым кто добавил оконный интерфейс.
Здравствуйте, Ночной Смотрящий, Вы писали:
FR>>Это нужно было делать с самого начала NET эпопеи, а не заниматься тупой политикой по FR>>вытеснению натива.
НС>И много из винды натива успели вытеснить?
При чем здесь "из винды" ? Прекращай фантазировать. Практически вся разработка прикладного софта под винду это дотнет. Нативная разработка в основном осталась в старых проектах и некоторых которые сильно критичны к перформансу или требуют низкоуровневый контроль ресурсов.
Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>Другое дело когда ты активно топишь технологию, потому что у тебя война с отделом, который ее разрабатывает, при этом половина представителей Микрософта говорит, что ничего круче Сильверлайта нет и мы будем это развивать, а другая половина, что Сильверлайт это говно, и его использовать не надо. Офигенно эффективный стиль руководства.
Не было ничего крутого в SL. Глядя на говнокомпоенты от самого МС вобщем неочевидно, что технология классная. Проигрыватель видео так и не сделали внятный, чего говорить про чтото бОльшее ?
Здравствуйте, Ikemefula, Вы писали:
IT>>Кто тебе сказал, что JS не надо допиливать под каждый новый браузер? Ты в курсе сколько кода для совместимости написано в том же jQuery. А SL работает везде ожидаемо одинаково. I>Везде одинаково плохо
Вот только не надо этих неубедительных поклёпов. На SL делаю уже далеко не первое web приложение с высокими требованиями к интерактивности и только SL даёт хорошие результаты. JS и ASP.NET UpdatePanel, которые были изучены с пристрастием и опробованы в реальных проектах, сливают как стиральные машинки после стирки. Производительность у SL более чем приемлемая. Есть проблемы, но они касаются не столько SL сколько конкретных компонетов конкретных производителей. Ну и порог вхождения у технологии немного высоковат.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Ikemefula, Вы писали:
I>Во первых, она только для тех полей, где нужно чтото усиленно вбивать руками, их нужно всячески устранять разными способами, во вторых, это не является проблемой
Как это устранять, если это является частью интеррактивности? Это во-первых. Во-вторых, это является проблемой.
Если нам не помогут, то мы тоже никого не пощадим.
I>>Давай со времени запуска начнём
НС>Давай. Янус запускается на моей машине 2 секунды. Профайлер говорит, что больше 90% из этих двух секунд процессор проводит внутри нативной sqlite.
Это 'теплый' старт, когда все уже готово для работы. У меня просто отличное железо и обычное приложение безо всяких sqlite запускается больше 2 секунд.
I>>Потом продолжим с GC
НС>Что с ним не так?
Все так, если не считать налог почти в 1гб в х84 на память и дикую фрагментацию. только в 4.5 прикрутили кое что здесь, но вобщем ничего радикального не произошло.
I>>, глядя на мега-профайлеры для дотнета, както совсем не очевидно, что с перформансом все в шоколаде
НС>Мегапрофайлеры в дотнете — это не от проблем с производительностью, а от наличия на порядок большего числа возможностей для профайлеров поиграться с кодом.
То есть коммерческие конторы пишут продукты не на продажу, а чисто поиграться с кодом ? Тогда понятно, почему все до одного профайлеры тормозные.
I>>Дальше идет рендеринг — как в дотнете, не используя натив, быстро рендерить от 100 тыс и более объектов с минимальным временем отклика ?
НС>А зачем в GUI рендерить 100 тысяч объектов? Человек столько все равно за разумное время не оценит.
Это ты так думаешь.
I>>Цырк — GDI+ справляетс, а весь аппаратно ускореный WPF сосёт не нагибаясь.
НС>Так и GDI+ в дотнете доступен вполне.
E>Существование города с таким названием крайне малоправдоподобно, так, как для этого должна быть речка "зажопинск", на впадении которой в другую реку и должен бы стоять Усть-Зажопинск... E>Какая-нибудь Усть-Моча или Усть-Задница намного правдоподобнее звучат...
есть прецедент крепости Усть-Каменная которая превратилась в Усть-Каменогорск
Поэтому, можно предположить что в старину название было Усть-Зажопенная, а потом стал Усть-Зажопинск.
Меня беспокоит другое -- судя по окончанию -пинск этот город не в России, а в Белоруссии?
D>есть прецедент крепости Усть-Каменная которая превратилась в Усть-Каменогорск D>Поэтому, можно предположить что в старину название было Усть-Зажопенная, а потом стал Усть-Зажопинск.
Кроме всего прочего, населённый пункт, который переименовали из Усть-Зажопной в Усть-Зажопинск, плохо подходит на роль метафоры маленького и удалённого, так как само название как бы намекает на его рост и население свыше 50 000
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Здравствуйте, MxMsk, Вы писали:
MM>>>Да уж. По ходу плюсисты — самые закомплексованные из всего сообщества программистов. ГВ>>Я так понимаю, что ты не врубился, о чём идёт речь, поэтому на всякий случай перешёл на личности. Ну, дело твоё, разжёвывать не буду. MM>Я тебя умоляю, ты сам тут давно уже перешел на личности. Иначе, я уж и не знаю, к кому применить термин "дотнетчики", как ни ко мне, например.
Разве ты работаешь в отделе разработки дотнет-платформы в MS?
Речь шла именно о них, а не о потребителях этой технологии.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Здравствуйте, Ikemefula, Вы писали:
I>>На примере рендера вобщем неочевидно, ибо MS не смогла победить этот рендерер ни для SL ни для WPF, тормозное УГ.
НС>А пыталась? Потому что те люди, которые этот рендерер делали, они, мягко говоря, совсем не звезды. И что мешало нанять кого нибудь вроде McSeem2, чтобы он привел composition engine в чувство — большой вопрос, на который нормального ответа у меня лично нет.
А что бы он сделал?
В любом случае рендерер тут не при чем. Низкий отклик в WPF получается сугубо из-за необходимости вместо непосредственного вызова низлежащего DirectX делать сериализацию этих команд и затем их "проигрываение" на нейтивной стороне в своём потоке. Здесь уже ничем не поможешь — это приговор. А ноги приговора растут из-за тормознутого маршалинга дотнета, бо при непосредственных вызовах DirectX из того же самого потока, в котором композиция обсчитывается, всё работает еще хуже. Итого, McSeem2 подправил бы маршаллер дотнета? Сильно сомневаюсь...
Здравствуйте, vdimas, Вы писали:
V>Какие проблемы дотнету предоставить совместимую с HSTRING разметку строки для целей удешевления маршаллинга?
Это если только readonly строку так можно. Дотнетная строка иммутабельна, WinRT строка тоже. Это однозначно отбрасывает использование мутабельных плюсовых строк без маршаллинга.
Re[29]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Препарадоксальнейшая штука эти интернет-споры. Вроде бы, ты защищаешь свою точку зрения и в целом, имеешь на это полное право. Но по сути ты роняешь MS ниже плинтуса.
А я никогда МС без надобности и не защищал. Что тебя удивляет то?
ГВ>Вот смотри, что получается. Разведён большой шум вокруг Silverlight — стратегическая технология, обязательно продолжим развитие, а потом — бац! Стратегия резко меняется, остаётся немой вопрос: если это на самом деле стратегическая технология для компании, то что это за вредитель такой, который спокойной всю эту стратегию похерил (титан подковёрный, понимаешь)?
Ответ ты знаешь.
ГВ> Куда, вообще говоря, остальной топ-менеджмент смотрел?
Остальной это какой? Лысый тоже не сказать чтобы силен в стратегии, ему время нужно было чтобы понять что происходит, а остальных Синовский сожрал с потрохами. В МС много дальновидных менеджеров есть — Гатри тот же, Раддер. Но они, видать, менее искушенные в подковерной борьбе. Впрочем, увольнение Синовского определенные надежды рождает, может ситуация и начнет меняться в лучшую сторону. А может опять очередной Синовский вылезет, этих тоже в любой крупной компании хватает.
Здравствуйте, Erop, Вы писали:
НС>>Виндив и wpf team. Спасибо, насмешил. Это как конфликт Путина и мэра усть-зажопинска.
E>Существование города с таким названием крайне малоправдоподобно, так, как для этого должна быть речка "зажопинск", на впадении которой в другую реку и должен бы стоять Усть-Зажопинск...
Здравствуйте, vdimas, Вы писали:
V>А что бы он сделал?
Написал бы быстрый composition engine
V>В любом случае рендерер тут не при чем
Твои сказочки мы уже много раз слышали. Только у меня есть данные от людей, которые долго и больно меряли перформанс WPF внутри девдива. И проблема именно в рендерере. Маршаллер там не разглядеть даже в электронный микроскоп. Не согласен? Данные профайлера в студию.
Здравствуйте, koandrew, Вы писали:
K>Здравствуйте, Константин Л., Вы писали:
КЛ>>во-первых, свои догадки оставь при себе. во-вторых, я так говорю, потому что как раз осилил. и те игры, что я видел, "на COM" не писались, так что не надо.
K>Здрассьте — а как же весь насквозь COMовский DirectX, на котором пишут бОльшую часть современных игр?
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Ничего, подержат две версии некоторое время: Win7 и Win8. НС>Так на чем гуй тогда делать то? WPF загроблен, инвестировать в него нельзя, а WinRT на семерке недоступен. Вертаться обратно на винформсы 10-летней давности рождения и 15-летней — архитектуры?
Для Win7 — делайте на WPF, никто же его не удалил из репозиториев и не запретил скачивание.
Для Win8 — на WinRT.
Хотя самый надёжный вариант для десктопа — MFC. Никуда не делась, несмотря ни на какие штормы.
И всеми силами агитируйте за переход на Win8. А что, всё в порядке: современный мир, изменения, то-сё. Сам же говорил недавно.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>И всеми силами агитируйте за переход на Win8. А что, всё в порядке: современный мир, изменения, то-сё. Сам же говорил недавно.
Переход на win8 где? Единственное место где я надеюсь что она займёт хорошее место — это планшеты. А на десктопе win8 явно не нужна.
Не понятно, из чего ты сделал такой вывод, ну да это неважно. Мне просто забавно наблюдать, как одни и те же приёмы можно разворачивать в обе стороны. Думаю, что в действительности правы оказались те, кто когда-то пытался отбиваться, говоря о том, что провозвестники светлого будущего банально следуют маркетинговой политике Microsoft.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[31]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Очевидно, чтобы тебе не подсовывали то, от чего тебе плеваться хочется. НС>Это эльфизм в запущенной стадии.
Я знаю, но всегда стараюсь верить в людей. Часто безосновательно.
НС>И? Ты опять споришь с виртуальным собеседником. Тут никто не утверждал, что Синовский не способен нормально построить процесс разработки. Проблема не в этом.
Так дорогой мой, скилл "нормально построить процесс разработки" стоит сотни тысяч стратегических задумок, потому что эта фишка "стреляет" в 100% случаев, а прекрасные замыслы — раз в пятилетку, да и то, если звёзды правильно встанут. Клоунада с Longhorn тому примером.
ГВ>>К сожалению, читал. Глянь, кстати, ещё сюда: http://www.businessinsider.com/steven-sinofsky-profile-2012-11?page=1 И ещё, я выше приводил ссылку
на рассуждения одного из сотрудников Синофски. НС>Жополизы всегда найдутся.
Восхитительно. Значит, как кто-то отзывается хорошо — так сразу жополиз.
ГВ>>>>Ага-ага-ага, много он помог тому же WP? НС>>>Много. ГВ>>А как именно? Я тут совсем не в курсе. НС>WP в плане удобства разработки объективно до сих пор на две головы выше конкурирующих платформ.
Верю. Только что это меняет в смысле распространённости?
НС>>>Ага, аж под все три. А есть еще и монотач. ГВ>>Класс. То есть отдельные клиенты под три разные платформы — это, по-твоему, тьфу и растереть НС>Да.
Это эльфизм в запущенной стадии. (c)
ГВ>>, а две сильно похожих версии ПО под WPF и WinRT — это беда-беда-беда
НС>Две сильно похожих версии под WPF и WinRT (хотя похожесть там в основном в плане хамла, а дальше все намного печальнее) не избавляют от необходимости иметь отдельные версии под андроид и иос.
О, как! Может, лучше одну, на HTML+JS?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, MxMsk, Вы писали:
MM>Чтобы этот самый windiv зарабатывал бабло, нужно, чтобы под их софт кто-нибудь да что-нибудь писал. WPF в том числе привлекает разработчиков.
Неправильно. Что бы windiv зарабатывал бабло, нужно что бы ктото покупал софт. Вот если так повернуть, то совсем не очевидно, WPF чего меняет здесь.
>Поэтому утверждение, что windiv кормит команду WPF слишком упрощенное. Далее, откуда взялось мнение, что WPF мешает windiv-у работать?
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>>>ИМХО, конечно, но Product Vision должны формировать маркетологи, но уж никак не руководитель отдела разработки и уж точно — не голубоглазые мечтатели. НС>>>Стив Джобс, для примера — он кто из этих по твоему? I>>Стратегический маркетинг.
НС>А кто тогда глава виндива?
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Верно. И с другой стороны тоже в сериализаторе никаких тормозов. Тормоза вылазят при рендеринге, потому что растеризатор негодный.
V>>Самая сложная сцена сериализуется от намного меньше миллисекунды до единиц миллисекунд. НС>
НС>Низкий отклик в WPF получается сугубо из-за необходимости вместо непосредственного вызова низлежащего DirectX делать сериализацию этих команд
НС>Занавес.
Фи, как низкопробно-то...
и затем их "проигрывание" на нейтивной стороне в своём потоке.
Знаешь, где я вылавливаю основные тормоза в нейтивном коде? На управлении памятью. Угу, особенно тяжело выглядит картинка в момент освобождения памяти. Т.е. если выделение происходит обычно одновременно с какими-то вычислениями и более-менее размазано во времени, то освобождение памяти в нейтиве обычно синхронизировано. Поэтому, если ты пользуешь разделяемый менеждер памяти, то, освобождая за раз тысячи блоков памяти, ты тысячи раз захватываешь и отпускаешь общий примитив синхронизации. Что происходит с другими потоками в этот момент, догадаться несложно.
V>>В общем, руки есть, голова есть, хватит уже гадать который год на одну и ту же тему. НС>Гадаешь тут ты, а у меня есть реальные замеры.
Нет у тебя никаких реальных замеров, бо ты пока даже не согласился с тем решением, почему в WPF рисует отдельный поток, а в WinRT — напрямую. Ты который раз игнорируешь способ вызова методов COM-объектов дотнетом, если вызов идет не из того потока, в котором дотнет создал обертку над объектом. Просто один раз проведи описанный эксперимент и все вопросы отпадут. Что при этом происходит я подробно расписывал уже не один раз.
НС>>>Данные профайлера в студию. V>>Гы-гы, дотнетный профайлер не умеет
НС>Где я писал про дотнетный профайлер?
А где ответ на этот вопрос:
Как ты измеришь тот факт, что пока ты блокируешь разделяемый менеджер памяти при вызове GlobalAlloc (в процессе сериализации сцены), ты тормозишь другие нейтивные потоки?
Тебе кинуть скрин-шот профайлера AMD с цифрами длительностей ожидания потоков? Покажешь мне, куда там смотреть? )))
Что я в таких случаях делаю — я тоже уже расписывал не раз. Создаю разные варианты/схемы для одного и того же и сравниваю их м/у собой. Т.е. данные по профайлеру во время тюнинга межпоточных вещей могут быть лишь сравнительные, бо смотреть в абсолютные цифры ожидания потоков — это профанация. Почему? Ожидание бывает естественное (на вводе/выводе, например), и вынужденное. Причем, один и тот же поток (в данном случае — нейтивный проигрыватель) попадает в ожидание по обоим причинам — сначала ждет сигнала о том, что можно забирать новую порцию данных, а затем пытается вернуть память в разделяемый менеджер. Например, в наших юнит-тестах, до использования специальных менеджеров памяти, дополнительные потоки, в которых происходило разрушение объектов и возврат данных в общий менеджер, жили до ~0.3..0.5 сек на вызовах деструкторов графов объектов, тормозя при этом всё и вся. Субъективные ощущения характера задержек и временные их интервалы как раз близки к тому, что показывает WPF при попытках пересчета сцены из большого кол-ва видимых контролов после серии ресайзов (например, мышкой за бордер быстро подёргать).
Я же говорю, вы не туда и не тот порядок цифр смотрите. Покажешь мне такой рендерер, который рисует сцену за сотню ms? То-то... А задержки именно такие.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Так дорогой мой, скилл "нормально построить процесс разработки" стоит сотни тысяч стратегических задумок
Синовский, повторюсь, не уникален. На такую должность вполне можно подыскать человека, у которого и скилл этот присутствует, и с product vision все хорошо. Ну либо найти человека только с первым скиллом + скиллом умения прислушиваться к словам других, а не изображать из себя носорога со сверхценными идеями.
НС>>Жополизы всегда найдутся. ГВ>Восхитительно. Значит, как кто-то отзывается хорошо — так сразу жополиз.
Индусы, они такие
НС>>WP в плане удобства разработки объективно до сих пор на две головы выше конкурирующих платформ. ГВ>Верю. Только что это меняет в смысле распространённости?
В смысле распространенности надо долго и больно бить по яйцам маркетоидов. Нет, они традиционно у МС некудышные, но то, что произошло с винфоном, это уже вообще ни в какие ворота. И тут, кстати, почти вся вина на лысом — его провал.
НС>>Две сильно похожих версии под WPF и WinRT (хотя похожесть там в основном в плане хамла, а дальше все намного печальнее) не избавляют от необходимости иметь отдельные версии под андроид и иос.
ГВ>О, как! Может, лучше одну, на HTML+JS?
Это, если у нас GUI достаточно тяжелый, будет дороже и хуже, чем основное приложение на WPF/SL и 2.5 облегченных клиента для мобилок (либо один клиент на монотаче с реюзом части кода большого приложения).
Здравствуйте, Sinix, Вы писали:
V>>Я же говорю, вы не туда и не тот порядок цифр смотрите. Покажешь мне такой рендерер, который рисует сцену за сотню ms? То-то... А задержки именно такие. S>Давайте заканчивать цирк. Вам в 100й раз сказали, что проблемы не в очереди рендерера
Сказал человек, прямо скажем, не потрудившийся ничего проверить лично до сих пор. Несколько лет назад он вообще был пойман на том, что плохо представлял происходящее в процессе рендеринга в WPF. Ну и когда-то под своим основным ником он был одним из самых заметных представителей/защитников дотнета на этом сайте (последние годы попустился малость), так что случай не так чтобы беспристрастный.
S>(если рассуждать логически, то рендер напрямую в UI-потоке должен тогда тормозить ещё сильнее).
Именно! Оно и тормозит напрямую в UI-потоке еще сильнее, только уже по другой причине: вычислителная мощь дотнета в плавающей цифре никакая + кривой маршаллинг вызовов COM. Когда-то в одной из приложух надо было обрабатывать в рантайм потоки видео (накладывать несложные графические элементы сверху). Так вот, при использовании DirectX напрямую из дотнета, комп из тех времен (2005-й) не справлялся с нужным кол-вом видео-стримов, что бы я не пытался делать. Написал нейтивную DLL, дергал на каждый кадр "высокоуровневую" самописную процедуру (просто портировал целевой код из дотнета на С++) — всё стало летать. Потом потратил день на исследования происходящего, через простые COM-"переходники" к DirectX объектам, и всё стало понятно.
S>P.S. Что вам мешает взять PIX и посмотреть, как оно рендерится?
OMG!
OK, как, по-твоему, рисуются эллипсы в OpenGL? Предположи для самопроверки, никуда не заглядывая...
Автор по ссылке хороший такой махровый нуб. Он приводит как откровения стандартные вещи. Давай посмотрим внимательней, что происходит:
И далее есть еще одна приведенная им картинка с линиями по контуру. Т.е. CPU выдаёт в GPU массив точек, но кол-во этих точек (42 точки на рисунке) и сам характер вычислений более чем скромный, в сравнении со случаем сглаженного рисования эллипса полностью на CPU. Сотню таких "каркасных" точек можно посчитать за пару сотен ns, вызов метода объекта DirectX — единицы ns. То, что автор называет "блокировкой на каждый вызов" — разница в стоимости порядка десятка ns на вызов и то не факт, бо это же аппаратная блокировка, а не ожидание на примитиве синхронизации ОС. Т.е. один лишний нейтивный вызов рояли не играет вообще. Кароч, многие миллионы таких элипсов в секунду рисовать не проблема и это (неожиданно!) именно так и происходит во всех приложениях. Заметь, ни у кого не тормозит — AutoCAD может рисовать поболе примитивов в сцене весьма и весьма шустро.
В чем он прав — что каждая сцена рисуется с 0-ля. Но это было известно сразу после выхода WPF, что трансформации в WPF просто летают, в отличие от лейаута. Т.е. обсуждать имело смысл только это. Остальное — несущественно. Но рисование каждой сцены с 0-ля — это вынужденная мера, т.к. для реализации инкрементальных изменений необходимо было связывать дотнетные объекты с объектами DirectX, то бишь для схемы дух потоков потребовался быы двусторонний обмен данными, вместо одновтороннего "конвейера"... а это вообще всё убило бы, т.к. в этом случае изменения на дотнетной стороне могли происходить только в "транзакционном" виде, с ожиданием подтверждения от нейтивного рендерера. Тут бы задержки могли достигать уже секунд. ))
Еще махровое нубство:
Typical WPF UI tries to execute at 60 frames every second!
Это происходит только при изменении сцены, т.е. автор врет или сам не знает. И зачем анимировать изменения сцены чаще, чем развертка монитора?
И да, когда говорят о тормозах в WPF, то речь не о 60 кадрах в секунду, а об видимых задержках в сотню и более ms. Я же говорю, вы не те порядки цифр смотрите. Задержки в сотни ms на аппаратных блокировках шины GPU или лишних вызовах DirectX не получить никогда. Этого можно добиться только на взаимных блокировках потоков на примитивах синхронизации.
Здравствуйте, Ночной Смотрящий, Вы писали:
I>>А ты как хотел, каждые год-два устраивать революцию ?
НС>Я хотел, чтобы на развитие WPF выделялось бабло. Чтобы, к примеру, переписать тормозной composition engine.
Это надо к главе WPF подойти, пробить в грудную клетку и печень и заставить взяться за разработку быстрой композиции и рендеринга. А лучше просто пробить и взять вместо него другого, кто понимает, что перформанс == фичи в будущем.
I>> Иногда надо заниматься тем, что тупо улучшать перформанс не выпуская никаких фич.
НС>Перформансом тоже никто заниматься не будет, если проект не реанимируют.
Были баблосы — перформансом не занимались. Будут баблосы — снова будет тоже самое, потому что глава WPF просто фантазёр.
Времени на разработку было хрен знает сколько, челы реально не понимали, что перформанс == фичи в будущем.
Странно ожидать, что они внезапно поумнели и раскаялись.
В принцепе такое даже возможно теоретически, но WPF уже "замерз" — слишком много кода написано что бы менять внутренности.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Технологических проблем — вполне возможно. Но есть еще и политические проблемы. Виндив фактически определяет основные денежные потоки внутри корпорации и основные направления развития. НС>Более конкретно — посмотри на ситуацию с WinRT. Оно нахрен никомы в девдиве не надо было. Но тут нарисовался Синовский со своим NIH и панеслась — все планы девдива похерены и он дружно перепиливает кучу компиляторов, тулов, CLR и саму студию под поддержку этого WinRT. -2 года в развитии всех технологий разработки.
Ну так например C++ на Windows предыдущие лет 10 прожил как раз в таком состояние и вроде как ничего, вполне живой.
НС>Конкуренция внутри одного подразделения? Ну ну.
Конкуренция платформ за разработчиков. У нас же сейчас какая официальная политика MS? Есть три платоформы: нейтив, .Net, html+javascript. И они с точки зрения MS теперь вроде как равноправные — выбор полностью за разработчиками...
Здравствуйте, Ночной Смотрящий, Вы писали:
I>>Стратегия только начинается уровнем повыше.
НС>Уровень повыше там только один — Баллмер. Ты уверен что вся стратегия сосредоточена в его руках?
Кусочки он делегирует подчиненным, но не это главное. Ты похоже путаешь маркетинг и стратегический маркетинг. Стратегический маркетинг учитывает развитие всей компании. Винда только часть всего того, что делает микрософт. Соответсвенно windiv получает своего рода заказ на разработку, а не просто бежит впереди всех в прекрасное будущее.
Отсюда ясно, что заказ этот может оформить только тот, у кого есть глобальное видение того, что понадобится в будущем. У президента одного из подразделений такого глобального видения нет и быть не может, у него просто нет доступа к полной информации.
Здравствуйте, Yoriсk, Вы писали:
I>>>>1000 компов это очень мало. У меня был первый опыт SL, втыкал в него всего три месяца и первый пробный "тираж" был на полторы тыщи юзеров. Y>>>1К — это очень мало, а 1.5К — это уже достаточно. Интересная теория. I>>По твоему 'пробный "тираж"' это много ? Интересные навыки чтения, продолжай.
Y>При чём тут "пробный тираж" и подобные поэтические описания? Вы сами сказали, что 1К — это очень мало, у тебя был целый 1.5К и там немедленно вылезли проблемы. Видимо порог "много/мало" где то между 1 и 1.5К.
Пробный — значит выборка мала. И уже на такой выборке __можно__ воспроизвести проблемы. Соотвественно "всё хорошо" на выборке в 1000 не может считаться аргументом, просто проблема не воспроизводится не известно из за каких причин.
Можешь здесь взять паузу и рассказать, что разу тебя проблема не воспроизводится, значит её нет.
Y>Всякий раз, когда я слышу про то, что "юзеры боятся ставить" как-то магически оказывается, что у этих робких юзеров последние апдейты FF/Chrome/... и прочее и прочее и прочее. Ява апдейтер чуть ли не два раза в день чего-то требует, а юзеры всё боятся...
Кто тебе сказал что у них последние апдейты были ?
Y>Замечательно как мы от простой просьбы указать броузер через "специальную таблицу совместимости" приехали к каким-то там гистограммам из логов. И всё без какой-либо конкретики. Y>Уж что угодно покажите.
Я с того момента уже работу поменял, так что отдыхай.
I>>Я перечислил целую кучу проблем — кривые контролы
Y>В чём кривость?
Мне все что я указывал персонально тебе пересказывать ? Вот скажем контрол после прокрутки не восстанавливает свое визуальное состояние. Или tabcontrol имеет коллеци Items, для которой нужен специальный источник. Коллеция ObservableCollection кривая и непригодна для расширения.
I>>низкий перформанс, гнусное аппаратное ускорение
Y>Чем и как меряли? Можно результаты посмотреть?
Здравствуйте, Ночной Смотрящий, Вы писали:
V>>Фи, как низкопробно-то... НС>Не, это просто кого то память подводит.
Точно! "Никогда не сдавайся!"
Даже после того как был пойман за руку на выразках из предложений, будем что-нибудь да возражать.
V>>
V>>и затем их "проигрывание" на нейтивной стороне в своём потоке.
НС>Ага, ну то есть дотнет на самом деле не причем?
Конечно не при чем! Если не учитывать, что этот поток был создан исключительно по причине, что дотнет напрямую не справлялся...
V>>Знаешь, где я вылавливаю основные тормоза в нейтивном коде? На управлении памятью. НС>В GUI. Мдя, жесть.
Где угодно. Зависит от трафика. Особенность WPF (неожиданно!) как раз в порождении хорошего трафика м/у потоками.
V>> Угу, особенно тяжело выглядит картинка в момент освобождения памяти. Т.е. если выделение происходит обычно одновременно с какими-то вычислениями и более-менее размазано во времени, то освобождение памяти в нейтиве обычно синхронизировано. Поэтому, если ты пользуешь разделяемый менеждер памяти, то, освобождая за раз тысячи блоков памяти, ты тысячи раз захватываешь и отпускаешь общий примитив синхронизации. Что происходит с другими потоками в этот момент, догадаться несложно.
НС>Ну то есть проблема таки в безруких товарищах, реализовавших composition engine? Тогда с чем ты вообще споришь?
Вооот, начинаешь понимать.
Я спорю с тем, что конкретно рендерер якобы кривой и рекомендованный тобой спец исключительно по графике его как-то починит. У меня к людям, разрабатывавшим сериализацию на дотнетной стороне и проигрывание на нейтивной претензий нет. Я же говорю — там всё просто как пробка.
тормоза получаются не от того, что какой-то компонент в отдельности тормозит, а от того, что сценарий работы всей кухни крайне некомфортный
Им нужен был отдельный товарищ, умеющий эффективно передавать данные м/у потоками. В MS таких товарищей полно, бо когда захожу (бывает) дебаггером в системные вызовы, то вижу, что унутре в виндах сплошное lock-free и прочий нетривиальный тюнинг.
Конкретно что произошло в WPF — не смогли увидеть источник проблем, поэтому не смогли сформулировать задачу для решения этой проблемы. Всё!
А когда DirectUI на Vista/Win7 показал, чего может аналогичная технология (GUI на XML), но полностю нейтивная, то стало поздно трепыхаться — смысл лечить больного отпал. Дешевле похоронить и вместо больного дать отлаженную технологию, относительно совместимую с уже имеющимся кодом.
Я вообще не понимаю возмущение дотнетчиков... Когда-то поддержка тем WinXP обходилась в нейтивных GUI-приложениях куда как дороже по трудоёмкости, чем миграция WPF-приложений на WinRT. Эта миграция простая и дешевая, и стоит переписанного порядка 10% кода, связанного исключительно с GUI.
Сорри, но охать по поводу перехода на более шуструю технологию — вот уж действительно ретроградство, как оно есть.
НС>>>Где я писал про дотнетный профайлер? V>>А где ответ на этот вопрос: V>>
V>>Как ты измеришь тот факт, что пока ты блокируешь разделяемый менеджер памяти при вызове GlobalAlloc (в процессе сериализации сцены), ты тормозишь другие нейтивные потоки?
НС>Скачай какой нибудь приличный профайлер и посмотри. Профайлер многопоточных приложений с красивым рисованием блокировок есть, емнип, в VS2012. В том числе для нативного кода.
У AMD, AFAIK, один из самых лучших и подробных профайлеров на сегодня. Студийный профайлер — попса. Да и не было у MS никогда вменяемых нейтивныъ профайлеров вовремена WPF, а сейчас уже поздно.
НС>Но ты, конечно, можешь продолжать делать выводы исключительно из своих предположений и субъективных ощущений, да.
Про свои субъективные ощущения я напоминаю лишь от того, чтобы оппоненты не забывались, о каком порядке цифр идет речь. Если заметно субъективно, то речь уже о порядках сотен ms. И я точно знаю, где именно можно получить такие задержки, бо регулярно с этим сталкиваюсь и постоянно подобное Г расчищаю.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Какой такой налог, да еще в целый гигабайт? У меня вот янус — прям сейчас занимает 81М. С БД на 1.5 гига.
Потому что винформс, т.е. относительно тонкая обертка над нейтивными окнами.
НС>Это объективный факт. 100 тысяч на одном экране — это нечеловеческие объемы. А если у тебя рендерится 100 тысяч, но реально можно оценить штук 500 — то ты знаешь ответ.
Здравствуйте, Ночной Смотрящий, Вы писали:
_>> У нас же сейчас какая официальная политика MS? Есть три платоформы: нейтив, .Net, html+javascript. И они с точки зрения MS теперь вроде как равноправные — выбор полностью за разработчиками... НС>Ага, и поэтому подавляющее большинство софта в маркете — на дотнете.
Количество не означает качество.
Офис на дотнете?
Скайп?
Почта?
?
ГВ>Всех троих можно понять и все три точки зрения имеют право на существование и больше того, все трое достойны определённого сочувствия.
Если что, то я тут на стороне строителей дороги и заодно думаю, что лягушек неплохо бы аккуратно переселить в какое-нибудь специальное озеро. Живые твари, всё-таки, жалко же.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
_>>Так если внутренняя политика MS будет соответствовать их же официальной, то будет всё поровну. НС>Конкуренция внутри корпорации приведет только к дикому перерасходу ресурсов на разработку. В МС, конечно же, этого нет. Там есть генеральная линия партии, и все выстраивается вокруг нее.
Странно. Получается ровно наоборот: именно конкуренция, притом довольно жестокая там и есть. "Феномен Синовского" со всеми toxic environments тому подтверждением.
_>>Т.е. не совсем верно говорить что эти силы оторвали от .net разработки НС>Это не предмет для обсуждения, это факт. На поддержку WinRT ушла масса ресурсов. Причем, что обидно, впустую — компиляторы и языковые пакеты для C#/VB идут прямиком в корзину, вместе со всем правленным под WinRT кодом, в следующей студии будет совсем другой продукт.
Жесть! Какая замечательная низкоконкурентная среда. Сплошная генеральная линия партии! Столбовая, блин, дорога прогресса. Ну, поворачивает иногда... Слегка так, градусов на 160-180...
НС>>>Ага, и поэтому подавляющее большинство софта в маркете — на дотнете. _>>Ну так значит у .net пока ещё всё отлично... НС>Видишь ли, мне, как разработчику, совершенно плевать на "равные права". Мне важно развитие и направление этого развития. Если МС начнет распылять усилия по всем направлениям — это окончится очень печально.
Так вот как раз Синофский-то и обеспечивал то самое развитие и что гораздо важнее — направление развития. Не ты ли сам говорил ровно год назад
Скорее наоборот — роль дотнета возросла, так как впервые низкоуровневое API параллельно разрабатывается уже с учетом интересов managed мира.
Что ж ты сам себе противоречишь?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Т.е. улучшение покрытия стандарта не считается? А что тогда ты вообще ждешь от VC++? Очередного C++/CX?
Какого стандарта? Если C++98, то он как бы к концу 2000-ых уже несколько устарел... А если про что-то новое, то до 2010-го года никаких намёков даже не было.
НС>Отставание в чем?
Достаточно посмотреть в каком году в gcc и в vc появились auto, rvalue, лямбды, инициализация, for и т.п. Части этого в vc кстати до сих пор нет. И это я говорю только о том что лично меня интересовало, а там ещё куча других новшеств есть.
НС>Что все? Вот студию, ее как, тоже надо распилить на части для псевдоконкуренции? Или надо вообще несколько студий выпустить? Для дотнета на дотнете, для С++ на С++, для HTML+JS на HTML+JS? Ну что за ерунда? Конкуренция внутри корпорации приведет только к дикому перерасходу ресурсов на разработку. В МС, конечно же, этого нет. Там есть генеральная линия партии, и все выстраивается вокруг нее.
В данном случае как раз выгоднее поддерживать больше разных технологий, что бы охватить большее число разработчиков. Да и нет тут прямой конкуренции. Борьба между c++, .net, html+javascript это же приблизительно как конкуренция в автоконцерне между подразделениями производящими премиум авто, ширпотреб и электромобили. )
НС>Это не предмет для обсуждения, это факт. На поддержку WinRT ушла масса ресурсов. Причем, что обидно, впустую — компиляторы и языковые пакеты для C#/VB идут прямиком в корзину, вместе со всем правленным под WinRT кодом, в следующей студии будет совсем другой продукт.
Это откуда такие данные?
НС>Видишь ли, мне, как разработчику, совершенно плевать на "равные права". Мне важно развитие и направление этого развития. Если МС начнет распылять усилия по всем направлениям — это окончится очень печально.
Для кого печально? Например для C++ разработчиков сейчас только сплошной позитив пошёл. Вот даже обещают в самое ближайшее время апдейт для компилятора включающий много вкусностей из нового стандарта. А раньше даже с выходом новой студии не факт что и было бы такое. Ну а про html разработчиков я вообще молчу. Раньше они и не мечтали иметь возможность разрабатывать полноценные приложения.
Здравствуйте, vdimas, Вы писали:
V>>>Была бы возможность сделать быстрый WPF, за 7 лет был бы сделан. НС>>Докажи. V>Это надо понимать так, что ты бы дал еще 7 лет???
Это надо понимать, что твои заявления, как обычно, высосаны из пальца.
НС>If you have an iPad you're probably familiar with the random 'crash' every now and then.
НС>
Ты путаешь решение и частоту возникновения проблемы. Наличие решения в первой же ссылке гугла ни о чем не говорит, потмоу что гугл умеет хорошо искать.
Покажи хоть чтото, по чем можно оценить частоту возникновения проблемы.
Здравствуйте, michae1, Вы писали:
M>А в чем собственно hell?
M>Технология успешно используется уже второй десяток лет, документирована, обкатана в реальных приложениях, у нее есть неплохой фрейм для с++ — ATL, а главное она последовательна и логична.
В этом?
// wrl-consume-component.cpp
// compile with: runtimeobject.lib#include <Windows.Foundation.h>
#include <wrl\wrappers\corewrappers.h>
#include <wrl\client.h>
#include <stdio.h>
using namespace ABI::Windows::Foundation;
using namespace Microsoft::WRL;
using namespace Microsoft::WRL::Wrappers;
// Prints an error string for the provided source code line and HRESULT
// value and returns the HRESULT value as an int. int PrintError(unsigned int line, HRESULT hr)
{
wprintf_s(L"ERROR: Line:%d HRESULT: 0x%X\n", line, hr);
return hr;
}
int wmain()
{
// Initialize the Windows Runtime.
RoInitializeWrapper initialize(RO_INIT_MULTITHREADED);
if (FAILED(initialize))
{
return PrintError(__LINE__, initialize);
}
// Get the activation factory for the IUriRuntimeClass interface.
ComPtr<IUriRuntimeClassFactory> uriFactory;
HRESULT hr = GetActivationFactory(HStringReference(RuntimeClass_Windows_Foundation_Uri).Get(), &uriFactory);
if (FAILED(hr))
{
return PrintError(__LINE__, hr);
}
// Create a string that represents a URI.
HString uriHString;
hr = uriHString.Set(L"http://www.microsoft.com");
if (FAILED(hr))
{
return PrintError(__LINE__, hr);
}
// Create the IUriRuntimeClass object.
ComPtr<IUriRuntimeClass> uri;
hr = uriFactory->CreateUri(uriHString.Get(), &uri);
if (FAILED(hr))
{
return PrintError(__LINE__, hr);
}
// Get the domain part of the URI.
HString domainName;
hr = uri->get_Domain(domainName.GetAddressOf());
if (FAILED(hr))
{
return PrintError(__LINE__, hr);
}
// Print the domain name and return.
wprintf_s(L"Domain name: %s\n", domainName.GetRawBuffer(nullptr));
// All smart pointers and RAII objects go out of scope here.
}
static class Program
{
/// <summary>
/// The main entry point for the application.
/// </summary>
[STAThread]
static void Main()
{
Application.EnableVisualStyles();
Application.SetCompatibleTextRenderingDefault(false);
Application.Run(new Form1());
}
}
Здравствуйте, drewet, Вы писали:
IT>>Кто тебе сказал, что JS не надо допиливать под каждый новый браузер? Ты в курсе сколько кода для совместимости написано в том же jQuery. А SL работает везде ожидаемо одинаково. D>То есть нигде не работает? А то я уже задолбался... чуть что — "Ля-ля тополя, нужен сервелат." Его че, как открываешь страничку где используется SL нужно каждый раз устанавливать?
Давай обойдёмся без вот этого тупого тролинга. У меня вообще ни разу не было проблем с "как открываешь страничку где используется SL нужно каждый раз". Просто никогда. Речь идёт о большой финансовой компании и моим юзером может быть практически любой из десятков тысяч её работников по всему миру. То, что у тебя такие проблемы лично мне говорит прежде всего о кривых ручках ваших админов.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, michae1, Вы писали:
M>Ну попробуй написать потокобезопасный локальный сервер (без COM), который будет данные, скажем, через pipe гонять и обмениваться управляющими командами с клиентами, вот и посмотрим насколько это будет "легче" сделать без COM.
Ээээ... Это всё прекрасно делается без COM. Причём обычно лучше и проще.
M>>>(В использоваии MTA модели не больше сложности, чем в любой многопоточной программе.) I>>И часто у тебя встречается маршалинг в любых многопоточных программах ?
M>Ну попробуй написать потокобезопасный локальный сервер (без COM), который будет данные, скажем, через pipe гонять и обмениваться управляющими командами с клиентами, вот и посмотрим насколько это будет "легче" сделать без COM.
Есть классная вещь для этого, WCF называется. Легко и просто.
I>>Если бы работало. А так большая часть глюков в нынешнем софте это кривые комовские компоненты...
M>Глюки есть, с этим я и не спорю, но чтобы быть честными, нужно добавить, что и сложность решаемых задач досточно высокая, ну и как бы ошибки есть везде вопрос в том наскольок их легко\слодно локализовать.
Сложность в основном искусственная — надо продираться черз нагромождения мусора.
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>, с какой стороны ни посмотри. Даже выкидывание WPF и SL можно объяснить тем, что им найдена замена и не где-нибудь, а аж на уровне базовых API. НС>Нет им никакой замены. WinRT UI жестко ограничен рамками метро, с WPF и SL он не пересекается.
Зато он один и внедрён на нижний уровень всех вариаций Win8, а не добавлен в виде посторонних сервисов. Не знаю кому как, но такое воплощение вызывает больше доверия. Ограничения тоже понятны, но тем не менее.
ГВ>>Откуда тогда разговоры о распылении усилий? НС>Оттуда, что задача декларативного метроподобного UI уже была решена в рамках Windows Phone. При этом, что характерно, совместимость с SL там обеспечена максимальная, в отличие от WinRT.
Вот именно — решена там, решена сям, а WinRT — единая платформа для всех. По-моему, вполне рациональный подход, не? И если WinRT позиционируется в первую очередь для мобильных платформ, то тем более объяснимо: у Google свой стор+API, у Apple — свой, а MS чем хуже? У неё тоже свой стор со своими приложениями под свой API, идите все на фиг. Притом API от MS можно использовать даже на десктопе. Profit!
ГВ>> Или это из-за того, что теперь кто-то придумал новый велосипед, которым срочно будут заменять WinRT? НС>Велосипед это WinRT.
Извини, но это чушь. Выходит, что несколько параллельных похожих друг на друга реализаций — это хорошо, а одна общая замена для них — плохо? Нет, я не против тысячи цветов, но это... До абсурда тоже не надо доводить. Или сейчас для очередного утешения чьего-то самолюбия снова начнут плодить нечто: "такое, но не такое, а чуть другое, хотя и похожее, но точно лучше, чем в некоторых случаях"?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Cyberax, Вы писали:
C>Здравствуйте, Ночной Смотрящий, Вы писали:
C>>>Вот он и не работает, на retina-display. НС>>Багрепорт уже отправил? C>Это известная проблема, не у одного меня.
Хм, у наших кастомеров всё работало... Собсна, первое, что я сделал после "а может SL прикрутим" — это накидал контролов и послал маководам.
Только на счёт ретины не в курсе.. У тебя ретина прямо в ОС вшита, может поэтому?
C>Ну и на Линуксе оно тоже нормально не работает вообще. Moonlight глючит чуть менее, чем в 100% случаев.
Здравствуйте, hi_octane, Вы писали:
D>>Мда... Не надо думать, ты здесь один Д'Артаньян. Если бы я один раз установил и в последующие разы все было ОК, я бы даже и не думал сюда писать.
_>У меня похожее было — ищи косяк в настройках безопасности, или в том что аддон SL'я запрещён.
У некоторых юзеров которые сидели за Kerio Firewall всякая хрень творилась. Я даже разбираться не стал, написал что бы пробили в печень одмину.
Здравствуйте, vdimas, Вы писали:
V>Баги можно починить. А Win8 уже не починишь.
Починят с будущими апдейтами.
V>В Win8 они не дают пользоваться другими приложениями, пока сами активны. V>Таки зря отказались от перекрывающихся окошек... V>ИМХО, достаточно было подкрутить умолчательный лейаут окошеки всё, а не навязвать его отсутствие.
А какими приложениями вы пользуетесь пока другие активны не в вин8?
А вообще, если не хотите пользоваться вин8 приложениями, то пользуйтесь обычными? Это ли не свобода выбора?
V>>Я думаю, что АПИ — это АПИ, а прикладные либы — это прикладные либы. Согласен, дотнетная обертка над WinRT пока не полноценная в том плане, что она пока немножко низкоуровневая, являясь фактически лишь зеркалом этого АПИ. Но ты сам себе показал, что базовые возможности фактически бесконечны, в сравнении с тем же WPF (где так просто DX-слои с XAML-слоями не перемешаешь) и тем паче в сравнении с SL. Это и есть та самая необходимая разработчикам свобода.
ЕА>Ну тогда я думаю мы пришли к единому мнению. Твой первоначальный вопрос был — почему возмущаются дотнетчики, а мой ответ:
ЕА>1) Лишили многих привычных плюшек
— Дешевых в повторе ручками.
— А нафига плюшки в базовом АПИ? ИМХО, в WPF/SL столько плюшек исключительно от невозможности разрабатывать полноценные свои.
ЕА>2) Работает только на метро стороне, поэтому почти всегда приходится держать вторую версию для сильверлайта\впф, где есть другие проблемы на которые теперь точно все забили
Признайся, коллега, вы что, напрямую с GUI-типами у себя там работаете? Или таки в GUI у вас есть некое подобие View, которое тупо одинаково биндиться на всех платформах?
ЕА>согласен?
ИМХО, небольшой %% несовместимости исключительно в коде View-слоя ничего не решают. Вообще ничего.
V>>А вот прямо компонент, тебе можно было не тратить пол-дня на написание своего элемента, а взять готовый WriteableBitmapEx.
ЕА>Видел, он нам не подошел, в тот момент, когда этот вопрос решался. Кажись там функций для вывода текста не было, но точно не помню.
Т.е., вместо того, чтобы дописать в открытый исходник 10% дополнительного функционала, вы сделали 100%? Тогда причем тут все мы?
V>>Прошло только пару месяцев, т.е. еще очень и очень рано делать выводы. На MS-сайте лежит официальный список нейтивного АПИ, еще не покрытого WinRT... Вот так — они прямо об этом и говорят, что этот АПИ доступен апсторовским приложениям. Так что, p-invoke в руки, как во времена первого дотнета и первых WinForms... Это не страшно, поверь.
ЕА>Не так меня просто напугать, я и в кодах когда-то писал, и на асме, и на си. Просто сейчас мне больше не охота писать низкоуровневые велосипеды, а больше нравиться работать на высоком уровне абстракции.
Дык, разрабатывай эти абстракции, а не только кушай готовые. Хорошо разработанные абстракции обычно беспроблемны в реализации.
ЕА>>>Например, бекграунд кнопочки, или заливка текста, или контур произвольного Path. И использование этой заливки я могу задать в стиле, в биндинге итд.
V>>Дык, кто тебе мешает код по ссылке оформить в виде DependencyProperty соотв. контейнера?
ЕА>Не всегда так получиться, например выставляешь заливку кнопочке, а она по факту применяется внутри ее шаблона к разным подэлементам, да еще в зависимости от условий, да еще по разному в разных состояниях.
Ну да, последняя ссылка была сугубо извращения. Но принцип этого извращения был такой же — рисунок в битмап в памяти. Но фиг с ней. Мне в этом WriteableBitmapEx не нравится только одна реализованная стратегия копирования. Если склероз не изменяет, то в нейтивном DX можно лочить память по чтению, по записи и чтению-записи, т.е. можно обойтись в одну транзакцию: залочил — нарисовал — закоммитил. А здесь всё происходит в 2 транзакции: залочил — прочитал в int[], порисовал на массиве int[], залочил-закоммитил обратно. Пичаль...
Здравствуйте, IT, Вы писали:
IT>Не знаю кто тебе через какую замочную щель показывает дела в микрософте, но как минимум этот кто-то не в курсе что только что вышел PH8, где SL является флагманской технологией.
Тебе забыли сказать, что флагманской технологией нынче является HTML+JS.
I>>Кстати, может, дело не в моём троллинге, а в нищебродской конторе где не бывает ни iMac, ни Macbook, ни планшетов, ни линукса, а взамен всего этого есть что нибудь навроде дресскода ? IT>Понятно, меня лично пообсуждать не получается, давай пообсуждаем мою контору. Моя контора, кстати, одна из тех, которые устроили последний кризис на Вол Стрит четыре года назад. Дресскода там действительно есть. Не очень жёсткий, но есть. А вот маков и икбуков нет. У нас люди делом занимаются, а не на планшетках злобных птицей гоняют.
Видимо, таки стоило закупить туда макбуки. Может тогда топ-менеджмент не смотрел бы на тонны HTML, а занимался полезным чем-то.
А если серьёзно, то внутрикорпоративное дерьмо можно хоть на FoxPro писать. Всем пофиг.
Здравствуйте, Cyberax, Вы писали:
IT>>Ты немного опоздал. Это мы уже обсудили. JS как технология сосёт как тпылесос. Если в MS и были какие-то на этот счёт высокие указания, то после уволнения сабжа всё станет на свои места. C>Она сосёт, но зато работает везде, где надо.
Сосёт больше, чем работает. Тут всё очень просто. JS усугубляет криворукость программистов, SL выпрямляет насколько это возможно.
C>Хорошо знаю (технически, я сам топ-менеджер в компании с теоретический капитализацией в 100млн. баксов). Это в распилочных институтах типа банков всем пофиг.
IT>>Опять ошибаешься. Не всем. C>Всем, всем.
Не всем, не всем.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, IT, Вы писали:
C>>Большинство софта нынче — на C/C++. В Виндовом магазине HTML+JS сейчас — самая быстрорастущая секция. IT>Это ты про переделанные примеры на тему CD-ejector?
Ну так что сделать, если в AppStore другого ничего и нет?
Здравствуйте, IT, Вы писали:
C>>Она сосёт, но зато работает везде, где надо. IT>Сосёт больше, чем работает. Тут всё очень просто. JS усугубляет криворукость программистов, SL выпрямляет насколько это возможно.
ROTFL. Я ещё не видел ни одного нормального приложения на SL.
Вообще.
C>>Хорошо знаю (технически, я сам топ-менеджер в компании с теоретический капитализацией в 100млн. баксов). Это в распилочных институтах типа банков всем пофиг. IT>
Да, ибо правда. Клепай деривативы себе и наслаждайся.
Здравствуйте, Cyberax, Вы писали:
IT>>Сосёт больше, чем работает. Тут всё очень просто. JS усугубляет криворукость программистов, SL выпрямляет насколько это возможно. C>ROTFL. Я ещё не видел ни одного нормального приложения на SL. C>Вообще.
Ты же топ-менеджер. Тебе не положено
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, MxMsk, Вы писали:
MM>>>А тебе зачем WinRT? Ты же Макбук купил. Или тебя MS заставила поставить WinRT? C>>Это я про то, что свободы выбора на Винде всё меньше. MM>Да ну, чья бы корова мычала. Ты вложил бабки в самую закрытую экосистему в мире. После такого, все обвинения в ограничениях с твоей стороны — лицемерие.
Конкретно у Mac OS X:
1) Открыты исходники ядра (Darwin)
2) Открыт значительный кусок userland'а (всё, что не связано с графикой)
3) Используются стандартные OpenSource тулзы типа bash/cups/и т.п.
Онально огороженный iPhone я покупать не собираюсь.
Глава подразделения Windows and Windows Live, вице-президент Microsoft Стивен Синофски сложил полномочия вскоре после запуска Windows 8. тут
С сегодняшнего дня, 13 ноября, обязанности Синофски будут разделены между двумя женщинами — Джулией Ларсон-Грин (Julie Larson-Green) и Тэми Реллер (Tami Reller). Первая будет отвечать за разработку всех новых продуктов семейства Windows и аппаратного обеспечения. В свою очередь, Реллер возьмет на себя ответственность за бизнес-развитие платформы. Обе будут подчиняться генеральному директору Microsoft Стиву Балмеру (Steve Ballmer).
Здравствуйте, hi_octane, Вы писали:
_>Может позиции Windows-команды немного ослабнут, и они перестанут нам наконец из года в год втюхивать причёсанный по-новому COM.
Здравствуйте, Aлeкceй, Вы писали:
A>Здравствуйте, Demandred, Вы писали:
D>>Вот теперь точно веднекапец D>>Бабы быстренько доведут винду до полного говна
A>Возможно. Одна из них создавала руководила интерфейсом для вин7 и 8, а также ввела риббон.
Мне риббон понравился.
Здравствуйте, Kernan, Вы писали:
A>>Возможно. Одна из них создавала руководила интерфейсом для вин7 и 8, а также ввела риббон. K>Мне риббон понравился.
Мне понравился риббон в восьмерке, а в офисе никак привыкнуть не могу.
Здравствуйте, Aлeкceй, Вы писали:
A>Здравствуйте, Demandred, Вы писали:
D>>Вот теперь точно веднекапец D>>Бабы быстренько доведут винду до полного говна
A>Возможно. Одна из них создавала руководила интерфейсом для вин7 и 8, а также ввела риббон.
а также разрабатывала ранние версии Internet Explorer
Здравствуйте, hi_octane, Вы писали:
_>Может позиции Windows-команды немного ослабнут
Не ослабнут. Позиции баблом в основном определяются.
_>и они перестанут нам наконец из года в год втюхивать причёсанный по-новому COM.
СОМ это не виндив, СОМ это Синовский персонально. Но, боюсь, WinRT это надолго — этот фарш не провернуть назад. С друнгой стороны, из секретных источников известно, что более 60% софта в винсторе на дотнете. Еще процентов 30 на JS. С++ это оставшиеся 10 процентов и в основном это проекты со старым сложным кодом.
Здравствуйте, iLikeCookies, Вы писали:
LC>WinRT как раз таки с технической точки зрения отличная штука! И Синофски — мужик, сделал свое дело на 5+
Синовский конечно мужик. Но проблема в другом — он окончательно задавил все инновации, которых и так негусто у МС. Хорошо хоть Розлин поздно уже было закрывать, а то сидели бы мы с toolchain 20 летней давности.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Здравствуйте, Aлeкceй, Вы писали:
A>>Возможно. Одна из них создавала руководила интерфейсом для вин7 и 8, а также ввела риббон.
НС>Кому только этот риббон не приписывают.
А как оно было на самом деле?
я не уверен, что MS выгоден его уход (с точки зрения PR) -- это бросает тень на Windows 8.
Более правдоподобно, что его просто хотели подвинуть в сторону, а он не согласился и ушел совсем.
Здравствуйте, dilmah, Вы писали:
D>я не уверен, что MS выгоден его уход (с точки зрения PR) -- это бросает тень на Windows 8. D>Более правдоподобно, что его просто хотели подвинуть в сторону, а он не согласился и ушел совсем.
Кто его хотел подвинуть? Да и зачем?
Здравствуйте, dilmah, Вы писали:
D>Более правдоподобно, что его просто хотели подвинуть в сторону, а он не согласился и ушел совсем.
Обычно об уходе экзеков публично говорят крайне политкорректно. И то, что Синовского уволили в один день без предупреждения, и лысый весьма однозначно сказал, что проблема именно в самом Синовском (а не как обычно, имярек решил тра-ля-ля тополя попробовать себя на новом поприще и т.д.), говорит о многом.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>СОМ это не виндив, СОМ это Синовский персонально. Но, боюсь, WinRT это надолго — этот фарш не провернуть назад. С друнгой стороны, из секретных источников известно, что более 60% софта в винсторе на дотнете. Еще процентов 30 на JS. С++ это оставшиеся 10 процентов и в основном это проекты со старым сложным кодом.
Это сразу понятно было, что большая часть будет на дотнете писаться. Это плюсовики смуту наводили, что теперь только на с++ все будет, а кроме игр, скорей всего, ничего и не будет.
Здравствуйте, Ночной Смотрящий, Вы писали:
LC>>Какие инновации? Как раз его детище WinRT и является огромным шагом и реальной инновацией. НС>СОМ, скрещеный с дотнетными метаданными вместо type library — да, огромная инновация, просто прорывная.
Еще раз повторяю вопрос, какие инновации были задавлены Синофски?
А что ты предлагаешь вместо COM? Как бы ты, поступил на его месте?
Здравствуйте, Aлeкceй, Вы писали:
A>Я бы этого хотел. Мне интересно, почему везде пишут, что он не пригоден для смартов, но ведь вп7.5 шустро работал даже на 610.
Тут дело совсем даже не в производительности, тут все гораздо глубже. Могу объяснить более подробно, но не сейчас, т.к. вторую ночь подряд готовлюсь к презентации проекта Обещаю, как высплюсь и будет время еще выйти в онлайн, попробую более подробно описать все причины такого решения.
Здравствуйте, dilmah, Вы писали:
D>кстати, курс акций упал чуть ли не 10% (29->27) с начала недели.
Это и понятно. Относительно плохой старт серфэйса, продажи вин8 пока не раскрываются, но они, скорей всего, намного лучше идут.
А не в курсе про продажи вп8? В интернете особо ничего нет, кроме того, что на китайский рынок выйдет другая 920.
Mark my words: Ballmer will announce his retirement soon. Sinofsky left because he was informed he wouldn't be considered for the CEO job.
Julie LG and Tami Reller's appointments are only temporary. A massive re-org (either timed to Ballmer's retirement or sure to follow in his replacement's first quarter) is a certainty.
Здравствуйте, Aлeкceй, Вы писали:
A>Это и понятно. Относительно плохой старт серфэйса, продажи вин8 пока не раскрываются, но они, скорей всего, намного лучше идут. A>А не в курсе про продажи вп8? В интернете особо ничего нет, кроме того, что на китайский рынок выйдет другая 920.
Что-то ты слишком быстро результатов хочешь. Прошло то всего пару недель. Во многих странах еще и не продается ничего. Понятно, конечно, что можно на Apple попенять. Но это другая экосистема: раскрученная и безальтернативная. Я вот, например, жду появления в продаже Samsung Ativ Tab и HTC Windows Phone 8S.
Здравствуйте, MxMsk, Вы писали:
A>>Это и понятно. Относительно плохой старт серфэйса, продажи вин8 пока не раскрываются, но они, скорей всего, намного лучше идут. A>>А не в курсе про продажи вп8? В интернете особо ничего нет, кроме того, что на китайский рынок выйдет другая 920. MM>Что-то ты слишком быстро результатов хочешь. Прошло то всего пару недель. Во многих странах еще и не продается ничего. Понятно, конечно, что можно на Apple попенять. Но это другая экосистема: раскрученная и безальтернативная. Я вот, например, жду появления в продаже Samsung Ativ Tab и HTC Windows Phone 8S.
Про 4кк проданных обновлений написали через 4 дня.
А я жду серфэйс прошку. Хотя, смотря какая стоимость будет.
Здравствуйте, iLikeCookies, Вы писали:
НС>>Тебя в какой области интересует? Из свежего, к примеру, WPF. LC>WPF живет и здравствует.
Развитие остановлено.
НС>>Ничего. Пусть СОМ доживает в своей нише спокойно. LC>Понятно, взамен ничего предложить не можешь.
А нужно? Вот лично мне — нет, не нужно.
НС>>Вообще бы не трогал API по возможности и уж точно не создавал еще один дотнет, только другой. LC>По возможности он его и не трогал, Win32 осталась и останется надолго for bacward compatibility
А зачем тогда WinRT вообще нужен? Красивые объектные обертки и так уже для Win32 есть в любой зрелой платформе, capability based песочницу можно и на старом плоском Win32 сделать, разметив экспортируемые функции, будет не хуже. Что то еще?
Но дело, как я уже говорил, вовсе не в WinRT. WinRT сам по себе, в принципе, не так уж и ужасен, хоть и не шедевр. Проблема в другом — Синовский вел себя как носорог — кидался на все, что не соответсвовало его представлениям о прекрасном. Истории с Реем Оззии или совсем свежая с Гатри — ты как, считаешь что это нормально, такое поведение со стороны второго человека в компании? По мне так нет. Синовский прекрасный тактик, но отвратительный стратег, у него нет правильного product vision и это главная причина, почему и семерка и восьмерка так вяло замещают ХР. Но если семерку было можно понять — эволюционные релизы полезны, даже если профит от них меньше ожидаемого, то восьмерка, которая, по идее, должна была привнести новое качество, ожиданий явно не оправдывает, если речь не о Windows RT планшетах.
Здравствуйте, hi_octane, Вы писали:
_>Может позиции Windows-команды немного ослабнут, и они перестанут нам наконец из года в год втюхивать причёсанный по-новому COM.
Здравствуйте, iLikeCookies, Вы писали:
LC>Еще раз повторяю вопрос, какие инновации были задавлены Синофски? LC>А что ты предлагаешь вместо COM? Как бы ты, поступил на его месте?
Здравствуйте, Ночной Смотрящий, Вы писали:
IT>>~0%. НС>Оптимист.
Оптимистом я бы был, если бы сказал 100%. А так даже невооружённым взглядом видно, что пока на горизонте нет ничего даже в зачаточном виде. А как известно из ничего ничего не появляется.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Aлeкceй, Вы писали:
A>Это сразу понятно было, что большая часть будет на дотнете писаться. Это плюсовики смуту наводили, что теперь только на с++ все будет, а кроме игр, скорей всего, ничего и не будет.
Если платформа будет не популярна так и будет > 90% NET + JS.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Но дело, как я уже говорил, вовсе не в WinRT. WinRT сам по себе, в принципе, не так уж и ужасен, хоть и не шедевр. Проблема в другом — Синовский вел себя как носорог — кидался на все, что не соответсвовало его представлениям о прекрасном.
Сдаётся мне, что как раз представлениями о прекрасном руководствуются именно дотнетчики. Так что, всё разумно, все занимаются своим делом: одни продолжают представлять прекрасное, другие — doing things done. Области ортогональные, не пересекающиеся.
НС>Истории с Реем Оззии или совсем свежая с Гатри — ты как, считаешь что это нормально, такое поведение со стороны второго человека в компании?
А что за истории?
НС>По мне так нет. Синовский прекрасный тактик, но отвратительный стратег, у него нет правильного product vision и это главная причина, почему и семерка и восьмерка так вяло замещают ХР.
Странная какая-то претензия. ИМХО, конечно, но Product Vision должны формировать маркетологи, но уж никак не руководитель отдела разработки и уж точно — не голубоглазые мечтатели. Хотя, кто его знает, разные люди разные удивительные вещи про MS рассказывают...
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
LC>>WPF живет и здравствует. НС>Развитие остановлено.
Блин, только книгу купил...
И что теперь MS предлагает использовать для гуя в качестве основной технологии? На WPF уже можно забить или перспективы есть?
Здравствуйте, sysenter, Вы писали:
S>Блин, только книгу купил... S>И что теперь MS предлагает использовать для гуя в качестве основной технологии? На WPF уже можно забить или перспективы есть?
WinRT на будущее, WPF на настоящее. Пока жива Windows 7, а это будет еще очень долго, WPF и GDI никуда не денутся, а для приложений, не укладывающихся в концепцию Windows 8 UI, так тем более.
Здравствуйте, sysenter, Вы писали:
S>Здравствуйте, Ночной Смотрящий, Вы писали:
LC>>>WPF живет и здравствует. НС>>Развитие остановлено.
S>Блин, только книгу купил... S>И что теперь MS предлагает использовать для гуя в качестве основной технологии? На WPF уже можно забить или перспективы есть?
Я боюсь, что открою страшную тайну, но тот же WinRT для UI взял очень многое из WPF. По факту, одна и та же идеология(декларативный UI) и инструменты(XAML etc.) с небольшими различиями.
Здравствуйте, FR, Вы писали:
FR>Здравствуйте, Ikemefula, Вы писали:
НС>>>СОМ, скрещеный с дотнетными метаданными вместо type library — да, огромная инновация, просто прорывная.
I>>Это не инновация, это восстановление баланса, который был слишком перекошен в менеджед.
FR>Инновация тут в том что наконец то создана равноправная компонентная среда в которой можно FR>легко и удобно создавать компоненты как на управляемых так и неуправляемых средах. FR>Это нужно было делать с самого начала NET эпопеи, а не заниматься тупой политикой по FR>вытеснению натива.
Здравствуйте, Константин Л., Вы писали:
КЛ>COM это в общем-то hell на текущий 2012 год.
КЛ>[]
А в чем собственно hell?
Технология успешно используется уже второй десяток лет, документирована, обкатана в реальных приложениях, у нее есть неплохой фрейм для с++ — ATL, а главное она последовательна и логична.
Здравствуйте, michae1, Вы писали:
M>Здравствуйте, Константин Л., Вы писали:
КЛ>>COM это в общем-то hell на текущий 2012 год.
КЛ>>[]
M>А в чем собственно hell?
M>Технология успешно используется уже второй десяток лет, документирована, обкатана в реальных приложениях, у нее есть неплохой фрейм для с++ — ATL, а главное она последовательна и логична.
Здравствуйте, Константин Л., Вы писали:
КЛ>Здравствуйте, michae1, Вы писали:
M>>Здравствуйте, Константин Л., Вы писали:
КЛ>>>COM это в общем-то hell на текущий 2012 год.
КЛ>>>[]
M>>А в чем собственно hell?
M>>Технология успешно используется уже второй десяток лет, документирована, обкатана в реальных приложениях, у нее есть неплохой фрейм для с++ — ATL, а главное она последовательна и логична.
КЛ>например, в threading-модели.
ну хз, с MTA практически не сталкивался — не было необходимости, все время юзаю STA и там все прозрачно. Было бы интересно узнать что не так с MTA?
Здравствуйте, iLikeCookies, Вы писали:
LC>Здравствуйте, Константин Л., Вы писали:
LC>>>Следующим барьером является Garbage Collector. .NET навязывает всем свой GC. Хотя на самом деле, GC по сути является частностью реализации. И у каждой среды, свой GC наиболее подходящий под их задачи. Например, GC у JS и GC .NET'а это два очень разных по внутренней реализации механизма.
КЛ>>а что, GC у JS хороший?
LC>Тут дело не в том, хороший он у него или плохой. Дело в том, что он у него свой. Кроме JS есть еще куча разных сред с еще более специфичными GC. Если мы возьмем .NET в качестве базы для нового API, то он должен реализовать все эти специфичные GC для каждой из этих сред. Должен будет предоставить отдельную реализацию GC для JS, отдельную реализацию GC для ...
удивительно, но эта проблема решена в c++/cli. я не понимаю, зачем вот это выделенное.
LC>>>И наконец, производительность. Что бы не говорили адепты управляемых сред, каким бы эффективным и производительным ни был GC, у него все равно есть задержки, какими бы маленькими и не заметными для пользователей они не были. Все равно есть класс приложений и задач, где это недопустимо и необходимо всегда детерминированное время отклика. Соответственно, среда должна позволять ручное управление памятью, там, где это нужно. Сам сейчас работаю в такой области и это действительно важный фактор.
КЛ>>c++/cli
LC>C++/CLI работает поверх CLR, соответсвенно, она тоже является managed средой. Да и вообще, задумана она была изначально как промежуточный этап в портировании проектов на C++ под .NET.
она является одновременно и managed и unmanaged. а ты рассказываешь что это невозможно.
КЛ>>COM это в общем-то hell на текущий 2012 год.
LC>Так ты предложи альтернативу. Причем альтернативу обкатанную, проверенную временем. Для Windows это почти единственный логично-верный шаг. Вон, Apple сколько лет обкатывали и контрибьютили в LLVM пока полностью туда не пересели.
палка обкатана и проверена многими поколениями неандертальцев, прости за аналогию.
COM в текущем виде — единственно верный фейл, с ним никто не захочет иметь дело.
Здравствуйте, Константин Л., Вы писали:
КЛ>COM в текущем виде — единственно верный фейл, с ним никто не захочет иметь дело.
Никакого фейла. 3D игры уже хрен знает сколько лет пишут с использованием COM, и никто особенно не жалуется. Тот факт, что ты его не асилил, говорит о тебе, а не о технологии
Здравствуйте, Константин Л., Вы писали:
LC>>Тут дело не в том, хороший он у него или плохой. Дело в том, что он у него свой. Кроме JS есть еще куча разных сред с еще более специфичными GC. Если мы возьмем .NET в качестве базы для нового API, то он должен реализовать все эти специфичные GC для каждой из этих сред. Должен будет предоставить отдельную реализацию GC для JS, отдельную реализацию GC для ...
КЛ>удивительно, но эта проблема решена в c++/cli. я не понимаю, зачем вот это выделенное.
Во первых, давайте уточним, о какой проблеме Вы говорите? Что именно Вам не понятно? Зачем Вы мне все время предлагаете C++/CLI, это инструмент совершенно для иных задач.
LC>>C++/CLI работает поверх CLR, соответсвенно, она тоже является managed средой. Да и вообще, задумана она была изначально как промежуточный этап в портировании проектов на C++ под .NET.
КЛ>она является одновременно и managed и unmanaged. а ты рассказываешь что это невозможно.
Она является неким склеивающим промежуточным этапом между Managed and Unmanaged средами. Для облегчения портирования C++ проектов под .NET. Сам провел кошмарные два года занимаясь Managed C++, а затем C++/CLI проектами, бессмысленная и не нужная трата времени
КЛ>палка обкатана и проверена многими поколениями неандертальцев, прости за аналогию.
И ты прости, суть твоей аналогии не уловил.
КЛ>COM в текущем виде — единственно верный фейл, с ним никто не захочет иметь дело.
Дело в том, что с ним уже имеют дело, более двадцати лет.
Здравствуйте, koandrew, Вы писали:
K>Здравствуйте, Константин Л., Вы писали:
КЛ>>COM в текущем виде — единственно верный фейл, с ним никто не захочет иметь дело.
K>Никакого фейла. 3D игры уже хрен знает сколько лет пишут с использованием COM, и никто особенно не жалуется. Тот факт, что ты его не асилил, говорит о тебе, а не о технологии
во-первых, свои догадки оставь при себе. во-вторых, я так говорю, потому что как раз осилил. и те игры, что я видел, "на COM" не писались, так что не надо.
Здравствуйте, Константин Л., Вы писали:
КЛ>во-первых, свои догадки оставь при себе. во-вторых, я так говорю, потому что как раз осилил. и те игры, что я видел, "на COM" не писались, так что не надо.
Здрассьте — а как же весь насквозь COMовский DirectX, на котором пишут бОльшую часть современных игр?
Здравствуйте, Константин Л., Вы писали:
КЛ>мне не понятно, почему в c++/cli смогли решить проблемы и гетерогенной системы типов, и разных моделей управления памятью и проч, а в новом winapi — нет.
Не смогли они ничего решить. А в новом WinRT такой проблемы и нет вовсе. В этом одно из их ключевых отличий.
КЛ>вопрос в том, кто с ним имеет дело. сейчас COM мало кто знает/помнит, а вспоминать тем более не захотят
Вот WinRT и позволяет поверх себя реализовать любые среды и на любой вкус. Там даже на HTML/CSS/JS можно уже полноценно писать приложения под Windows!
Здравствуйте, Константин Л., Вы писали:
КЛ>>>во-первых, свои догадки оставь при себе. во-вторых, я так говорю, потому что как раз осилил. и те игры, что я видел, "на COM" не писались, так что не надо. K>>Здрассьте — а как же весь насквозь COMовский DirectX, на котором пишут бОльшую часть современных игр? КЛ>ок, я в геймдеве не рулю, видел только пару игр на opengl. но что это, в общем-то, доказывает? что есть узкая ниша, где все вынуждены юзать COM?
DirectX — это не только игры(не такая, кстати, и узкая ниша), а графика вообще. 3D моделлеры, CAD-ы, скетчеры и прочее.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Что-то у меня складывается обратное впечатление, что он чуть ли не единственный адекватный руководитель в MS:
Ты просто не владеешь информацией в полном объеме. Синовский превосходный тактик, проблема не в этом вовсе. А в том, что со стратегией у него плохо и с умением воспринимать чужие идеи. Для второго человека в МС это фатальный недостаток.
Здравствуйте, IT, Вы писали:
IT>Оптимистом я бы был, если бы сказал 100%. А так даже невооружённым взглядом видно, что пока на горизонте нет ничего даже в зачаточном виде.
А может шифруются? Вон про TypeScript лично я до момента анонса слышал только слухи о том, что Хейлсберг делает какой то язык для веба, никакой конкретики.
Здравствуйте, iLikeCookies, Вы писали:
LC>В первую очередь, требовалась замена сильно устаревшей и не отвечающей требованиям времени Win32 API, которой около 20 лет уже
И что конкретно не так с Win32? И с СОМ, кстати, тоже?
LC>Одной из них, является система типов
Внезапно, как раз таки система типов WinRT практически идентична CLRной.
LC>.NET навязывает всем свою систему типов.
WinRT тоже.
LC>Следующим барьером является Garbage Collector
Внутре CLR можно managed кучу и не использовать.
LC>И наконец, производительность. Что бы не говорили адепты управляемых сред, каким бы эффективным и производительным ни был GC, у него все равно есть задержки, какими бы маленькими и не заметными для пользователей они не были
Я тебе больше скажу, у native кода "все равно есть задержки, какими бы маленькими и не заметными для пользователей они не были".
LC>Соответственно, среда должна позволять ручное управление памятью, там, где это нужно.
И CLR (не путать с C#), внезапно это позволяет.
LC>С другой стороны. Начиная где-то с 90-х годов у нас есть COM. Который уже показал себя в бою, не навязывает никаких технических деталей реализации GC и системы типов. Позволяет писать высокопроизводительные системы в нативном коде. И что очень важно, почти у всех сред и языков уже есть биндинги к COM'у. Эдакий клей, соединяющий все и вся. В том числе, у .NET'а тоже отличные биндинги к COM'у. И вполне логично и здраво было взять COM как за основу новой API.
А может тогда сам СОМ и надо было взять, не?
LC>И только Google выбрали Java
Они не просто жабу выбрали, они сваяли уродский недоделанный Далвик.
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Что-то у меня складывается обратное впечатление, что он чуть ли не единственный адекватный руководитель в MS:
НС>Ты просто не владеешь информацией в полном объеме. Синовский превосходный тактик, проблема не в этом вовсе. А в том, что со стратегией у него плохо и с умением воспринимать чужие идеи. Для второго человека в МС это фатальный недостаток.
По такой логике получается, что всё, что сделано в W7 — сплошь выдумано Синофски. Тебе это не кажется абсурдом? То есть нет, я охотно верю, что на всём, что там делалось так или иначе стоит "виза" Стивена, прямо или косвенно, но то, что он это всё придумал — нонсенс (ИМХО). А раз это нонсенс, то получается, что чужие идеи он всё-таки воспринимает. Тогда становится вопрос — что же это за идеи и решения, которые он отклонил, и почему. Раскрути цепочку дальше сам, она несложная.
Просто, ты понимаешь, вот сколько я ни встречал обвинений в "неуживчивости", "отсутствии правильного мышления", ещё какой-нибудь чепухе такого рода — везде в конечном итоге оказывалось, что на самом деле мечтательность одного сталкивается с рациональностью другого. Либо просто кто-то кому-то нахально пудрит мозги.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Сдаётся мне, что как раз представлениями о прекрасном руководствуются именно дотнетчики. Так что, всё разумно, все занимаются своим делом: одни продолжают представлять прекрасное, другие — doing things done. Области ортогональные, не пересекающиеся.
НС>"doing things done" недостаточно для должности такого уровня.
Тогда, ИМХО, у МС проблема. Пора плотнее заняться Линуксом (никогда не думал, что напишу это).
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>По такой логике получается, что всё, что сделано в W7 — сплошь выдумано Синофски.
А что сделано в W7? Не, ну после Висты вполне нормальный стабилизирующий релиз, конечно. Только никакой стратегии там не видно.
Не, я конечно понимаю твою старперскую позицию . Чем меньше изменений, тем лучше. Только такой стратегией в этом мире битвы не выигрывают.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Видимо потому что все возможности WinRT С++/CLI покрывает как бык овцу. Но у С++/CLI был фатальный недостаток — его писал не Синовский. Зато Синовский в свое время ваял СОМ 2.0, похороненный после старта дотнета. Видимо, закрытие этого проекта оставило глубокий след в его душе. И когда он получил в свои руки огромную власть, он сделал то что сделал. Хотели идеи 15-летней давности? Кушайте теперь, не обляпайтесь. Инновации, ять ...
Вот это каша в голове
Во-первых, C++/CLI есть частная реализация языка C++ на базе .NET.
Во-вторых, это даже не среда, она работает поверх (и немного сбоку и криво) платформы .NET.
В третьих, давай не будем гадать о том, у кого какие были душевные травмы, а то ведь ей богу, напоминаем старушек у подъезда.
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>По такой логике получается, что всё, что сделано в W7 — сплошь выдумано Синофски.
НС>А что сделано в W7? Не, ну после Висты вполне нормальный стабилизирующий релиз, конечно. Только никакой стратегии там не видно.
Стратегия на очистку системы от лишнего хлама — тоже стратегия. AFAIK — вполне плодотворная.
НС>Не, я конечно понимаю твою старперскую позицию . Чем меньше изменений, тем лучше. Только такой стратегией в этом мире битвы не выигрывают.
Странно, кому нужны "изменения", если после них продукты лишаются потребительских качеств? Вот пользователеи — они тупые донельзя, им нужно, чтобы пальцем тыркнул и система тут-же отреагировала, а иначе: "А-а-а-а! Не работа-а-а-ает!" (Я утрирую, не будем вдаваться в спор о перфомансе, о нём и так много сказано) И чтобы она не загадывала ребусов с UAC. А платят — пользователи, а не "изменения".
Или я как-то не так понимаю реалии современного мира?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>> Пора плотнее заняться Линуксом (никогда не думал, что напишу это).
НС>Почему именно Линуксом?
С моей колокольни — он выигрышном положении перед Windows, потому что не собирается кардинально меняться ради "выигрывания битв" не пойми кого с не пойми чем и ради очередного светлого будущего (читай, для удовлетворения чьих-то глупых амбиций). Поскольку довольно много известного мне народу рассуждает примерно так же, то...
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Стратегия на очистку системы от лишнего хлама — тоже стратегия. AFAIK — вполне плодотворная.
Ага, на один релиз. А дальше?
НС>>Не, я конечно понимаю твою старперскую позицию . Чем меньше изменений, тем лучше. Только такой стратегией в этом мире битвы не выигрывают. ГВ>Странно, кому нужны "изменения"
Кастомерам. Яблофон наглядно продемонстрировал что случается с теми, кто пытается без изменений обходиться.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>С моей колокольни — он выигрышном положении перед Windows, потому что не собирается кардинально меняться ради "выигрывания битв"
Да что ты. В линухах изменений не в пример больше, нежели в винде. Погляди, к примеру, на самый популярный линух — убунту. Одно только юнити перекрывает все нововведения семерки в разы.
ГВ> не пойми кого с не пойми чем и ради очередного светлого будущего (читай, для удовлетворения чьих-то глупых амбиций)
Здравствуйте, Ночной Смотрящий, Вы писали:
IT>>Оптимистом я бы был, если бы сказал 100%. А так даже невооружённым взглядом видно, что пока на горизонте нет ничего даже в зачаточном виде. НС>А может шифруются? Вон про TypeScript лично я до момента анонса слышал только слухи о том, что Хейлсберг делает какой то язык для веба, никакой конкретики.
И что этот TypeScript заменил?
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Ночной Смотрящий, Вы писали:
LC>>.NET навязывает всем свою систему типов. НС>WinRT тоже.
Ну почитайте хотя бы какие-то обзорные статьи, не буду же я сейчас рассказывать про Language Projection. Про то, что WinRT предоставляет language independent types.
НС>Я тебе больше скажу, у native кода "все равно есть задержки, какими бы маленькими и не заметными для пользователей они не были".
Конечно есть, речь о том, что они являются детерменированными.
LC>>Соответственно, среда должна позволять ручное управление памятью, там, где это нужно. НС>И CLR (не путать с C#), внезапно это позволяет.
А ты знаешь, как оно внутри это работает? Я вот, знаю
НС>Они не просто жабу выбрали, они сваяли уродский недоделанный Далвик.
Они написали отличную реализацию Java ориентированную под мобильные устройства, которая работает уже на таком количестве мобильных устройств, что .NET'у и не снилось.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>С моей колокольни — он выигрышном положении перед Windows, потому что не собирается кардинально меняться ради "выигрывания битв" не пойми кого с не пойми чем и ради очередного светлого будущего (читай, для удовлетворения чьих-то глупых амбиций). Поскольку довольно много известного мне народу рассуждает примерно так же, то...
Ага, у линуксоидов до сих пор баттхерт на счёт вялого и системд. А если не вспоминать эпичные срачи на темы: KDE 4 != KDE 4.0, про гном3 не пригоден для десктопа и т.д., и т.п., то да, изменений ради битв нет.
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>С моей колокольни — он выигрышном положении перед Windows, потому что не собирается кардинально меняться ради "выигрывания битв" НС>Да что ты. В линухах изменений не в пример больше, нежели в винде. Погляди, к примеру, на самый популярный линух — убунту. Одно только юнити перекрывает все нововведения семерки в разы.
При чём тут Unity? Это просто интерфейс пользователя. Однако, никто же не собирается делать managed-ядро для Линукса и объявлять, скажем, пайпы "устаревшими" и "ну их на фиг". Вроде бы — не собирается.
ГВ>> не пойми кого с не пойми чем и ради очередного светлого будущего (читай, для удовлетворения чьих-то глупых амбиций) НС>О да, ты угадал с точностью до наоборот.
Изменения изменениям — рознь. Я ничего не имею против того, чтобы "зацветали тысячи цветов". Клумба — это клёво!
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Стратегия на очистку системы от лишнего хлама — тоже стратегия. AFAIK — вполне плодотворная. НС>Ага, на один релиз. А дальше?
А дальше — это надо обладать всем массивом информации, которым располагает директорат МС. Мне это недоступно, звиняй.
НС>>>Не, я конечно понимаю твою старперскую позицию . Чем меньше изменений, тем лучше. Только такой стратегией в этом мире битвы не выигрывают. ГВ>>Странно, кому нужны "изменения"
НС>Кастомерам. Яблофон наглядно продемонстрировал что случается с теми, кто пытается без изменений обходиться.
Ты фразу-то не обрывай, ага? Напоминаю:
Странно, кому нужны "изменения", если после них продукты лишаются потребительских качеств?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Aлeкceй, Вы писали:
ГВ>>С моей колокольни — он выигрышном положении перед Windows, потому что не собирается кардинально меняться ради "выигрывания битв" не пойми кого с не пойми чем и ради очередного светлого будущего (читай, для удовлетворения чьих-то глупых амбиций). Поскольку довольно много известного мне народу рассуждает примерно так же, то...
A>Ага, у линуксоидов до сих пор баттхерт на счёт вялого и системд.
Так... Ох, не надо было про Линукс вспоминать, ох, не надо было...
A>А если не вспоминать эпичные срачи на темы: KDE 4 != KDE 4.0, про гном3 не пригоден для десктопа и т.д., и т.п., то да, изменений ради битв нет.
Так, придётся признать ошибку: да, Линукс — это та ещё арена сражений красноглазых борцунов. Правда, меня наличие LSB всё-таки несколько успокаивает.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Прояснится, имхо, где то к весне. Кое что постараюсь узнать на техэде, но вряд ли стоит ожидать какой то конкретики так рано.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>И много из винды натива успели вытеснить?
Так не осилили, перед выходом висты было море обещаний.
Но переключив все ресурсы на NET они сделали ровно то в чем чуть выше
ты обвинил Синовского — остановили развитие.
Притом я считаю что такое развитие натива и для NET было бы очень полезно.
НС>Ох уж мне эти менеджедненавистники ...
Ну конечно а то NET'чики таки белые и пушистые, любят все закапывать,
да с копалкой есть проблемы
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Внутре CLR можно managed кучу и не использовать.
И после этого резко ограничить доступные от CLR возможности.
Хоть массивами то будет возможно пользоваться?
Тот же WinRT никаких ограничений не накладывает, единственное язык (его рантайм)
должен уметь вызывать методы через указатель на VMT, практически все языки
в windows это умеют.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Ох уж мне эти менеджедненавистники ...
Еще я не говорю что NET ненужен, нужен но для компонентов натив во многих
случаях лучше, так вот только за то что компоненты как для натива так и
для нет должны были бы с самого начала легко делатся как на нативе так и
на NET меня записывают в менеджедненавистники
Здравствуйте, iLikeCookies, Вы писали:
LC>И этот код потеряет свойство портабельности. Ладно, допустим и этого нам не надо. Что мешает этот высокопроизводительный код написать на голом C++ и воспользоваться P/Invoke? Что мешает обернуть наш код в COM, и затем его уже дергать из .NET'а?
Адский геморрой связанный с отсутствием статического контроля со стороны компилятора. Поменялся где-нибудь размер структурки, на C++\CLI перекомпилировал и все будет работать (если скомпилировалось). На P\Invoke будешь долго и нудно сидеть и по хедерам сравнивать, что там у них внутри поменялось, из-за чего P\Invoke стал падать по Access Violation. P\Invoke кроме как для WinAPI (то есть для API, которое уже 20 лет не меняется) ни для чего не подходит.
Здравствуйте, iLikeCookies, Вы писали:
LC>Здравствуйте, Константин Л., Вы писали:
КЛ>>мне не понятно, почему в c++/cli смогли решить проблемы и гетерогенной системы типов, и разных моделей управления памятью и проч, а в новом winapi — нет.
LC>Не смогли они ничего решить. А в новом WinRT такой проблемы и нет вовсе. В этом одно из их ключевых отличий.
у тебя не смогли, у меня смогли. я успешно писал на c++/cli
КЛ>>вопрос в том, кто с ним имеет дело. сейчас COM мало кто знает/помнит, а вспоминать тем более не захотят
LC>Вот WinRT и позволяет поверх себя реализовать любые среды и на любой вкус. Там даже на HTML/CSS/JS можно уже полноценно писать приложения под Windows!
о да, это то, о чем все мечтают. судя по фразам, ты маркетолог
Здравствуйте, iLikeCookies, Вы писали:
LC>Здравствуйте, Ночной Смотрящий, Вы писали:
НС>>Видимо потому что все возможности WinRT С++/CLI покрывает как бык овцу. Но у С++/CLI был фатальный недостаток — его писал не Синовский. Зато Синовский в свое время ваял СОМ 2.0, похороненный после старта дотнета. Видимо, закрытие этого проекта оставило глубокий след в его душе. И когда он получил в свои руки огромную власть, он сделал то что сделал. Хотели идеи 15-летней давности? Кушайте теперь, не обляпайтесь. Инновации, ять ...
LC>Вот это каша в голове
каша как раз у тебя.
LC>Во-первых, C++/CLI есть частная реализация языка C++ на базе .NET.
во-первых, c++/cli это первый пример смешанной системы типов и сборки мусора с управлением памятью
вручную.
[]
_>Да, когда документация врёт и не знаешь во что захотят тебя скастить я вполне реальные случаи из жизни описываю. Пару лет назад под IE аддон с кастомным отладчиком JS/DOM писал. Прям окунулся в конец прошлого века, как морж в прорубь. Сделал логгер для QueryInterface и скрупулёзно копировал в Notepad все приходящие IID'ы А то глубоко оно зашло или нет проверял (гусары молчать!) по мультимедиа таймеру . И если бы не утёкшие сорцы древнего IE, хрен бы дописал. Так это для IE производства самой MS, в которой качество документации и протестированность работы на высшем уровне. А для обычных контор выпускающих обычный софт, и меряющих затраты на разработку человекочасами, COM это просто hell как по затратам времени, так и по и качеству того что получается на выходе.
Здравствуйте, Ночной Зудящий, Вы писали:
НЗ>Здравствуйте, Константин Л., Вы писали:
КЛ>>COM неплох, но не как универсальное средство в 2012 году
НЗ>а что в 2012 модно в качестве универсального средства?
Так, главные вопросы опять проигнорированы. Показательно.
LC>>>.NET навязывает всем свою систему типов. НС>>WinRT тоже. LC>Ну почитайте хотя бы какие-то обзорные статьи
Думать, что если кто то с тобой не согласен, потому что он какие то статьи не почитал — это не от большого ума.
LC>Про то, что WinRT предоставляет language independent types.
Давай конкретно — что позволяет система типов WinRT, чего не позволяет CLR (не путать с CLI)?
LC>>>Соответственно, среда должна позволять ручное управление памятью, там, где это нужно. НС>>И CLR (не путать с C#), внезапно это позволяет. LC>А ты знаешь, как оно внутри это работает? Я вот, знаю
Ты, надеюсь, не думаешь что ты такой один?
НС>>Они не просто жабу выбрали, они сваяли уродский недоделанный Далвик. LC>Они написали отличную реализацию Java
Здравствуйте, FR, Вы писали:
НС>>Внутре CLR можно managed кучу и не использовать. FR>И после этого резко ограничить доступные от CLR возможности.
Например?
FR>Хоть массивами то будет возможно пользоваться?
Да чем угодно. WinRT это ж не рантайм, а API. Ровно так же никто не мешает использовать от CLR только компонентную часть. Можно даже было формально отделить ее, чтобы не тащить за собой ненужные вещи (работы было бы сильно меньше, чем добавление поддержки WinRT в один только CLR). Но нет, надо было вместо унификации сделать херовину, не совместимую ни с CLR, ни с СОМ, да еще и с несовместимыми исполняемыми файлами, а потом плодить для нее кучу переходников и перепиливать пачку компиляторов.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>А дальше — это надо обладать всем массивом информации, которым располагает директорат МС.
Этого недостаточно.
ГВ> Мне это недоступно, звиняй.
О чем тогда ты споришь? О том, что Синовский умеет выпускать очень сложный продукт строго в срок и с приемлемым качеством? Так с этим никто и не спорит.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>>>С моей колокольни — он выигрышном положении перед Windows, потому что не собирается кардинально меняться ради "выигрывания битв" НС>>Да что ты. В линухах изменений не в пример больше, нежели в винде. Погляди, к примеру, на самый популярный линух — убунту. Одно только юнити перекрывает все нововведения семерки в разы.
ГВ>При чём тут Unity?
При том что это прекрасный пример того, как линух "не собирается кардинально меняться ради "выигрывания битв".
ГВ>Однако, никто же не собирается делать managed-ядро для Линукса
А что, кто то собирается делать managed ядро Windows?
ГВ> и объявлять, скажем, пайпы "устаревшими" и "ну их на фиг". Вроде бы — не собирается.
Ну вот, к примеру, DCOP как, устаревшим не считается?
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>>>Внутре CLR можно managed кучу и не использовать. FR>>И после этого резко ограничить доступные от CLR возможности.
НС>Например?
Например без GC мы можем использовать строки, массивы, да и любые объекты?
Подозреваю что нет, остаются только примитивные типы, чем это лучше обычного
нативного ассемблера или низкоуровневой VM типа llvm?
FR>>Хоть массивами то будет возможно пользоваться?
НС>Да чем угодно. WinRT это ж не рантайм, а API. Ровно так же никто не мешает использовать от CLR только компонентную часть. Можно даже было формально отделить ее, чтобы не тащить за собой ненужные вещи
Вот это и нужно было делать сразу 10 лет назад.
Но все равно непонятно как стыковать GC с нативным кодом. Думаю в результате придется и его
отстыковывать и заменять на более автономный вариант, то есть со счетчиком ссылок скорее всего,
в результате получим плюс — минус тот же WinRT.
НС>(работы было бы сильно меньше, чем добавление поддержки WinRT в один только CLR). Но нет, надо было вместо унификации сделать херовину, не совместимую ни с CLR, ни с СОМ, да еще и с несовместимыми исполняемыми файлами, а потом плодить для нее кучу переходников и перепиливать пачку компиляторов.
Тут я не понял WinRT же и с COM и с CLR совместимо.
Здравствуйте, Aлeкceй, Вы писали:
НС>>Прояснится, имхо, где то к весне. Кое что постараюсь узнать на техэде, но вряд ли стоит ожидать какой то конкретики так рано. A>А когда он?
Здравствуйте, FR, Вы писали:
НС>>И много из винды натива успели вытеснить?
FR>Так не осилили
А пытались?
FR>перед выходом висты было море обещаний.
Там не только про managed обещали, только и native фич там тоже из обещанного почти нет.
FR>Но переключив все ресурсы на NET
Это утверждение нуждается в доказательствах.
FR>Притом я считаю что такое развитие натива и для NET было бы очень полезно.
Чем конкретно? Тем что пришлось убухать кучу ресурсов на допиливание почти уже померших компиляторов VB и C# для поддержки WinRT, отняв их у Розлина? Тем, что CLR&Framework team в очередном релизе, вместо кучи важных вещей занималась в основном поддержкой WinRT? Обалденная польза, ничего не скажешь.
Здравствуйте, FR, Вы писали:
FR>Например без GC мы можем использовать строки, массивы, да и любые объекты?
Можем, почему нет? С++/CLI очень похож на C++/CX. Но ты в курсе, что, к примеру, строки WinRT ограничены даже больше дотнетных — мало того что они обязательно immutable, так им еще запрещено принимать значение null?
FR>Подозреваю что нет, остаются только примитивные типы, чем это лучше обычного FR>нативного ассемблера или низкоуровневой VM типа llvm?
А WinRT чем лучше?
FR>Но все равно непонятно как стыковать GC с нативным кодом
Что конкретно тебя смущает? GC кучи отдельно, нативные кучи отдельно. Для взаимодействия их между собой есть соответствующие механизмы.
FR>в результате получим плюс — минус тот же WinRT.
За одним исключением — CLR уже есть много лет, ничего принципиально нового изобретать не нужно.
FR>Тут я не понял WinRT же и с COM и с CLR совместимо.
Через переходники. Таким манером и какая нибудь CORBA тоже с ними совместима.
Здравствуйте, Ночной Смотрящий, Вы писали:
FR>>Так не осилили
НС>А пытались?
Судя по шуму вокруг NET и Longhorn ночей не спали все делали
FR>>перед выходом висты было море обещаний.
НС>Там не только про managed обещали, только и native фич там тоже из обещанного почти нет.
Это да.
FR>>Но переключив все ресурсы на NET
НС>Это утверждение нуждается в доказательствах.
Возможно не все, но большую часть, для С++ в VS2003, VS2005 и VS2008 никаких существенных
изменений не было, и я думаю если бы ms не охладел тогда к C++ то вполне возможно у нас новый
стандарт был бы не C++11 а скажем C++08.
FR>>Притом я считаю что такое развитие натива и для NET было бы очень полезно.
НС>Чем конкретно? Тем что пришлось убухать кучу ресурсов на допиливание почти уже померших компиляторов VB и C# для поддержки WinRT, отняв их у Розлина? Тем, что CLR&Framework team в очередном релизе, вместо кучи важных вещей занималась в основном поддержкой WinRT? Обалденная польза, ничего не скажешь.
Я имел ввиду сразу с начала появления NET (> 10 лет назад) сделать так чтобы NET и натив могли
использовать общую компонентную среду с нативным ядром. Сейчас конечно будут проблемы со стыковкой.
Здравствуйте, Ночной Смотрящий, Вы писали:
FR>>Еще я не говорю что NET ненужен
НС>Но подразумеваешь
"Доктор откуда у вас такие картинки"
FR>>нужен но для компонентов натив во многих случаях лучше
НС>Для каких компонентов?
Да хотя бы тот же GUI что ява что нет породили конкретных тормозов.
НС>Ты думаешь, что с введениеми WinRT простота создания компонентов на C++/CX станет такой же, как на шарпе?
Она очень существенно упростится, в сравнении с тем же COM например.
Ну и надо учитывать новый C++11 который делает программирование на C++
намного приятней.
Здравствуйте, FR, Вы писали:
FR>>>нужен но для компонентов натив во многих случаях лучше НС>>Для каких компонентов? FR>Да хотя бы тот же GUI что ява что нет породили конкретных тормозов.
Так и ActiveX, если рукозадость повышенная, тоже тормозов порождает. Никакой особенной специфики у дотнета тут нет. Что же касается джавы, там свои тараканы, с особенностями собственно JVM связанные лишь отчасти.
FR>Ну и надо учитывать новый C++11 который делает программирование на C++ FR>намного приятней.
Здравствуйте, Ночной Смотрящий, Вы писали:
FR>>Например без GC мы можем использовать строки, массивы, да и любые объекты?
НС>Можем, почему нет? С++/CLI очень похож на C++/CX.
Не вижу такого в С++/CLI там просто обертка + синтаксический сахар над типами CLR.
GC там никак ни отключается.
C++/CX да похож, но по сути это такая же сахарная обертка над COM которая давно
существует для других нативных языков, например для Delphi или VB (не NET).
НС>Но ты в курсе, что, к примеру, строки WinRT ограничены даже больше дотнетных — мало того что они обязательно immutable, так им еще запрещено принимать значение null?
Ну так это же хорошо, я как околофункциональщик null недолюбливаю
FR>>Подозреваю что нет, остаются только примитивные типы, чем это лучше обычного FR>>нативного ассемблера или низкоуровневой VM типа llvm?
НС>А WinRT чем лучше?
Тем что исключает оверхед от виртуальных машин и легче стыкуется с произвольными
нативными языками.
FR>>Но все равно непонятно как стыковать GC с нативным кодом
НС>Что конкретно тебя смущает? GC кучи отдельно, нативные кучи отдельно. Для взаимодействия их между собой есть соответствующие механизмы.
Вот эти механизмы и смущают. Счетчик ссылок позволяет обходится без них.
FR>>в результате получим плюс — минус тот же WinRT.
НС>За одним исключением — CLR уже есть много лет, ничего принципиально нового изобретать не нужно.
Ну так я и говорю сразу надо было делать.
FR>>Тут я не понял WinRT же и с COM и с CLR совместимо.
НС>Через переходники. Таким манером и какая нибудь CORBA тоже с ними совместима.
Так тут не понял, почему тогда пишут что WinRT вызов из NET будет гораздо
дешевле чем более старые методы вызова натива?
Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>Здравствуйте, michae1, Вы писали:
M>>Имхо, диагноз такой: ты не разобрался в теме, зато немного понаступав на грабли кричишь громче всех, что COM — гавно. У этой технологии есть болезни, как и у любой другой, но с её помощью уже сделали и продолжают делать сложные и качесвтенные продукты.
ЕА>а рабы уже построили в Египте классные пирамиды, без всяких экскаваторов. Откажемся от экскаваторов и вернем рабство? Ведь проверенная временем технология
Кто знает с помощью чего они их построили А вот то что они развили математику — факт, откажемся от математики и будем делать наглазок?
З.Ы. устаревшее — не значит плохое и невостребованое.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Здравствуйте, Andy77, Вы писали:
A>>Может, и силверлайт восстанет из могилы?
НС>Ну, сервелат только несколько реинкарнировал, принципиальных отличий метрошного UI и того что в винфоне от сервелата нет.
Принципиальное отличие одно, работает только в 8-ке и только на метро стороне, и только через маркет.
Основной кайф от Сильверлайта в том что он кроссплатформенный и легко деплоится, а это ветка развития мало того, что остановилась, так еще и всяко рекомендуется ее не использовать.
Из непринципиальных отличий — многие АПИ, которых долго ждали, откатились опять на уровень 3-го сильверлайта
Мне тоже очень хочется реинкарнации сильверлайта, но вериться слабо
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Так и ActiveX, если рукозадость повышенная, тоже тормозов порождает. Никакой особенной специфики у дотнета тут нет. Что же касается джавы, там свои тараканы, с особенностями собственно JVM связанные лишь отчасти.
Конечно тормоза на чем угодно делаются, но почему-то на практике нативные GUI шустрые.
FR>>Ну и надо учитывать новый C++11 который делает программирование на C++ FR>>намного приятней.
НС>Что, и С++11 без Синовского не появился бы?
Нет просто удачно совпало
Но без него вполне возможно что хоть какая-то поддержка C++11 появилась бы в
каком нибудь VS 2015.
Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>Из непринципиальных отличий — многие АПИ, которых долго ждали, откатились опять на уровень 3-го сильверлайта
А так оно и будет если вместо нормального WPF изобретать очередной имитатор.
Здравствуйте, FR, Вы писали:
FR>Не вижу такого в С++/CLI там просто обертка + синтаксический сахар над типами CLR. FR>GC там никак ни отключается.
Т.е. между new и gcnew никакой разницы, по твоему, нет?
FR>C++/CX да похож, но по сути это такая же сахарная обертка над COM которая давно FR>существует для других нативных языков, например для Delphi или VB (не NET).
Так C++/CX это и есть тот самый инноваций, который Синовский протолкнул.
НС>>Что конкретно тебя смущает? GC кучи отдельно, нативные кучи отдельно. Для взаимодействия их между собой есть соответствующие механизмы. FR>Вот эти механизмы и смущают. Счетчик ссылок позволяет обходится без них.
Ничего не понял. Тебе никто не мешает внутри CLR использовать твой любимый счетчик ссылок для объектов из нативной кучи.
НС>>Через переходники. Таким манером и какая нибудь CORBA тоже с ними совместима. FR>Так тут не понял, почему тогда пишут что WinRT вызов из NET будет гораздо FR>дешевле чем более старые методы вызова натива?
уважаемый, если все перечисленные вами пункты вам нравятся, и вы с удовольствием
используете COM, то это не значит что у всех есть куча времени бегать по граблям.
COM — неплохая технология для 90х, но для 201х — уже плохая.
кроме того, советую все-таки попробовать пописать многопоточные приложения с обилием COM-а.
Вот вы представляете себе чем threading model 'Free Threaded' отличается от 'Both', и в каких случаях
нужен FreeThreadedMarshaller?
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Здравствуйте, Ночной Смотрящий, Вы писали:
НС>>Но дело, как я уже говорил, вовсе не в WinRT. WinRT сам по себе, в принципе, не так уж и ужасен, хоть и не шедевр. Проблема в другом — Синовский вел себя как носорог — кидался на все, что не соответсвовало его представлениям о прекрасном. Истории с Реем Оззии или совсем свежая с Гатри — ты как, считаешь что это нормально, такое поведение со стороны второго человека в компании? По мне так нет.
ГВ>Что-то у меня складывается обратное впечатление, что он чуть ли не единственный адекватный руководитель в MS:
Да, ладно — может он там классный технарь, но руководитель компании из него хуже некуда. Он за последние пару лет сделал все чтобы уничтожить сообщество лояльных разработчиков МС. История с Сильверлайтом не единственная, но самая показательная — никогда раньше не видел, чтобы компания сама топила новую, феноменально успешную технологию, несмотря на протесты клиентов в угоду личным предпочтениям. Причем делалось это очень демонстративно — типа "а хрен вы куда денетесь". Причем жесткая компания по утоплению сильверлайта началась практически сразу после интервью с Гатри, где он буквально клялся, что все будет развиваться.
По мне так то, что избавились от Синофского, лучшая новость о Микрософте для разработчиков
Здравствуйте, Ночной Смотрящий, Вы писали:
FR>>Не вижу такого в С++/CLI там просто обертка + синтаксический сахар над типами CLR. FR>>GC там никак ни отключается.
НС>Т.е. между new и gcnew никакой разницы, по твоему, нет?
И как без gcnew мне сделать экземпляр System.String например?
FR>>C++/CX да похож, но по сути это такая же сахарная обертка над COM которая давно FR>>существует для других нативных языков, например для Delphi или VB (не NET).
НС>Так C++/CX это и есть тот самый инноваций, который Синовский протолкнул.
C++/CX лишь часть притом косметическая, при желании можно и без него под
WinRT писать, хотя с ним конечно намного приятней должно быть, но тут я пока
теоретик больше.
FR>>Вот эти механизмы и смущают. Счетчик ссылок позволяет обходится без них.
НС>Ничего не понял. Тебе никто не мешает внутри CLR использовать твой любимый счетчик ссылок для объектов из нативной кучи.
Мы с разных сторон смотрим. Меня больше интересует удобство использования компонентов
из нативного кода и написание компонентов на нативном коде.
Счетчик ссылок позволяет это делать прозрачно, с GC придется учитывать
кучу особенностей, хотя возможно я недооцениваю сахар из C++/CLI но из
опыта написания расширений к OCaml (язык с GC) на C/C++ есть куча нюансов.
FR>>Так тут не понял, почему тогда пишут что WinRT вызов из NET будет гораздо FR>>дешевле чем более старые методы вызова натива?
НС>Все зависит от того, что это за вызов.
Здравствуйте, Константин Л., Вы писали:
КЛ>Здравствуйте, michae1, Вы писали:
КЛ>[]
КЛ>уважаемый, если все перечисленные вами пункты вам нравятся, и вы с удовольствием КЛ>используете COM, то это не значит что у всех есть куча времени бегать по граблям. КЛ>COM — неплохая технология для 90х, но для 201х — уже плохая.
Вопрос не в том нравиться мне или нет (мне нравиться и у меня нет с COM-м проблем), а в том что аргументы hi_octane необоснованы и смешны. Я попытался обяснить почему.
КЛ>кроме того, советую все-таки попробовать пописать многопоточные приложения с обилием COM-а. КЛ>Вот вы представляете себе чем threading model 'Free Threaded' отличается от 'Both', и в каких случаях КЛ>нужен FreeThreadedMarshaller?
Опыт работы с COM у меня неплохой, но с такими задачами я не сталкивался, хотя спасибо за вопрос — почитал.
Я только не понял, что ж это доказывает и как относиться к теме, что разработка многопоточных приложений сложное занятие? Да, это и так понятно. Или что COM предлагает сложное решение? ну дык и задача непростая. С другой стороны какое альтернативное решение такой задачи (без COM)?
Здравствуйте, Константин Л., Вы писали:
M>>Вопрос не в том нравиться мне или нет (мне нравиться и у меня нет с COM-м проблем), а в том что аргументы hi_octane необоснованы и смешны. Я попытался обяснить почему.
КЛ>пока смешно то, что ты пишешь ты.
Ну расскажи что тебя так рассмешило? То что c COM-м можно вполне комфортно себя чувствовать, задумайся аж в 2012 году? Блин, мне еще и с++ нравиться, я забыл что у нас 2012 год и это немодно
КЛ>не вижу смысла отвечать
Здравствуйте, hi_octane, Вы писали:
_>Версионность тут не причём. Люди пишут программы с ошибками. Особенно много ошибок в то время когда программа только разрабатывается. Т.е. человек не знает ещё что он собирается вызывать, ещё не знает что будут вызывать у него, не знает что можно передавать а что нет. И COM только усложняет этот этап. Если бы сразу ввели в стандарт требования на документирование самим IUnknown поддерживаемых им интерфейсов и методов, всё было бы в тысячи раз проще. И Ole Automation изобретать не пришлось бы.
ИМХО, подход неверный, нужно работать с целевыми интерфейсами — наследниками — IUnknown, тогда и проблем таких не будет. Ну а с точки зрения проектирования, это очень хорошо, что тебе при создании компонента надо будет сесть и подумать какие интерфейсы тебе нужны, как будет взаимодействие происходить и т.д.
_>А то что чёрным ящиком должна быть только реализация. А в случае с COM чёрным ящиком является вообще всё. Что этот объект может, к чему ещё его можно скастить, какие методы у него будут если он успешно скастится к чему-то ещё.
Набор интерфейсов определяет доступную ф-сть, у тебя столько же информации как и при испоользовании скажем API какой-нибудь библиотеки.
_>Ну то есть идея такая плохая что больше никто у себя подобное реализовать не захотел, а технология построенная на этой идее хорошая? А может закономерно — хреновую идею уже никакая реализация не спасёт?
есть нечто похожее — CORBA, не забывай, что реализация требует больших вложений (тем более реализация такой слоджной системы).
M>>Чего пенять на всю технологию, если обжегся на IE? С другой стороны, посмотри на описание объектной модели офиса — все четко описано, пусть и не очень подробно. _>Офис? А видел как оттестированный в ActiveX Control Test Container контрол, ведёт себя совсем по другому в Word, по третьему в Excel, и совсем не позволяет себя вставить в PowerPoint? Ведь тот же COM, что ж опять всё не так-то. А им оказывается какой-то очередной I***Site* понадобился, и на его нехватку они реагируют кто как.
И где же его тестировали? Согласен, что офис криво поддерживает ActiveX, но сам-то офис — сплошной COM и работает исправно.
M>>А как иначе? Откуда прога знает что ты хочешь? Или ты хочешь работать в стиле "дай мне то не знаю что"? так только в сказках _>Да в этом стиле куча народу работает. Надо получить размер окна. Есть объект скажем Window, нажимают ., смотрят — какие методы есть. Вбивают наугад Size, есть — хорошо, попались сразу два ClientSize, OuterSize — выбираем который подходит, нет ни одного — поищем тем же способом что-нибудь с Rect, нашлось — отлично, нет — поищем какой-нить Manager, может он знает, и т.д. А в стиле COM — есть объект IWindow, методов всего пара штук, все остальные описаны у IWindow3 скажем, про IWindow3 ты узнаешь только в документации, если есть. А если метод Size описан у какого-нить ISizeableHostedControl, то простым поиском по Window ты его вообще не найдёшь. Отличная технология для программистов.
Ага, только аналогия кривая. Если твой объект Window — базовый класс, то хрен ты получишь свойства наследника. А вот если IWindow2 наследуется от IWindow, то нет проблем с получегтем свойств базового интерфейса.
M>>и что? как недоработка того или иного COM-объекта кидает тень на технологию? Таже ситуация может быть с любой библиотекой. _>Это недоработка самой технологии. Типизация объектов подразумевается, но получить информацию о типах нельзя. Возможность ошибок подразумевается, но оставляется возможность для возврата пустого E_FAIL. Версионность подразумевается, но работа с нею отдана на откуп тем же несовершенным людям.
Голову никто не отменял и система не может знать чего ты хочешь.
_>Объект, создаёт вложенные объекты, много. Дальнейший алгоритм работает только с вложенными, посему ссылка на корень успешно грохается смарт-пойнтером при выходе, вложенные тут же умирают, потому что по логике реализации библиотеки они не имеют смысла без корня. А корень умирает — потому что COM требует удаления объекта. Все делают свою работу честно, и заметь, даже циклических ссылок нет. А ошибка есть. Посколько крайнего не найти, всё валим на COM
Разговор об абстрактном коне в вакууме.
Попробую выяснить. У тебя есть com-объект А, который создает множество других com-объектов N1..NN? Где эти com-объекты NN храняться? внутри объекта A?
Здравствуйте, Константин Л., Вы писали:
КЛ>Здравствуйте, michae1, Вы писали:
КЛ>то, что ты пару раз за карьеру подергал STA объекты, и уже мнишь себя экспертом.
не буду тебя переубеждать, я лишь высказал свое мнение исходя из своего опыта.
M>>было бы что сказать
КЛ>я уже все сказал. вот когда надо будет написать многопоточный COM-exe сервер с UI из IE/Shell, тогда вспомнишь мои слова.
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>> Мне это недоступно, звиняй. НС>О чем тогда ты споришь? О том, что Синовский умеет выпускать очень сложный продукт строго в срок и с приемлемым качеством? Так с этим никто и не спорит.
Если ты успел заметить, то я не спорю, а только пытаюсь несколько уточнить своё представление о том, что и как происходит в MS.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>При чём тут Unity? НС>При том что это прекрасный пример того, как линух "не собирается кардинально меняться ради "выигрывания битв".
Хорошо, замнём для ясности, а то сейчас набегут.
ГВ>>Однако, никто же не собирается делать managed-ядро для Линукса НС>А что, кто то собирается делать managed ядро Windows?
Ну, сейчас, как я понимаю, эту безумную затею уже забросили.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
M>есть нечто похожее — CORBA, не забывай, что реализация требует больших вложений (тем более реализация такой слоджной системы).
Чисто по памяти, когда по COM'у первые книжки выходили, CORBA уже вовсю была. Но к счастью стала матёрой legacy, и под видом новой технологии, например Win RT, нам её не выкатывают
M>>>Чего пенять на всю технологию, если обжегся на IE? С другой стороны, посмотри на описание объектной модели офиса — все четко описано, пусть и не очень подробно. _>>Офис? А видел как оттестированный в ActiveX Control Test Container контрол, ведёт себя совсем по другому в Word, по третьему в Excel, и совсем не позволяет себя вставить в PowerPoint? Ведь тот же COM, что ж опять всё не так-то. А им оказывается какой-то очередной I***Site* понадобился, и на его нехватку они реагируют кто как.
M>И где же его тестировали? Согласен, что офис криво поддерживает ActiveX, но сам-то офис — сплошной COM и работает исправно.
Где тестировали свои контейнеры и контролы MS я не знаю. А сам ActiveX Control Test Container был долгие годы референсной реализацей контейнера и открыт в сорцах. Именно его драли вчистую когда хотели сделать у себя внедрение на манер офисного. И предварительное тестирование тоже на нём делали из-за удобства. Ну и вообще полагались на интуитивное — что технология универсальная, и если заведётся в одном контейнере, то и в остальных тоже. Поэтому облом при внедрении в стандартный офис был особенно неожиданным первые разы
А так вообще на COM работает и Офис, и студия до последнего времени, и IE. Но это больше потому что сил в работоспособность вложено было немеряно.
M>Ага, только аналогия кривая. Если твой объект Window — базовый класс, то хрен ты получишь свойства наследника. А вот если IWindow2 наследуется от IWindow, то нет проблем с получегтем свойств базового интерфейса.
Одним махом, не глядя в сорцы, обычно можно получить всех наследников реализованных той же библиотекой, ну или просто зайти в отладчик и уточнить реальный тип имеющегося экземпляра и все интерфейсы которые он поддерживает.
M>Разговор об абстрактном коне в вакууме. M>Попробую выяснить. У тебя есть com-объект А, который создает множество других com-объектов N1..NN? Где эти com-объекты NN храняться? внутри объекта A?
Именно. Один объект создаёт пачку других. По принципам COM где они хранятся меня не волнует, я должен лишь корректно вызывать AddRef/Release. По внутренней логики самой библиотеки, удаление обьекта A делает невалидными все N, поэтому он их резко чистит, или там приводит в нерабочее состояние. smart-пойнтер удаляет A, работоспособность N уходит вслед за ним. Более того, в зависимости от смекалки авторов, иногда экземпляры N тупо удаляются, и вызов их методов в зависимости от того как сошлись звёзды на небе, может как ничего не делать, так и Access Violation устроить. Это я проблему в общем описал, такой которой я её несколько раз в самых разных иерархиях видел. Ну а если хочется конкретики, то DirectX 9 когда я с ним последний раз пересекался, при работе с SwapChain точно также себя повёл, но поскольку глаз намётан и рука уже набита, причина и решение были найдены быстро.
Здравствуйте, Константин Л., Вы писали:
КЛ>я уже все сказал. вот когда надо будет написать многопоточный COM-exe сервер с UI из IE/Shell, тогда вспомнишь мои слова.
Если не секрет, какова задача такого сервера? Не лучше ли сделать много однопоточных, ну например как делает сама MS в IE.
Здравствуйте, Евгений Акиньшин, Вы писали:
ГВ>>Что-то у меня складывается обратное впечатление, что он чуть ли не единственный адекватный руководитель в MS: ЕА>Да, ладно — может он там классный технарь, но руководитель компании из него хуже некуда.
По-видимому, у нас с тобой очень отличается трактовка выражения: "адекватный руководитель". С моей точки зрения, "технарство" — необходимый, но не ключевой скилл.
ЕА>Он за последние пару лет сделал все чтобы уничтожить сообщество лояльных разработчиков МС. История с Сильверлайтом не единственная, но самая показательная — никогда раньше не видел, чтобы компания сама топила новую, феноменально успешную технологию, несмотря на протесты клиентов в угоду личным предпочтениям. Причем делалось это очень демонстративно — типа "а хрен вы куда денетесь". Причем жесткая компания по утоплению сильверлайта началась практически сразу после интервью с Гатри, где он буквально клялся, что все будет развиваться.
Я тут подумал, а какой смысл держаться за технологию, которую надо рихтовать под каждый новый браузер? Это ж ахиллесова пята, а не технология, разве нет? В противовес SL тот же JS поддерживают более или менее все, вне зависимости от их лояльности курсу MS.
ЕА>По мне так то, что избавились от Синофского, лучшая новость о Микрософте для разработчиков
Я этого оптимизма не разделяю, но поглядим.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>Другое дело когда ты активно топишь технологию, потому что у тебя война с отделом, который ее разрабатывает, при этом половина представителей Микрософта говорит, что ничего круче Сильверлайта нет и мы будем это развивать, а другая половина, что Сильверлайт это говно, и его использовать не надо. Офигенно эффективный стиль руководства.
Я никогда не следил за новостями SL и потому как-то не в курсе. А что, кто-то из MS говорил, что SL именно не надо использовать?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, IT, Вы писали:
ГВ>>Я тут подумал, а какой смысл держаться за технологию, которую надо рихтовать под каждый новый браузер? Это ж ахиллесова пята, а не технология, разве нет? В противовес SL тот же JS поддерживают более или менее все, вне зависимости от их лояльности курсу MS.
IT>Кто тебе сказал, что JS не надо допиливать под каждый новый браузер? Ты в курсе сколько кода для совместимости написано в том же jQuery. А SL работает везде ожидаемо одинаково.
"Допиливать" и "отсуствует" — не одно и то же, не находишь?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Ну так мы далеко пойдём — давайте тогда говорить, что они не используют ядро винды — потому что сверху есть как минимум два слоя Однако, если взглянуть на это под другим углом, то оказывается, что COM не просто позволяет разрабатывать высокопроизводительные приложения, но и оказывается настолько быстрым, что даже добавление дополнительных прослоек поверх него обеспечивает приемлимое быстродействие
Здравствуйте, Геннадий Васильев, Вы писали:
IT>>Кто тебе сказал, что JS не надо допиливать под каждый новый браузер? Ты в курсе сколько кода для совместимости написано в том же jQuery. А SL работает везде ожидаемо одинаково. ГВ>"Допиливать" и "отсуствует" — не одно и то же, не находишь?
Ты вообще о чём? SL поддерживается всеми браузерами.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, IT, Вы писали:
ГВ>>"Допиливать" и "отсуствует" — не одно и то же, не находишь? IT>Ты вообще о чём? SL поддерживается всеми браузерами.
Точно?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>>>"Допиливать" и "отсуствует" — не одно и то же, не находишь? IT>>Ты вообще о чём? SL поддерживается всеми браузерами. ГВ>Точно?
Всеми известными мне поддерживаются. Тебе видимо известно больше.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Ночной Смотрящий, Вы писали:
LC>>Еще раз повторяю вопрос, какие инновации были задавлены Синофски? НС>Тебя в какой области интересует? Из свежего, к примеру, WPF.
Кстати, вот в это охотно верю. Вспоминается, как Джош Смит написал, что сваливает в iOS, потому что разочаровался в отмене WPF/SL. А я все никак не мог понять причину такого сдвига. Ведь, даже если предположить, что WPF не лучшим образом уживается в API Винды, так ведь его туда никто и не звал. Жил бы себе в рамках .Net, как тонны других технологий, и жил. Теперь же все понятно. Просто прихоть. Это сразу все ставит на свои места.
Здравствуйте, IT, Вы писали:
IT>Всеми известными мне поддерживаются.
O'K
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, FR, Вы писали:
FR>И как без gcnew мне сделать экземпляр System.String например?
Зачем? Делаешь экземпляр char[]. Когда надо, он легко оборачивается в System.String. Так а в WinRT не сильно лучше. Местная строка тоже вполне конкретная фигня, и если что не так — маршаллинг в полный рост.
НС>>Ничего не понял. Тебе никто не мешает внутри CLR использовать твой любимый счетчик ссылок для объектов из нативной кучи. FR>Мы с разных сторон смотрим. Меня больше интересует удобство использования компонентов FR>из нативного кода
А меня больше всего интересуют причины, по которым, вместо докручивания СОМ и минимизации изменений в других местах, типа CLR, выкатывается нечто, не совместимое вообще ни с чем и весь девдив, вместо того чтобы заниматься своим делом, два года перепиливает весь тулчейн под поддержку этой херни. Ну и чего на выходе? Возможность писать под метру, перспективы которой под большим вопросом, на каком то нестандартном С++ чуть удобнее, чем под СОМ? Замах на несколько гигабаксов, удар на копеечку.
FR>Счетчик ссылок позволяет это делать прозрачно, с GC придется учитывать FR>кучу особенностей
При чем тут вообще GC? Еще раз — CLR не требует никакого GC, хоть и предоставляет его. Совместить managed мир с миром нативного COM тоже проблем нет — там целая пачка отлаженных технологий есть для этого. Докрутите СОМ, подрихтуйте СОМовский маршаллинг в CLR, можно C++/CLI еще немножко подлатать и все. Получаем все тоже самое, только без ломающих изменений. Но нет, у старых технологий есть сами-знаете-какой фатальный недостаток.
НС>>Все зависит от того, что это за вызов. FR>То есть польза все-таки есть?
Неа. Все, что делает WinRT, все это можно повторить существующими методами интеропа в CLR. Вплоть до прямого вызова без маршаллинга.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Если ты успел заметить, то я не спорю, а только пытаюсь несколько уточнить своё представление о том, что и как происходит в MS.
Ну тут уже была карикатура МС, где облачка с кучей пистолей, направленных друг на друга. Так вот, пририсуй туда еще калаш — и ты примерно поймешь, какую роль во всем этом играл Синовский.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>>>Однако, никто же не собирается делать managed-ядро для Линукса НС>>А что, кто то собирается делать managed ядро Windows?
ГВ>Ну, сейчас, как я понимаю, эту безумную затею уже забросили.
Я, честно говоря, не очень понимаю о чем ты говоришь? Если про эксперименты вроде Сингуларити, то они никогда на замену ядра винды не претендовали. Если же про redhawk, то его статус афаик существенно и не менялся.
Здравствуйте, MxMsk, Вы писали:
MM>Теперь же все понятно. Просто прихоть.
Нет, это не просто прихоть. WPF/SL/WinPhone это прямой и очевидный конкурент метрошному UI (особенно последний, бо те же яйца, вид в профиль). И конкурент был уничтожен. Стиль руководства у Синовского такой.
Здравствуйте, FR, Вы писали:
FR>>>Но без него вполне возможно что хоть какая-то поддержка C++11 появилась бы в FR>>>каком нибудь VS 2015. НС>>Попробуй доказать. FR>Это не геометрия
Здравствуйте, Aлeкceй, Вы писали:
A>Здравствуйте, AlexRK, Вы писали:
ARK>>Похоже, виндовс 8 не оправдала ожиданий.
A>Скорей WinRT. Баллмер назвал продажи "скромными".
Ну и если так, то зачем ради скромных продаж WinRT, надо было десктопную версию сделать таким говном, которым невозможно пользоваться, если только не на планшете. Вот в чем вопрос.
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Ну, сейчас, как я понимаю, эту безумную затею уже забросили. НС>Я, честно говоря, не очень понимаю о чем ты говоришь? Если про эксперименты вроде Сингуларити, то они никогда на замену ядра винды не претендовали. Если же про redhawk, то его статус афаик существенно и не менялся.
Я утрировал: именно про замену ядра на менеджед-альтернативу даже тут почти ничего не говорили (не считая разговоров про Singularity, которая всегда была исследовательским проектом). Так что, считайте предыдущую реплику хихиканьем по поводу разговоров про Longhorn и Avalon+WinFS.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>"Допиливать" и "отсуствует" — не одно и то же, не находишь? НС>Тут, видишь ли, вопрос в объеме работы. Написать простенький интерпретатор IL + рендерер задача далеко не смертельной сложности, существенно проще написания современного интерпретатора JS. При этом даже интерпретатор IL порвет по перформансу навороченный JS на британский флаг. А простенький JIT позволяет в браузере делать то, что на JS невозможно в практическом плане.
Есть одно "но", которое, на мой взгляд, перекрывает всё остальное. Одно "не такое" назначение в MS — и привет, потому что все реализации следуют в кильватере MS. Нет, энтузиасты, разумеется, пусть пилят аналоги (которые ещё и не пойми, как работают), с них всё равно спрос невелик, а вот если деньги считать... Это как купить бочку пороха, сесть на неё и смотреть на шоу огнеглотателей.
При этом JS такой проблеме не подвержен. Хотя сугубо технически — не спорю, SL выглядит привлекательней.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Я утрировал: именно про замену ядра на менеджед-альтернативу даже тут почти ничего не говорили (не считая разговоров про Singularity, которая всегда была исследовательским проектом). Так что, считайте предыдущую реплику хихиканьем по поводу разговоров про Longhorn и Avalon+WinFS.
Авалон теперь называется WPF, так что с ним до разборок Синовского с Гатри было все нормально. WinFS же это, в основе, native технология (хранилище WinFS это несколько подпиленный MSSQL), хотя и с удобным для дотнетных приложений API.
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Я утрировал: именно про замену ядра на менеджед-альтернативу даже тут почти ничего не говорили (не считая разговоров про Singularity, которая всегда была исследовательским проектом). Так что, считайте предыдущую реплику хихиканьем по поводу разговоров про Longhorn и Avalon+WinFS.
НС>Авалон теперь называется WPF, так что с ним до разборок Синовского с Гатри было все нормально.
Много чего было, я про сейчас.
НС>WinFS же это, в основе, native технология (хранилище WinFS это несколько подпиленный MSSQL), хотя и с удобным для дотнетных приложений API.
И что с того? В рассказах о WinFS дотнет занимал вполне заметное место.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, IT, Вы писали:
ГВ>>Но это — так, бездоказательные домыслы, разумеется. IT>Всегда подозревал, что в споре для тебя рождается не истина, а возможность поспорить
Да где ты здесь спор-то увидел? Так, имхомерство.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>>>Но это — так, бездоказательные домыслы, разумеется. IT>>Всегда подозревал, что в споре для тебя рождается не истина, а возможность поспорить ГВ>Да где ты здесь спор-то увидел? Так, имхомерство.
Так и я о том же. Уже даже не удивительно тебя видеть в таких месах.
Если нам не помогут, то мы тоже никого не пощадим.
FR>>И как без gcnew мне сделать экземпляр System.String например?
НС>Зачем? Делаешь экземпляр char[]. Когда надо, он легко оборачивается в System.String. Так а в WinRT не сильно лучше. Местная строка тоже вполне конкретная фигня, и если что не так — маршаллинг в полный рост.
Как обходить неинтересно. Ладно замнем. Все так как я и говорил без GC CLR бесполезен.
FR>>Мы с разных сторон смотрим. Меня больше интересует удобство использования компонентов FR>>из нативного кода
НС>А меня больше всего интересуют причины, по которым, вместо докручивания СОМ и минимизации изменений в других местах, типа CLR, выкатывается нечто, не совместимое вообще ни с чем и весь девдив, вместо того чтобы заниматься своим делом, два года перепиливает весь тулчейн под поддержку этой херни. Ну и чего на выходе? Возможность писать под метру, перспективы которой под большим вопросом, на каком то нестандартном С++ чуть удобнее, чем под СОМ? Замах на несколько гигабаксов, удар на копеечку.
Ну это как раз нормальная политика ms
Тот же Синовский наверно тоже недоумевал когда NET вводили, а тот же COM 2 тормознули.
FR>>Счетчик ссылок позволяет это делать прозрачно, с GC придется учитывать FR>>кучу особенностей
НС>При чем тут вообще GC? Еще раз — CLR не требует никакого GC, хоть и предоставляет его. Совместить managed мир с миром нативного COM тоже проблем нет — там целая пачка отлаженных технологий есть для этого. Докрутите СОМ, подрихтуйте СОМовский маршаллинг в CLR, можно C++/CLI еще немножко подлатать и все. Получаем все тоже самое, только без ломающих изменений. Но нет, у старых технологий есть сами-знаете-какой фатальный недостаток.
Сейчас да, я же говорил про создание с нуля 10 лет назад.
НС>>>Все зависит от того, что это за вызов. FR>>То есть польза все-таки есть?
НС>Неа. Все, что делает WinRT, все это можно повторить существующими методами интеропа в CLR. Вплоть до прямого вызова без маршаллинга.
Понятно что можно, в C++ тоже можно без C++/CX все вызовы делать.
Вопрос в том стали ли быстрее вызовы, рекламируют что стали.
Здравствуйте, Ночной Смотрящий, Вы писали:
FR>>>>Но без него вполне возможно что хоть какая-то поддержка C++11 появилась бы в FR>>>>каком нибудь VS 2015. НС>>>Попробуй доказать. FR>>Это не геометрия
НС>Ага, это религия.
Не путай предположение и веру, и тем более веру и религию
Здравствуйте, Ночной Зудящий, Вы писали:
НЗ>брехня вырванная из контестов и криво переведенная на русский. балмер не враг себе и своим акциям чтобы так говорить
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Просто получается так, что в погоне за представлениями о прекрасном будущем ты (и подобные тебе) как будто не видят вполне реальных проблем, которые окружают основного "продвигателя" этой самой технологии. Синофски виноват, Синофски виноват... Но я вот не знаю, у меня лично складывается всё более отчётливое впечатление, что не разгони Синофски дотнетчиков, так семёрка была бы ещё более мрачным творением, чем Виста, да и вышла бы хрен знает, на сколько позже. А деньги-то для компании кто зарабатывает? Сильверлайт, что ли?
Ага, а после семерки появляется восьмерка и серфэйс.
Здравствуйте, Aлeкceй, Вы писали:
ГВ>>Просто получается так, что в погоне за представлениями о прекрасном будущем ты (и подобные тебе) как будто не видят вполне реальных проблем, которые окружают основного "продвигателя" этой самой технологии. Синофски виноват, Синофски виноват... Но я вот не знаю, у меня лично складывается всё более отчётливое впечатление, что не разгони Синофски дотнетчиков, так семёрка была бы ещё более мрачным творением, чем Виста, да и вышла бы хрен знает, на сколько позже. А деньги-то для компании кто зарабатывает? Сильверлайт, что ли?
A>Ага, а после семерки появляется восьмерка и серфэйс.
Э-э-э... И что?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
I>>Это не инновация, это восстановление баланса, который был слишком перекошен в менеджед.
НС>О да, в винде была такая куча дотнета, аж целая ММС
не хочется лишать тебя удовольствия пофантазировать, но дай ссылку где я утверждал чтото про компоненты винды на дотнете ?
Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>Да, ладно — может он там классный технарь, но руководитель компании из него хуже некуда. Он за последние пару лет сделал все чтобы уничтожить сообщество лояльных разработчиков МС. История с Сильверлайтом не единственная, но самая показательная — никогда раньше не видел, чтобы компания сама топила новую, феноменально успешную технологию, несмотря на протесты клиентов в угоду личным предпочтениям.
Да ладно, где у ней феноменальность ? Аппаратное ускорение так и не смогли нормально прикрутить, это оно ?
Перформанс даже там где есть это ускорение есть, и то умудрились уронить ниже плинтса. Цирк — когда не хватает аппаратного ускорения, надо открыть для себя битмап и рисовать прямо в ём, это быстрее аппаратно ускореных фич
Сами же контролы не смогли внятные склепать
За одну ObservableCollection нужо поразбивать головы всем причастным вплоть до третьего колена
Здравствуйте, Ночной Смотрящий, Вы писали:
FR>>Конечно тормоза на чем угодно делаются, но почему-то на практике нативные GUI шустрые.
НС>На моей практике почему то шустрость не зависит от нативности.
Наверное практики маловато. Давай со времени запуска начнём — очень критичная вещь для пользователя. Потом продолжим с GC, глядя на мега-профайлеры для дотнета, както совсем не очевидно, что с перформансом все в шоколаде — разрабы сами свои же профайлеры не могут сделать шустрыми.
Дальше идет рендеринг — как в дотнете, не используя натив, быстро рендерить от 100 тыс и более объектов с минимальным временем отклика ?
Цырк — GDI+ справляетс, а весь аппаратно ускореный WPF сосёт не нагибаясь.
Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>Хотя в WPF другая проблема — плохой перфоманс и большая прожорливость на слабых машинах. В WinRT мне хоть и пришлось костылей нагородить, зато даже на совсем слабом железе вполне шустренько все работает
Здравствуйте, Геннадий Васильев, Вы писали:
ЕА>>Другое дело когда ты активно топишь технологию, потому что у тебя война с отделом, который ее разрабатывает, при этом половина представителей Микрософта говорит, что ничего круче Сильверлайта нет и мы будем это развивать, а другая половина, что Сильверлайт это говно, и его использовать не надо. Офигенно эффективный стиль руководства.
ГВ>Я никогда не следил за новостями SL и потому как-то не в курсе. А что, кто-то из MS говорил, что SL именно не надо использовать?
Два года назад выступили большие дядьки и сказали — SL это хорошо, изучайте HTML5 + JS. А до этого на каждом углу кричали, что чуть не весь UI будет один сплошной SL.
Здравствуйте, IT, Вы писали:
IT>Кто тебе сказал, что JS не надо допиливать под каждый новый браузер? Ты в курсе сколько кода для совместимости написано в том же jQuery. А SL работает везде ожидаемо одинаково.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Тут, видишь ли, вопрос в объеме работы. Написать простенький интерпретатор IL + рендерер задача далеко не смертельной сложности, существенно проще написания современного интерпретатора JS.
На примере рендера вобщем неочевидно, ибо MS не смогла победить этот рендерер ни для SL ни для WPF, тормозное УГ.
>При этом даже интерпретатор IL порвет по перформансу навороченный JS на британский флаг. А простенький JIT позволяет в браузере делать то, что на JS невозможно в практическом плане.
Не порвёт. JS V8 рвёт любой интерпретируемый код в хлам. Собтсвенно потому что JS уже давно джыт.
НС>А пока я вижу только регресс. Задавливаем технологически намного более продвинутый и хорошо опробованный даже на более дохлых армах сервелат, а вместо него выкатываем унылый HTML+JS, который, даже если оставить за кадром стоимость разработки, совершенно непонятно как поведет себя в десктопной и куцей на ресурсы среде.
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, IT, Вы писали:
ГВ>>>>>"Допиливать" и "отсуствует" — не одно и то же, не находишь? IT>>>>Ты вообще о чём? SL поддерживается всеми браузерами. ГВ>>>Точно?
IT>>Всеми известными мне поддерживаются. Тебе видимо известно больше.
I>Что, и в ведроиде и в ios тоже поддерживается ? То-то я смотрю, челы переходят на HTML5+JS пачками.
А будто бы HTML5 на iOs реально поддерживается? То-то челы переходят на нативные приложения пачками.
Здравствуйте, IT, Вы писали:
IT>Вот только не надо этих неубедительных поклёпов. На SL делаю уже далеко не первое web приложение с высокими требованиями к интерактивности и только SL даёт хорошие результаты. JS и ASP.NET UpdatePanel, которые были изучены с пристрастием и опробованы в реальных проектах, сливают как стиральные машинки после стирки. Производительность у SL более чем приемлемая. Есть проблемы, но они касаются не столько SL сколько конкретных компонетов конкретных производителей. Ну и порог вхождения у технологии немного высоковат.
Да можно делать, я ж не спорю, я тоже делал. Порок не "высоковат" а "слишком высокий". Чем ExtJS не угодил ? В ём вроде все предельно просто и рич UI клепается на раз.
Здравствуйте, Евгений Акиньшин, Вы писали:
I>>Что, и в ведроиде и в ios тоже поддерживается ? То-то я смотрю, челы переходят на HTML5+JS пачками.
ЕА>А будто бы HTML5 на iOs реально поддерживается? То-то челы переходят на нативные приложения пачками.
Реально. Нативные приложение проталкивает Эппл, разрабы уже давно свалили бы на Unity или что навроде.
Здравствуйте, Ikemefula, Вы писали:
I>>>Что, и в ведроиде и в ios тоже поддерживается? IT>>А что это такое? I>Это платформы которые нынче востребованы именно в корпоративе, после того как они съели бб.
Не вижу никакой востребованности. Даже не представляю как мацаньем пальцем по экранчику можно работать с высокоинтеррактивным приложением. А наклепать разных отчётов для посмотреть так для этого ни JS, ни HTML5 не нужен. Короче, в очередной раз притянутые за уши аргументы.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Ikemefula, Вы писали:
I>Да можно делать, я ж не спорю, я тоже делал. Порок не "высоковат" а "слишком высокий".
Слишкомвысокость в основном из-за того, что объясняльшики и книжкописатели не то ообъясняют и не о том пишут.
I>Чем ExtJS не угодил ? В ём вроде все предельно просто и рич UI клепается на раз.
Склепать на раз это как раз не проблема. Проблема склепать на много раз и так, чтобы потом можно было и доклепать и при необходимости переклепать. А здесь нетипизированный JS сравнивать с типизированным C# абсолютно неуместно.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, Евгений Акиньшин, Вы писали:
I>>>Что, и в ведроиде и в ios тоже поддерживается ? То-то я смотрю, челы переходят на HTML5+JS пачками.
ЕА>>А будто бы HTML5 на iOs реально поддерживается? То-то челы переходят на нативные приложения пачками.
I>Реально. Нативные приложение проталкивает Эппл, разрабы уже давно свалили бы на Unity или что навроде.
Ню-ню. Я тоже так думал когда оставил дома ноутбук и поперся летом в отпуск с айПадом. Ну то есть когда чисто из любопытства проверяешь работает или не работает, то вроде бы все и работает. А любая попытка поработать с каким-нибудь онлайновым офисом кончается либо тормозами, либо глюками, либо постоянным самопроизвольным закрытием браузера со всеми вкладками.
Здравствуйте, IT, Вы писали:
IT>Не вижу никакой востребованности. Даже не представляю как мацаньем пальцем по экранчику можно работать с высокоинтеррактивным приложением. А наклепать разных отчётов для посмотреть так для этого ни JS, ни HTML5 не нужен. Короче, в очередной раз притянутые за уши аргументы.
Корпоративные челы сами просят "дайте тож самое но только для планшета-телефона". Т.е. всего лишь еще один способ доставки интерактивного функционала юзеру. Сама интерактивность на уронвне, только UI получается другой и это ни разу не отчеты. Естесвенно, это не замена большого монитора с мышом, это инструмент когда большой монитор отсутсвует. При чем работать гораздо удобнее чем скажем с ноута.
Здравствуйте, IT, Вы писали:
I>>Да можно делать, я ж не спорю, я тоже делал. Порок не "высоковат" а "слишком высокий".
IT>Слишкомвысокость в основном из-за того, что объясняльшики и книжкописатели не то ообъясняют и не о том пишут.
Это везде так. Ты вот свои видео про Немерле в таком же духе оформил, мой студент дважды заснул пока было объяснение синтаксиса в первые 18 минут
I>>Чем ExtJS не угодил ? В ём вроде все предельно просто и рич UI клепается на раз.
IT>Склепать на раз это как раз не проблема. Проблема склепать на много раз и так, чтобы потом можно было и доклепать и при необходимости переклепать. А здесь нетипизированный JS сравнивать с типизированным C# абсолютно неуместно.
Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>Ню-ню. Я тоже так думал когда оставил дома ноутбук и поперся летом в отпуск с айПадом. Ну то есть когда чисто из любопытства проверяешь работает или не работает, то вроде бы все и работает. А любая попытка поработать с каким-нибудь онлайновым офисом кончается либо тормозами, либо глюками, либо постоянным самопроизвольным закрытием браузера со всеми вкладками.
Я вот никак не могу поработать с онлайновым офисом даже на обычном компе
Здравствуйте, Ikemefula, Вы писали:
I>>>Да можно делать, я ж не спорю, я тоже делал. Порок не "высоковат" а "слишком высокий".
IT>>Слишкомвысокость в основном из-за того, что объясняльшики и книжкописатели не то ообъясняют и не о том пишут.
I>Это везде так. Ты вот свои видео про Немерле в таком же духе оформил, мой студент дважды заснул пока было объяснение синтаксиса в первые 18 минут
Это я к тому, что ситуация с мануалами ничем не отличается от других технологий, но тем не менее по порогу вхождения SL сильно отличается от других технологий.
Объясняльщики пишут в основном про то, что им интересно. Не "как сделать что бы работали вот такие url в xxx приложении" или "давайте сделаем что бы логин работал так то и так то", а "давайте поиграемся с навигацией xxx" или "в навигации xxx можно вот так вот так и вот так".
Что интересно, первый подход снимает сразу целую пачку в т.ч. сопутствующих проблем, а вот остальные ничего начинающим не дают, то есть, вообще. Да и опытным тоже мало чего дают.
Здравствуйте, Ikemefula, Вы писали:
I>Корпоративные челы сами просят "дайте тож самое но только для планшета-телефона". Т.е. всего лишь еще один способ доставки интерактивного функционала юзеру. Сама интерактивность на уронвне, только UI получается другой и это ни разу не отчеты. Естесвенно, это не замена большого монитора с мышом, это инструмент когда большой монитор отсутсвует. При чем работать гораздо удобнее чем скажем с ноута.
Значит у нас разное представление об интеррактивном функционале. Честно говоря я не очень представляю как сделать нужную мне интеррактивность на HTML при отсутсвии возможности использования горячих клавиш. А уж на телефоне или планшетке — это вообще нонсенс.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Евгений Акиньшин, Вы писали:
I>>Эээ, больше проблем, нежели с SL я никогда не видел. То не инсталится, то инсталится но не та версия, то настройки безопасности не те, то с сетью что то не так, то браузер не тот
ЕА>Наверно это какой-то другой сильверлайт . У меня есть проекты которые на 1000-х компов по всему миру работают на всяких разных браузерах и компах. Была проблема с некоторыми версиями фаерфокса — плагин иногда зависал, все остальное в пределах статистической погрешности. Наоборот, первая технология в моей практике которое тупо везде, где заявлено работает, причем одинаково.
1000 компов это очень мало. У меня был первый опыт SL, втыкал в него всего три месяца и первый пробный "тираж" был на полторы тыщи юзеров. Я наивно думал, что всё будет работать само. Оказалось, все не так, процентов тридцать юзеров вообще не смогли войти в клиент за отсутствием клиента. Пришлось делать кастомную страничку инсталяции сильверлайта, что бы они не пугались. Дальше оказалось, что кое какие браузеры запрещают подобные вещи. Пришлось добавить и этот пункт. Потом пришлось прикрутить табличку на счет совместимости браузеров, т.к. у многх оказалась какая то экзотика.
ЕА>Ну не знаю — там конечно много своих специфических проблем, но чтобы часами разбираться что на что биндить
С extJS хороший студент продирается через грабли в среднем быстрее чем опытные девелоперы через грабли SL. А когда ты уже продрался через все грабли сто лет назад и можешь обходить их с закрытыми глазами, то это не интересно, т.к. никакой информации не сообщает.
ЕА>Ну вроде логично все — событие полного сброса для этого и сделано — сообщает о неких глобальных изменениях, при которых проще в интерфейсе все перестроить, чем искать что изменилось. Что не устраивает-то?
Да все просто. Коллекция была очищена, осталось дело за малым — каждому элементу отправить кое какие нотификации. Вопрос, где их взять, если в коллекции их больше нет, а в эвенте тоже ничего нет ? Опаньки, приходится расширять коллекцию таким же методом, но который шлет внятный эвент.
Потом оказывается, может возникнуть reentrancy, фокус в том, CheckReentrancy и _busy private. Вобщем решение простое — взять файл ObservableCollection , пропатчить и всунуть в проект не меняя расширения, благо подмену неймспейса не отобрали.
Здравствуйте, IT, Вы писали:
IT>А твой студент был готов к этому видео?
Конечно. На второй части ему было интересно и он не спал.
>Вообще-то я его не для студентов делал, а для подготовленных C# девелоперов. Уверен, что в детском саду моё видео тоже имело бы успех только как средство быстрого усыпления. Но все те, кому я рекомендовал посмотреть видео про ПМ и АТД, а это были далеко не студенты, потом признавались, что вот теперь то они знают что это за хрень, ничего сложного, а типа раньше они думали, что это какой-то рокет-саинс.
18 или сколько там было минут про синтаксис это вобщем балласт С мощными языками проблема именно не в синтаксисе, а в том, как с их помощью какие задачи решать. Т.е. в твоем случае я бы показал сначала задачу построения sql из linq на пальцах, т.е. прямо текстом или презентацией, что бы аудитория вникла, а уже потом показывать решение на немерле. Ну и сравнение с С# нужно оставить. Скажем, реализовать некоторое подобие PM на C# для частного случая.
Но вообще задачку ты выбрал громоздкую, можно проще, есть ведь хорошие примеры в книге про F#, почему бы их не позаимствовать ? Я например этот PM объяснял чз задачи вычисления бонуса по некоторой структуре и обработку исключений, когда один компонент кидает непойми что,и это надо выровнять и причесать, что бы общее апи было гладким.
IT>Обучение должно быть направлено на определённую аудиторию. То, что рассказывают про SL направлено непонятно на кого. Свистелки типа 3D производят вау-эффект, но не дают никакого представления о том какие проблемы и как я могу решать с помощью этой технологии.
Я и говорю, это общая проблема всех книг в computer science — пишут о том, что интересно самому, ну и вкратце про возможности. Это тупиковая ветка.
>Нигде ни в одной книжке не встречается упоминание о том, что в WPF и SL впервые в мэйнстриме сделана попытка отделения логики представления от логики поведения в базовых контролах. Не в пользовательских формах, а именно в контролах. А ведь это одна из самых ценных вещей в WPF. Да, о шаблонах рассказывается, о том, что они есть, но читатель на это дело тупо смотрит и не понимает зачем это нужно и нафига такие сложности. Нужно объяснить немного сути и дальше всё пойдёт гораздо легче и чататель будет воспринимать материал гораздо легче. Но похоже, что писатели сами этого ничего не понимают.
не ясно что такое "немного сути", она у каждого своя. А вот если брать за основу задачи и отталкиваться от них, все пучком, и людям интересно, и сопутствующие проблемы разрешаются сами собой.
Здравствуйте, IT, Вы писали:
I>>Хоткеи нужны для клавиатуры, для тачскрина они не нужны. Есть жесты, есть кнопки, которые можно показывать в самый нужный момент без каких либо проблема, есть тулбары. Вобщем все что надо.
IT>И клавиатура, выплывающая на весь экран и всё это заслоняющая.
Во первых, она только для тех полей, где нужно чтото усиленно вбивать руками, их нужно всячески устранять разными способами, во вторых, это не является проблемой
Здравствуйте, Ikemefula, Вы писали:
I>Конечно. На второй части ему было интересно и он не спал.
Так без первой он вторую бы часть не взял. Может она и нудновата, но никто и не обещал, что будет легко Но без неё дальше не понятно о чём речь. Какие-то левые ключевые слова, какие-то палки-стрелки...
I>18 или сколько там было минут про синтаксис это вобщем балласт С мощными языками проблема именно не в синтаксисе, а в том, как с их помощью какие задачи решать. Т.е. в твоем случае я бы показал сначала задачу построения sql из linq на пальцах, т.е. прямо текстом или презентацией, что бы аудитория вникла, а уже потом показывать решение на немерле.
Этот "баласт" в том числе позволяет использовать видео как справочник и не оставляет в дальнейшем никаких белых пятен. Так что без него никак.
I>Но вообще задачку ты выбрал громоздкую, можно проще, есть ведь хорошие примеры в книге про F#, почему бы их не позаимствовать ?
Потому что они не из реальной жизни и показывают, что такое есть, но не показывают почему это лучше.
I>Я например этот PM объяснял чз задачи вычисления бонуса по некоторой структуре и обработку исключений, когда один компонент кидает непойми что,и это надо выровнять и причесать, что бы общее апи было гладким.
И все знают что такое вычисление бонуса на некоторой структуре?
I>не ясно что такое "немного сути", она у каждого своя.
Суть как раз одна. К ней по разному приходят и по разному её воспринимают.
I>А вот если брать за основу задачи и отталкиваться от них, все пучком, и людям интересно, и сопутствующие проблемы разрешаются сами собой.
Это при условии, что людям интересны саи задачи. Как раз выбор примера, на котором объясняется проблема является самой сложной частью любого объяснения. Найти пример, который будет интересен и понятен всем, практически невозможно.
Но в случае с SL дело даже не в этом. Никто даже не пытается объяснить, что же реально дают шаблоны и почему XAML. А без понимания этого складывается впечатление, что это всё нафиг не нужно, слишком переусложнено и запутано.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, FR, Вы писали:
FR>Как обходить неинтересно
Верно. Куда интереснее то, что эту проблему WinRT никаким таким волшебным образом не решает.
FR>Ну это как раз нормальная политика ms
Нет.
FR>Сейчас да, я же говорил про создание с нуля 10 лет назад.
А я говорю про финты Синовского из недавнего прошлого. 10 лет назад дотнет сам только вышел, и никакого винфона не было даже в планах. И тогда появление WinRT было бы вполне оправданно.
FR>Вопрос в том стали ли быстрее вызовы, рекламируют что стали.
Еще раз — смотря с чем сравнивать. К примеру, сделать в нативном коде вызовы быстрее СОМ ну очень вряд ли возможно. А вызовы из CLR практически полностью определяются маршаллингом, а не особенностями нативной компонентной модели, так что, если уж нашли резервы, можно было бы просто маршаллинг и подкрутить, не ломая остальное.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Ну вот и займись материализацией своих представлений о прекрасном.
У меня нет таких денег. И еще мне надо кушать.
ГВ>Просто получается так, что в погоне за представлениями о прекрасном будущем ты (и подобные тебе) как будто не видят вполне реальных проблем, которые окружают основного "продвигателя" этой самой технологии.
Ты вообще о ком?
ГВ> Синофски виноват, Синофски виноват... Но я вот не знаю, у меня лично складывается всё более отчётливое впечатление, что не разгони Синофски дотнетчиков, так семёрка была бы ещё более мрачным творением, чем Виста, да и вышла бы хрен знает, на сколько позже
Видишь ли Гена, у тебя информации существенно меньше, чем даже у меня. Я уж не говорю о тех людях, которые с сабжем сталкивались непосредственно. И вот они почему то тоже высказывают похожие на мое мнения. Уже даже до лысого дошло, что Синовский приносит больше вреда, чем пользы. Но нет, некто Геннадий Васильев продолжает считать сабжа непризнанным гением разработки.
ГВ>. А деньги-то для компании кто зарабатывает? Сильверлайт, что ли?
Здравствуйте, Ikemefula, Вы писали:
I>На примере рендера вобщем неочевидно, ибо MS не смогла победить этот рендерер ни для SL ни для WPF, тормозное УГ.
А пыталась? Потому что те люди, которые этот рендерер делали, они, мягко говоря, совсем не звезды. И что мешало нанять кого нибудь вроде McSeem2, чтобы он привел composition engine в чувство — большой вопрос, на который нормального ответа у меня лично нет.
I>Не порвёт.
Порвет. Если, конечно, это будет нормальный строготипизированный IL, а не бинарная разновидность JS.
I>Собтсвенно потому что JS уже давно джыт.
Здравствуйте, Геннадий Васильев, Вы писали:
НС>>Авалон теперь называется WPF, так что с ним до разборок Синовского с Гатри было все нормально. ГВ>Много чего было, я про сейчас.
А сейчас Синовский его и хоронил.
НС>>WinFS же это, в основе, native технология (хранилище WinFS это несколько подпиленный MSSQL), хотя и с удобным для дотнетных приложений API. ГВ>И что с того?
А то, что твои традиционные нападки на дотнетчиков пошли мимо цели.
ГВ> В рассказах о WinFS дотнет занимал вполне заметное место.
Да, страшный грех дотнета. Именно рассказы помешали прекрасной нативной WinFS зарелизиться.
Здравствуйте, Ikemefula, Вы писали:
I>Наверное практики маловато.
Перешел на личности — слил.
I>Давай со времени запуска начнём
Давай. Янус запускается на моей машине 2 секунды. Профайлер говорит, что больше 90% из этих двух секунд процессор проводит внутри нативной sqlite.
I>Потом продолжим с GC
Что с ним не так?
I>, глядя на мега-профайлеры для дотнета, както совсем не очевидно, что с перформансом все в шоколаде
Мегапрофайлеры в дотнете — это не от проблем с производительностью, а от наличия на порядок большего числа возможностей для профайлеров поиграться с кодом.
I>Дальше идет рендеринг — как в дотнете, не используя натив, быстро рендерить от 100 тыс и более объектов с минимальным временем отклика ?
А зачем в GUI рендерить 100 тысяч объектов? Человек столько все равно за разумное время не оценит.
I>Цырк — GDI+ справляетс, а весь аппаратно ускореный WPF сосёт не нагибаясь.
Здравствуйте, Ikemefula, Вы писали:
I>При чем здесь "из винды" ?
Мы тут в основном за винду беседовали.
I> Прекращай фантазировать.
Прекращай хамить.
I> Практически вся разработка прикладного софта под винду это дотнет. Нативная разработка в основном осталась в старых проектах и некоторых которые сильно критичны к перформансу или требуют низкоуровневый контроль ресурсов.
И какими же иезуитскими методами МС сумел такого добиться? С++ вроде никуда не делся. А может все дело проще — разработка на дотнете сильно дешевле?
Здравствуйте, Aлeкceй, Вы писали:
НЗ>>брехня вырванная из контестов и криво переведенная на русский. балмер не враг себе и своим акциям чтобы так говорить
A>Ну я здесь читал.
ну дак брехня и есть. оттуда ссылка на француский сайт где Балмер дает интервью
Через две недели после запуска Windows 8 и размера, которые обеспечивают продажи?
Мы продали 4 миллиона обновлений Windows 8 в течение трех дней после запуска. Продажи новых компьютеров с Windows 8, у нас нет никаких цифр пока нет.
А для планшета?
Мы начинаем скромно, как свободного места на наших сайтах продажи в Интернете и в некоторых магазинах в Microsoft Соединенных Штатов. Но прием, включая прессу, является феноменальным. Этот продукт является одним из лучших PC и одним из лучших таблетки объединены в одной машине. Вскоре мы представим в других странах, больше магазинов. Именно здесь эта цифра будет говорить смысла.
то есть взяли слово "скромно", отбросили слова "начинаем" и "планшет" зато добавили "windows 8" и вуаля! Балмер сказал!
Здравствуйте, Ночной Зудящий, Вы писали:
НЗ>то есть взяли слово "скромно", отбросили слова "начинаем" и "планшет" зато добавили "windows 8" и вуаля! Балмер сказал!
Здравствуйте, IT, Вы писали:
I>>Во первых, она только для тех полей, где нужно чтото усиленно вбивать руками, их нужно всячески устранять разными способами, во вторых, это не является проблемой
IT>Как это устранять, если это является частью интеррактивности? Это во-первых. Во-вторых, это является проблемой.
Другая модель ввода нужна. Не ясно, откуда берется проблема, если корпоративы сами просят пложения для планшетов
Здравствуйте, IT, Вы писали:
IT>Так без первой он вторую бы часть не взял. Может она и нудновата, но никто и не обещал, что будет легко Но без неё дальше не понятно о чём речь. Какие-то левые ключевые слова, какие-то палки-стрелки...
Это заблуждение. Если чел клюет носом во время просмотра, это вобщем тоже самое что и вообще не смотреть.
I>>18 или сколько там было минут про синтаксис это вобщем балласт С мощными языками проблема именно не в синтаксисе, а в том, как с их помощью какие задачи решать. Т.е. в твоем случае я бы показал сначала задачу построения sql из linq на пальцах, т.е. прямо текстом или презентацией, что бы аудитория вникла, а уже потом показывать решение на немерле.
IT>Этот "баласт" в том числе позволяет использовать видео как справочник и не оставляет в дальнейшем никаких белых пятен. Так что без него никак.
Не нужно. у тебя не студенты которые программировать не умеют, а довольно опытные люди которые знают как минимум пару-тройку языков. К тому же немерле это не экзотика навроде хаскеля или лиспа, код хорошо читается людьми со стороны с сишным бекграундом, если конечно речь не про макросы.
I>>Но вообще задачку ты выбрал громоздкую, можно проще, есть ведь хорошие примеры в книге про F#, почему бы их не позаимствовать ?
IT>Потому что они не из реальной жизни и показывают, что такое есть, но не показывают почему это лучше.
наоборот, очень хорошо показано. Покерные комбинации, производные — отличная вещь.
I>>Я например этот PM объяснял чз задачи вычисления бонуса по некоторой структуре и обработку исключений, когда один компонент кидает непойми что,и это надо выровнять и причесать, что бы общее апи было гладким.
IT>И все знают что такое вычисление бонуса на некоторой структуре?
Задачу я разумеется объясняю Обе задачи несложные, но требуеют уйму возни если решать просто так, в лоб.
I>>А вот если брать за основу задачи и отталкиваться от них, все пучком, и людям интересно, и сопутствующие проблемы разрешаются сами собой.
IT>Это при условии, что людям интересны саи задачи. Как раз выбор примера, на котором объясняется проблема является самой сложной частью любого объяснения. Найти пример, который будет интересен и понятен всем, практически невозможно.
Всем и не надо. нужно на аудиторию ориентироваться.
IT>Но в случае с SL дело даже не в этом. Никто даже не пытается объяснить, что же реально дают шаблоны и почему XAML. А без понимания этого складывается впечатление, что это всё нафиг не нужно, слишком переусложнено и запутано.
На задачах это хорошо получается отвечать на вопросы "для чего".
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>ИМХО, конечно, но Product Vision должны формировать маркетологи, но уж никак не руководитель отдела разработки и уж точно — не голубоглазые мечтатели.
НС>Стив Джобс, для примера — он кто из этих по твоему?
Здравствуйте, IT, Вы писали:
I>>Другая модель ввода нужна. Не ясно, откуда берется проблема, если корпоративы сами просят пложения для планшетов
IT>Дык, для просмотра и репортинга планшет вполне.
Просят всякую интерактивность, а просто просмотр и репорты. Естественно, модель ввода совсем не другая и приложения не предназначены для замены десктопных версий.
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, Евгений Акиньшин, Вы писали:
I>>>Эээ, больше проблем, нежели с SL я никогда не видел. То не инсталится, то инсталится но не та версия, то настройки безопасности не те, то с сетью что то не так, то браузер не тот
ЕА>>Наверно это какой-то другой сильверлайт . У меня есть проекты которые на 1000-х компов по всему миру работают на всяких разных браузерах и компах. Была проблема с некоторыми версиями фаерфокса — плагин иногда зависал, все остальное в пределах статистической погрешности. Наоборот, первая технология в моей практике которое тупо везде, где заявлено работает, причем одинаково.
I>1000 компов это очень мало. У меня был первый опыт SL, втыкал в него всего три месяца и первый пробный "тираж" был на полторы тыщи юзеров. Я наивно думал, что всё будет работать само. Оказалось, все не так, процентов тридцать юзеров вообще не смогли войти в клиент за отсутствием клиента. Пришлось делать кастомную страничку инсталяции сильверлайта, что бы они не пугались. Дальше оказалось, что кое какие браузеры запрещают подобные вещи. Пришлось добавить и этот пункт. Потом пришлось прикрутить табличку на счет совместимости браузеров, т.к. у многх оказалась какая то экзотика.
Ключевое слово — экзотика. Под всеми распространенными браузерами и операционками нормально ставиться и работает.
ЕА>>Ну не знаю — там конечно много своих специфических проблем, но чтобы часами разбираться что на что биндить
I>С extJS хороший студент продирается через грабли в среднем быстрее чем опытные девелоперы через грабли SL. А когда ты уже продрался через все грабли сто лет назад и можешь обходить их с закрытыми глазами, то это не интересно, т.к. никакой информации не сообщает.
Ну в общем согласен, сильверлайт требует несколько большего времени обучения для профессиональной работы. Только не знаю как это к обсуждаемому успеху платформы относится.
ЕА>>Ну вроде логично все — событие полного сброса для этого и сделано — сообщает о неких глобальных изменениях, при которых проще в интерфейсе все перестроить, чем искать что изменилось. Что не устраивает-то?
I>Да все просто. Коллекция была очищена, осталось дело за малым — каждому элементу отправить кое какие нотификации. Вопрос, где их взять, если в коллекции их больше нет, а в эвенте тоже ничего нет ? Опаньки, приходится расширять коллекцию таким же методом, но который шлет внятный эвент. I>Потом оказывается, может возникнуть reentrancy, фокус в том, CheckReentrancy и _busy private. Вобщем решение простое — взять файл ObservableCollection , пропатчить и всунуть в проект не меняя расширения, благо подмену неймспейса не отобрали.
Ну опять все логично — ObservableCollection это реализация коллекции с нотификациями для простейшего и самого распространенного случая, когда требуется только обновление интерфейса и ничего лишнего не делает, чтобы не портить перфоманс. Если нужна коллекция с другим поведением, то либо создается наследник, либо пишется своя коллекция и реализуется INotifyCollectionChanged. И то, и другое делается элементарно.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Здравствуйте, Геннадий Васильев, Вы писали:
НС>>>Авалон теперь называется WPF, так что с ним до разборок Синовского с Гатри было все нормально. ГВ>>Много чего было, я про сейчас.
НС>А сейчас Синовский его и хоронил.
Сейчас вот меня волнуют откопают ли обратно WPF и сильверлайт. И если откопают, то что именно в каком виде.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Верно. Куда интереснее то, что эту проблему WinRT никаким таким волшебным образом не решает.
Для натива решает, основная проблема стыковка с GC, ее в WinRT нет.
FR>>Ну это как раз нормальная политика ms
НС>Нет.
Да, хотя к счастью не базовая.
НС>А я говорю про финты Синовского из недавнего прошлого. 10 лет назад дотнет сам только вышел, и никакого винфона не было даже в планах. И тогда появление WinRT было бы вполне оправданно.
Понятно мы каждый о своем. По мне в той части которая касается натива Синофски сделал все правильно,
но слишком запоздало, с NET да возможно он (что не факт что именно он и только он) перегнул палку.
НС>Еще раз — смотря с чем сравнивать. К примеру, сделать в нативном коде вызовы быстрее СОМ ну очень вряд ли возможно.
COM виртуальный вызов, иногда это существенно. Хотя в общем случае да быстро.
НС>А вызовы из CLR практически полностью определяются маршаллингом, а не особенностями нативной компонентной модели, так что, если уж нашли резервы, можно было бы просто маршаллинг и подкрутить, не ломая остальное.
То есть твои претензии в том что лучше было бы оптимизировать ранее существовавшие способы?
Что нетчикам мешало это сделать раньше?
Здравствуйте, Ночной Смотрящий, Вы писали:
FR>>Не путай предположение и веру, и тем более веру и религию
НС>Не путаю. Когда предположения ни на чем не основаны, кроме веры — это религия.
Путаешь, даже NET'чики или Немерлисты в разгар PR до религии не дотягивали,
хотя главное у них было — предмет поклонения
Предположения обоснованы на том что ms оказывает существенное влияние на комитет по
стандартизации C++ и секретарем этого комитета является человек работающий в ms.
Ну и если ты представишь доказательства что я заблуждаюсь, я вполне готов поменять
свои убеждения
Здравствуйте, Ikemefula, Вы писали:
ГВ>>>ИМХО, конечно, но Product Vision должны формировать маркетологи, но уж никак не руководитель отдела разработки и уж точно — не голубоглазые мечтатели. НС>>Стив Джобс, для примера — он кто из этих по твоему? I>Стратегический маркетинг.
Здравствуйте, Ikemefula, Вы писали:
НС>>Давай. Янус запускается на моей машине 2 секунды. Профайлер говорит, что больше 90% из этих двух секунд процессор проводит внутри нативной sqlite. I>Это 'теплый' старт, когда все уже готово для работы.
Нет, это первый запуск на свежезагруженной машине. Повторный запуск проходит почти мгновенно — содержимое sqlite БД уже в файловом кеше.
I> У меня просто отличное железо и обычное приложение безо всяких sqlite запускается больше 2 секунд.
Значит такое приложение.
I>>>Потом продолжим с GC НС>>Что с ним не так? I>Все так, если не считать налог почти в 1гб в х84
Какой такой налог, да еще в целый гигабайт? У меня вот янус — прям сейчас занимает 81М. С БД на 1.5 гига.
I> на память и дикую фрагментацию
Фрагментацию чего?
НС>>Мегапрофайлеры в дотнете — это не от проблем с производительностью, а от наличия на порядок большего числа возможностей для профайлеров поиграться с кодом. I>То есть коммерческие конторы пишут продукты не на продажу, а чисто поиграться с кодом ?
Коммерческие конторы пишут продукты, которые позволяет платформа. Если платформа позволяет больше, продукты получаются лучше.
I>>>Дальше идет рендеринг — как в дотнете, не используя натив, быстро рендерить от 100 тыс и более объектов с минимальным временем отклика ? НС>>А зачем в GUI рендерить 100 тысяч объектов? Человек столько все равно за разумное время не оценит. I>Это ты так думаешь.
Это объективный факт. 100 тысяч на одном экране — это нечеловеческие объемы. А если у тебя рендерится 100 тысяч, но реально можно оценить штук 500 — то ты знаешь ответ.
I>>>Цырк — GDI+ справляетс, а весь аппаратно ускореный WPF сосёт не нагибаясь. НС>>Так и GDI+ в дотнете доступен вполне. I>А тебя не смущает, что он насквозь нативный ?
Нет. Composition engine в WPF тоже насквозь нативный — тебя это не смущает?
Здравствуйте, Yoriсk, Вы писали:
Y>У sl по большому счёту на клиенте есть аж два состояния. "Работает" и "на работает". Что-бы перевести из второго в первое обычно надо просто проинсталить клиент. Судя по вашему описанию никаких проблем кроме установить у вас не встретилось. О чём и речь.
Ага, щас. С установкой проблем полно. Оно может поставиться, может не поставиться, может поставиться, но не совсем (причем по разному).
Здравствуйте, MxMsk, Вы писали:
MM>Да уж. По ходу плюсисты — самые закомплексованные из всего сообщества программистов.
Я так понимаю, что ты не врубился, о чём идёт речь, поэтому на всякий случай перешёл на личности. Ну, дело твоё, разжёвывать не буду.
MM>ДотНет-а в коде Винды никогда толком и не было, а им все-равно хочется его оттуда изжить. Ветряные мельницы, как смысл жизни.
А платить за это будут? Если так, то круто, хочу быть плюсистом!
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, MxMsk, Вы писали:
MM>Синофски вместо этого разгоняет команду WPF и SL, куче людей затыкает рты, вынуждает MVP, вроде Джоша Смита, свалить в iOS. Уж и не знаю, что здесь радостного для Microsoft. Разве что, "подобные тебе" утешатся эфемерному изгнанию никогда не присутствовавшего в ядре ДотНета.
Здравствуйте, MxMsk, Вы писали:
MM>Никто не предлагает слепо втютрить ДотНет в ядро и будь, что будет. Речь идет о том, чтобы делать ДотНет лучше, развивать. Та же WPF — очень хороша идеей, но слаба реализацией, в частности в нативном (внезапно!) рендеринге. Вот и пускай ДотНет-чики спокойно занимаются улучшением реализации.
Великолепно! Ты как раз сказал то самое, что я обозначил, как негативный момент: "хорошая идея", "слаба реализацией", "спокойно занимаются улучшением реализации". Когда-нибудь хорошие парни из WPF обязательно доберутся до вершины! Они же хорошие парни? Значит, доберутся! А то, что их кормит windiv при этом — так на это наплевать, зато хорошие парни и перспективная (?) идея!
Я утрирую, но суть, надеюсь, ясна.
MM>Пускай windiv помогает им в этом, раз уж ДотНет является одной из ключевых технологий в мире Windows. Синофски вместо этого разгоняет команду WPF и SL, куче людей затыкает рты, вынуждает MVP, вроде Джоша Смита, свалить в iOS. Уж и не знаю, что здесь радостного для Microsoft. Разве что, "подобные тебе" утешатся эфемерному изгнанию никогда не присутствовавшего в ядре ДотНета.
Мне кажется, что для MS безрадостны обе крайности: и передача всей полноты власти в руки Синофски, и полное его изгнание. Поглядим, как оно будет — может быть, всё и не так плохо.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[26]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Великолепно! Ты как раз сказал то самое, что я обозначил, как негативный момент: "хорошая идея", "слаба реализацией", "спокойно занимаются улучшением реализации". Когда-нибудь хорошие парни из WPF обязательно доберутся до вершины! Они же хорошие парни? Значит, доберутся! А то, что их кормит windiv при этом — так на это наплевать, зато хорошие парни и перспективная (?) идея!
ГВ>Я утрирую, но суть, надеюсь, ясна.
Тут ещё надо добавить. Насколько я понял, Синофски — чуть ли не единственный руководитель такого ранга в MS, который исповедовал точность и предсказуемость things, которые должны быть done. То есть я очень легко представляю себе конфликт windiv и, допустим, WPF team на этой почве. Так что, мечтать о том, что надо было бы развивать то, развивать сё — можно, но это будут только мечты. Столкновение и жестокий конфликт были бы неизбежными именно из-за разных подходов к организации разработки. Технические характеристики в таком ракурсе уже второстепенны.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
ЕА>Да, ладно — может он там классный технарь, но руководитель компании из него хуже некуда. Он за последние пару лет сделал все чтобы уничтожить сообщество лояльных разработчиков МС. История с Сильверлайтом не единственная, но самая показательная — никогда раньше не видел, чтобы компания сама топила новую, феноменально успешную технологию, несмотря на протесты клиентов в угоду личным предпочтениям. Причем делалось это очень демонстративно — типа "а хрен вы куда денетесь". Причем жесткая компания по утоплению сильверлайта началась практически сразу после интервью с Гатри, где он буквально клялся, что все будет развиваться.
Мимо меня как С++ девелопера сильверлайт проплыл мимо, так что скажу свои воспоминания об это мегатехнологии фактически со стороны юзера: "мля, что это за попапчики MSDN стал показывать про какой то сильверлайт.. <гуглицца статья в википедии>.. Ааа, типа флэш, тока лучше.. Нуна потом будет глянуть подробнее, но ставить не буду — мне текст надо читать, а не на анимешек анимацию втыкать... <прошло несколько лет> о блин че-ето на рсдн за срач?.. О... и попапчики на MSDN перестали вылазить.. что ни делается — все к лучшему, пойду пивка возьму "
Ну и вспомнилась классика:
Смотровая площадка у университета. Там байкеры собираются, как вы знаете.
Очередная тусовка.
В одной стороне реальные такие дядьки бородатые, солидные. Харлеи стоЯт в рядок блестят хромом, все один к одному. Дядьки чинно спокойно стоят, что-то свое перетирают. Все так спокойно, благородно, солидно...
В другой стороне пацаны на спортах. Вжик-вжик, туда сюда, постоянно шастают, визжат, вилли и т.п., то в магазин отъедут, то приедут, как улей пчелиный короче.
Тут один из них к дядькам подлетает, стоппи, дым из под колес... И спрашивает:
— мужики! А чего вы с нами никогда не знакомитесь ?
Дядька спокойно так, сплевывая в сторону:
— а чего с вами знакомиться-то?.. ВЫ КАЖДЫЙ ГОД НОВЫЕ...
(c) башорк, когда он еще был орк
Как много веселых ребят, и все делают велосипед...
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>>>WinFS же это, в основе, native технология (хранилище WinFS это несколько подпиленный MSSQL), хотя и с удобным для дотнетных приложений API. ГВ>>И что с того? НС>А то, что твои традиционные нападки на дотнетчиков пошли мимо цели.
Хорошо, согласен. WinFS — отдельная история.
ГВ>> В рассказах о WinFS дотнет занимал вполне заметное место. НС>Да, страшный грех дотнета. Именно рассказы помешали прекрасной нативной WinFS зарелизиться.
Ну OK, я не прав. Ты доказал, что я привёл неудачный пример как иллюстрацию того, что Windows API грозился быть managed если не весь, то в некоторых ключевых подсистемах.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>>>Ну вот и займись материализацией своих представлений о прекрасном. НС>>У меня нет таких денег. И еще мне надо кушать.
ГВ>Странно, как о тебе речь зашла, так сходу представления о прекрасном куда-то сдвинулись
И правда странно. Ведь я и Microsoft, это явления примерно одного порядка
ГВ>А как про MS — так она, видите ли, должна, хоть ты тресни, мечту воплотить.
Я этого не писал.
ГВ>>>Просто получается так, что в погоне за представлениями о прекрасном будущем ты (и подобные тебе) как будто не видят вполне реальных проблем, которые окружают основного "продвигателя" этой самой технологии. НС>>Ты вообще о ком?
ГВ>Об MS, естественно.
Что то у тебя странное — обращается ко мне на ты, а потом утверждаешь, что речь про МС. В сочетании с предыдущей твоей фразой у меня закрадываются странные подозрения.
ГВ>Мнений по поводу Синофски высказывается много и разных
Ну давай тогда их обсудим, эти мнения. С указанием конкретных источников, разумеется. А то пока что я от тебя ни на чем не основанные твои итеории слышу.
ГВ>Но повторюсь: результат политики Синофски мне нравится гораздо больше, чем результат политики обобщённо — "дотнетчиков"
Это я уже давно заметил. Нелюбовь ко всему новому, и, как следствие, дотнетофобия. Еще бы тебе действия Синовского не понравились.
ГВ>Дело в том, что windiv предлагает готовые изменения в виде продукта весьма неплохого качества
Это ты про Windows 8?
ГВ>, которым можно пользоваться, а дотнетчики — уж больше десяти лет кормят обещаниями светлого будущего. Понимаешь?
Не понимаю. Дотнетчики занимаются своими делами и выпускают свои продукты, а в Windows они как не присутсвовали, так и не присутствуют. Так что странно от них ожидать результата в этом аспекте.
НС>>Но нет, некто Геннадий Васильев продолжает считать сабжа непризнанным гением разработки. ГВ>Выпускать продукты в срок и хорошего качества — это признак гениальности? Дотнетчики не перестают удивлять.
А что, виндив в МС — единственный, кто выпускает продукты в срок и хорошего качества?
НС>>В том числе.
ГВ>А по-моему, он наоборот оттягивает ресурсы компании в неизвестность. Вот смотри, допустим, я пишу некую веб-аппликуху для широкого пользователя. "Широкий юзер" придёт ко мне, в числе прочих, с устройств на Андроиде и iOS — мне желательно их всех обслужить. На хрена, скажите мне, я буду писать под SL если сам SL на этих устройствах поддерживается не пойми как?
Потому что на SL разработка обойдется существенно дешевле, а качество будет выше. А до что андроид за бортом — так это именно тот способ, которым SL зарабатывает деньги.
ГВ> Да я вообще постараюсь воспользоваться минимальным подмножеством HTML и JS, которые без проблем поддерживаются всеми устройствами
Ага. А твой конкурент сделает Rich UI на SL + специализированных клиентов под мобильные платформы, и заберет у тебя всех пользователей.
Re[27]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Насколько я понял, Синофски — чуть ли не единственный руководитель такого ранга в MS, который исповедовал точность и предсказуемость things, которые должны быть done
Твои теории как обычно не имеют никакого отношения к реальности. Можешь поглядеть на MSSQL — там тоже строгая политика по поводу релизов и добавления новых фич, и она там была задолго до того, как Синовский вылез наверх.
Что де касается девдива, то он, по вполне понятным причинам, должен быть существенно более инновационным, чем те, кто делает консьюмерские продукты. Потому что именно он — основной источник технологий и инноваций.
ГВ>. То есть я очень легко представляю себе конфликт windiv и, допустим, WPF team на этой почве
Виндив и wpf team. Спасибо, насмешил. Это как конфликт Путина и мэра усть-зажопинска. Конфликт был между Синовским и Гатри. Как только Синовский победил в этом противостоянии, все эти WPF и SL умерли автоматично. Мнение WPF team тут вообще никого не волновало.
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>>>Ну вот и займись материализацией своих представлений о прекрасном. НС>>>У меня нет таких денег. И еще мне надо кушать. ГВ>>Странно, как о тебе речь зашла, так сходу представления о прекрасном куда-то сдвинулись НС>И правда странно. Ведь я и Microsoft, это явления примерно одного порядка
См. ниже.
ГВ>>А как про MS — так она, видите ли, должна, хоть ты тресни, мечту воплотить. НС>Я этого не писал.
НС>Ну так я ж говорю — лично я согласен и на коллективное творчество в этом плане. Лишь бы не навязывали очередную унылую херню на тему HTML+JS. Только альтернатив SL и что-там-у-жабы-аналогичное что то не видать.
Твоя реплика? Объединись в коллектив с единомышленниками, и — вперёд, реализуйте то, что вам нравится. А вот MS сочла вполне допустимым для себя приостановить развитие SL и изменить стратегию. Имеет такую возможность.
Я понимаю, ты скажешь, что это всё происки злодея Синофски. Может быть и так, но я что-то подозреваю, что он не один принимает решения такого калибра. Если это не так, то от MS надо в принципе держаться подальше, безотносительно крутизны технологий.
ГВ>>>>Просто получается так, что в погоне за представлениями о прекрасном будущем ты (и подобные тебе) как будто не видят вполне реальных проблем, которые окружают основного "продвигателя" этой самой технологии. НС>>>Ты вообще о ком? ГВ>>Об MS, естественно. НС>Что то у тебя странное — обращается ко мне на ты, а потом утверждаешь, что речь про МС. В сочетании с предыдущей твоей фразой у меня закрадываются странные подозрения.
У меня — тоже. Например, что ты невнимательно прочёл предыдущий абзац.
ГВ>>Мнений по поводу Синофски высказывается много и разных НС>Ну давай тогда их обсудим, эти мнения. С указанием конкретных источников, разумеется. А то пока что я от тебя ни на чем не основанные твои итеории слышу.
Клёво! Ты действительно невнимательно читаешь сообщения, на которые отвечаешь.
ГВ>>Дело в том, что windiv предлагает готовые изменения в виде продукта весьма неплохого качества НС>Это ты про Windows 8?
Office, Win7, Win8, как минимум. AFAIK — предшественник Win7 (Vista) вышла с задержкой от первоначальных планов, ну сама ОС оставила очень сложные впечатления...
ГВ>>, которым можно пользоваться, а дотнетчики — уж больше десяти лет кормят обещаниями светлого будущего. Понимаешь? НС>Не понимаю. Дотнетчики занимаются своими делами и выпускают свои продукты, а в Windows они как не присутсвовали, так и не присутствуют. Так что странно от них ожидать результата в этом аспекте.
Ну, сейчас уже странно, согласен. Да собственно, я так понимаю, никто уже ничего особого и не обещает.
НС>>>Но нет, некто Геннадий Васильев продолжает считать сабжа непризнанным гением разработки. ГВ>>Выпускать продукты в срок и хорошего качества — это признак гениальности? Дотнетчики не перестают удивлять. НС>А что, виндив в МС — единственный, кто выпускает продукты в срок и хорошего качества?
Надеюсь, что — нет.
НС>>>В том числе. ГВ>>А по-моему, он наоборот оттягивает ресурсы компании в неизвестность. Вот смотри, допустим, я пишу некую веб-аппликуху для широкого пользователя. "Широкий юзер" придёт ко мне, в числе прочих, с устройств на Андроиде и iOS — мне желательно их всех обслужить. На хрена, скажите мне, я буду писать под SL если сам SL на этих устройствах поддерживается не пойми как? НС>Потому что на SL разработка обойдется существенно дешевле, а качество будет выше. А до что андроид за бортом — так это именно тот способ, которым SL зарабатывает деньги.
Ага-ага-ага, много он помог тому же WP?
ГВ>> Да я вообще постараюсь воспользоваться минимальным подмножеством HTML и JS, которые без проблем поддерживаются всеми устройствами НС>Ага. А твой конкурент сделает Rich UI на SL + специализированных клиентов под мобильные платформы, и заберет у тебя всех пользователей.
Угу, только пока он будет делать специализированных клиентов подо все мобильные платформы...
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[28]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Насколько я понял, Синофски — чуть ли не единственный руководитель такого ранга в MS, который исповедовал точность и предсказуемость things, которые должны быть done НС>Твои теории как обычно не имеют никакого отношения к реальности. Можешь поглядеть на MSSQL — там тоже строгая политика по поводу релизов и добавления новых фич, и она там была задолго до того, как Синовский вылез наверх.
Что характерно, при этом от действий Синофски ни один SQL-сервер не пострадал. Надеюсь, тут-то моя "теория" верна?
НС>Что де касается девдива, то он, по вполне понятным причинам, должен быть существенно более инновационным, чем те, кто делает консьюмерские продукты. Потому что именно он — основной источник технологий и инноваций.
Охотно верю.
ГВ>>. То есть я очень легко представляю себе конфликт windiv и, допустим, WPF team на этой почве НС>Виндив и wpf team. Спасибо, насмешил. Это как конфликт Путина и мэра усть-зажопинска. Конфликт был между Синовским и Гатри. Как только Синовский победил в этом противостоянии, все эти WPF и SL умерли автоматично. Мнение WPF team тут вообще никого не волновало.
Ну, значит, всё ещё проще и хуже. "Технология будущего" банально зависит от грызни менеджеров. Хорошенькое будущее, ничего не скажешь.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>А где я поддерживал первую крайность? Я что, бегаю с лозунгом: "Вся власть — Синофски!" НС>Ты, видимо, не в курсе, но глава виндива — второй человек в корпорации. Так что да, еще недавно вся власть была у Синовского.
Естественно, я был не в курсе. Забавно.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[28]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>. То есть я очень легко представляю себе конфликт windiv и, допустим, WPF team на этой почве НС>Виндив и wpf team. Спасибо, насмешил. Это как конфликт Путина и мэра усть-зажопинска. Конфликт был между Синовским и Гатри. Как только Синовский победил в этом противостоянии, все эти WPF и SL умерли автоматично. Мнение WPF team тут вообще никого не волновало.
Препарадоксальнейшая штука эти интернет-споры. Вроде бы, ты защищаешь свою точку зрения и в целом, имеешь на это полное право. Но по сути ты роняешь MS ниже плинтуса. Хотя в этом смысле больше, чем сама MS никто не сделает.
Вот смотри, что получается. Разведён большой шум вокруг Silverlight — стратегическая технология, обязательно продолжим развитие, а потом — бац! Стратегия резко меняется, остаётся немой вопрос: если это на самом деле стратегическая технология для компании, то что это за вредитель такой, который спокойной всю эту стратегию похерил (титан подковёрный, понимаешь)? Куда, вообще говоря, остальной топ-менеджмент смотрел? Выходит, что технология эта вовсе и не стратегическая, а сказано сие было для запудривания мозгов пользователей. А если это не стратегическая технология, то как тогда верить другим подобным заявлениям MS?
Короче, тут просто ребус на ребусе и ребусом погоняет.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[29]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Ну, значит, всё ещё проще и хуже. "Технология будущего" банально зависит от грызни менеджеров. Хорошенькое будущее, ничего не скажешь.
Так это, всегда же так было, не? Применимо не только к айти, типа новая метла по новому метет.
Re[29]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Вот смотри, что получается. Разведён большой шум вокруг Silverlight — стратегическая технология, обязательно продолжим развитие, а потом — бац! Стратегия резко меняется, остаётся немой вопрос: если это на самом деле стратегическая технология для компании, то что это за вредитель такой, который спокойной всю эту стратегию похерил (титан подковёрный, понимаешь)? Куда, вообще говоря, остальной топ-менеджмент смотрел? Выходит, что технология эта вовсе и не стратегическая, а сказано сие было для запудривания мозгов пользователей. А если это не стратегическая технология, то как тогда верить другим подобным заявлениям MS?
По-моему, ответ очевиден же.
Фамилию из темы подставьте и найдете ответ.
Здравствуйте, Aлeкceй, Вы писали:
НС>>Потому что на SL разработка обойдется существенно дешевле, а качество будет выше. А до что андроид за бортом — так это именно тот способ, которым SL зарабатывает деньги.
A>Честно говоря, не особо это понял. По-моему, СЛ за бортом, а андроид впереди планеты всей.
ИМХО, НС тут имеет в виду, что пользователи купят устройство с SL чтобы пользоваться SL-приложениями. При таком раскладе — да, андроид остаётся за бортом. Правда, расклад слегка фантастический.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[30]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Aлeкceй, Вы писали:
A>По-моему, ответ очевиден же. A>Фамилию из темы подставьте и найдете ответ.
Есть ещё третий вариант — что в этой технологии действительно обнаружился серьёзный недостаток:
Windows Phone 7/7.5 also decided to go with managed code rather than native code. In theory, this sounds great and there is a lot of promise to it, but it has not worked out well. This is part of the reason Windows Phone has failed to attract many mobile developers who write native code applications on iOS. The windows phone team implemented technologies such as silverlight, .net, xna as their development platform. Sinofsky decided not to go with these and was ultimately correct. The Windows Phone team switched over to the full Windows 8 kernel with Windows Phone 8, and you can now write applications in native code.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, IT, Вы писали:
I>>Да можно делать, я ж не спорю, я тоже делал. Порок не "высоковат" а "слишком высокий". IT>Слишкомвысокость в основном из-за того, что объясняльшики и книжкописатели не то объясняют и не о том пишут.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Главным образом, продукт должны покупать конечные пользователи. Остальное — вторично. В таком разрезе "кто-нибудь что-нибудь писал" — это очень сложный вопрос и наличие или отсутствие WPF — дело десятое. Скажем, какая-нибудь новая игрушка будет обязательно написана для Windows вовсе не из-за того, что там есть распрекрасный WPF или DirectX, а сугубо потому, что Windows — это >90% инсталляций у геймеров.
Снова ты уводишь тему в сторону. Никто не говорит, что нужно сделать WPF главным API Винды. Не нужно было бросать, вот о чем речь. Привлекайте вы своих геймеров (половина из которых, кстати, поставит пиратскую Винду), но и корпоративщиках не забывайте. Они тоже покупают Windows в огромных количествах.
MM>>Поэтому утверждение, что windiv кормит команду WPF слишком упрощенное. ГВ>Ну да, ещё их кормит devdiv и остальные подразделения.
WPF — часть devdiv. Сама devdiv эту самую WPF юзает в своем ведущем продукте. Который тоже, кстати, продается. Это к слову о кормешке.
ГВ>Ну, API Win7 ни на какой произвол не брошено, как было, так и осталось (Surface Pro и Win8 вполне поддерживают приложения Win7). А так — ну, ещё один API в мире Windows — да, он поддерживает и native, и managed. Что плохого-то? Эволюционное развитие и всё такое.
Я говорил с точки зрения .Net разработки. Так вот в ее случае получается, что WPF встала, вместе со всеми своими багами и недоработками, а перейти на WinRT означает выбросить всех заказчиков с Windows 7 и ниже. С GDI+ та же самая фигня вне ДотНета.
D>Меня беспокоит другое -- судя по окончанию -пинск этот город не в России, а в Белоруссии?
Ну в целом крайне искусственно звучит
Лучше без затей говорить Усть-Пердь, например
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Re[31]: Стивен Синофски: MS, давай, до свидания! (доп.)
Windows Phone 7/7.5 also decided to go with managed code rather than native code. In theory, this sounds great and there is a lot of promise to it, but it has not worked out well. This is part of the reason Windows Phone has failed to attract many mobile developers who write native code applications on iOS. The windows phone team implemented technologies such as silverlight, .net, xna as their development platform. Sinofsky decided not to go with these and was ultimately correct. The Windows Phone team switched over to the full Windows 8 kernel with Windows Phone 8, and you can now write applications in native code.
Если бы МС сделали сразу поддержку нативного кода, то всё могло сложиться иначе. На плюсах написаны тонны игр под две платформы. Глупо было думать, что кто-то будет переписывать на СЛ из-за смутного профита.
Здравствуйте, Ночной Смотрящий, Вы писали:
LC>>Какие инновации? Как раз его детище WinRT и является огромным шагом и реальной инновацией. НС>СОМ, скрещеный с дотнетными метаданными вместо type library — да, огромная инновация, просто прорывная.
Атрибуты в COM всегда были, в таком же точно синтаксисе в IDL как потом в C#. Наоборот, дотнет развил эту идею до возможности описания пользовательских атрибутов.
Здравствуйте, Константин Л., Вы писали:
КЛ>кроме того, советую все-таки попробовать пописать многопоточные приложения с обилием COM-а. КЛ>Вот вы представляете себе чем threading model 'Free Threaded' отличается от 'Both', и в каких случаях КЛ>нужен FreeThreadedMarshaller?
И что не так с маршаллером?
А какие проблемы подсунуть собственный маршаллер?
А в дотнетных приложениях еще не писал свои диспетчеры? Если писал — как ощущения? Действительно ли COM-маршаллеры сложнее?
А как ты вообще с многопоточностью работаешь в "обычных" программах и в чем у тебя принципиальное отличие от происходящего в COM? Или не нравится навязанная декомпозиция ролей, что ле? А какую декомпозицию ролей объектов ты бы предложил для межпоточных вызовов?
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Но ты в курсе, что, к примеру, строки WinRT ограничены даже больше дотнетных — мало того что они обязательно immutable, так им еще запрещено принимать значение null?
BSTR имеет семантику value. Абсолютно правильное решение.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Здравствуйте, FR, Вы писали:
FR>>И как без gcnew мне сделать экземпляр System.String например?
НС>Зачем? Делаешь экземпляр char[]. Когда надо, он легко оборачивается в System.String. Так а в WinRT не сильно лучше. Местная строка тоже вполне конкретная фигня, и если что не так — маршаллинг в полный рост.
Какие проблемы дотнету предоставить совместимую с HSTRING разметку строки для целей удешевления маршаллинга?
Здравствуйте, Евгений Акиньшин, Вы писали:
ГВ>>Что-то у меня складывается обратное впечатление, что он чуть ли не единственный адекватный руководитель в MS:
ЕА>Да, ладно — может он там классный технарь, но руководитель компании из него хуже некуда. Он за последние пару лет сделал все чтобы уничтожить сообщество лояльных разработчиков МС. История с Сильверлайтом не единственная, но самая показательная — никогда раньше не видел, чтобы компания сама топила новую, феноменально успешную технологию, несмотря на протесты клиентов в угоду личным предпочтениям.
Ты драмматизируешь. Наработки не пропали. Есть помощники-конвертеры и там совсем немного после них труда надо, чтобы допилить код до работоспособного на WinRT.
Можешь считать WinRT эдаким Silverlight 6.0, в который добавили всё то, чего раньше не хватало в кастрированных версиях сервелатного фреймворка.
Здравствуйте, Erop, Вы писали:
E>Существование города с таким названием крайне малоправдоподобно, так, как для этого должна быть речка "зажопинск", на впадении которой в другую реку и должен бы стоять Усть-Зажопинск...
E>Какая-нибудь Усть-Моча или Усть-Задница намного правдоподобнее звучат...
И чего? Это целый райцентр, к тому же на Кубани, а вовсе и не жопа мира...
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Здравствуйте, MxMsk, Вы писали:
ГВ>>Главным образом, продукт должны покупать конечные пользователи. Остальное — вторично. В таком разрезе "кто-нибудь что-нибудь писал" — это очень сложный вопрос и наличие или отсутствие WPF — дело десятое. Скажем, какая-нибудь новая игрушка будет обязательно написана для Windows вовсе не из-за того, что там есть распрекрасный WPF или DirectX, а сугубо потому, что Windows — это >90% инсталляций у геймеров. MM>Снова ты уводишь тему в сторону. Никто не говорит, что нужно сделать WPF главным API Винды. Не нужно было бросать, вот о чем речь. Привлекайте вы своих геймеров (половина из которых, кстати, поставит пиратскую Винду), но и корпоративщиках не забывайте. Они тоже покупают Windows в огромных количествах.
Корпоративщики всё равно купят Windows, потому что у них подписка на обновления, подготовленные администраторы и заточена вся инфраструктура. ИМХО, эти три довода перевесят все остальные.
MM>WPF — часть devdiv.
Ну OK, спасибо за разъяснение.
ГВ>>Ну, API Win7 ни на какой произвол не брошено, как было, так и осталось (Surface Pro и Win8 вполне поддерживают приложения Win7). А так — ну, ещё один API в мире Windows — да, он поддерживает и native, и managed. Что плохого-то? Эволюционное развитие и всё такое. MM>Я говорил с точки зрения .Net разработки. Так вот в ее случае получается, что WPF встала, вместе со всеми своими багами и недоработками, а перейти на WinRT означает выбросить всех заказчиков с Windows 7 и ниже.
Ничего, подержат две версии некоторое время: Win7 и Win8.
MM>С GDI+ та же самая фигня вне ДотНета.
GDI+, AFAIK, разрешён только для десктопных приложений Win8, следовательно, с ним вообще ничего не случилось, поскольку очень маловероятно, что кто-то выкинет десктоп из Windows.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, vdimas, Вы писали:
V>BSTR имеет семантику value. Абсолютно правильное решение.
Возможно. Но тут один товарищ кричал, что WinRT ограничений никаких не накладывает, а по факту ограничений даже больше, чем у CLR. Там и с value/reference семантикой тоже ограничения недетские, если что. Интерфейсы строго ref, все остальное строго value. И это совершенно нормально для компонентной модели. А вот компонентная модель, гибкость которой сопоставима с нативными механизмами С++ не нужна, потому что пользоваться ей можно будет только из С++.
Re[29]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Что характерно, при этом от действий Синофски ни один SQL-сервер не пострадал.
Уверен? А как же WinFS? Ну и не пересекается mssql так тесно с виндивом, как это происходит в случае девдива.
ГВ>Ну, значит, всё ещё проще и хуже. "Технология будущего" банально зависит от грызни менеджеров.
О, наконец то. Теперь осталось понять, что Синовский в грызне этой — абсолютно недосягаемый чемпион, от его поведения фигеют даже старые бойцы на этом поле. Соответственно, каким бы гениальным тактиком он не был, он ставит под угрозу развитие корпорации в целом. И лысый практически прямым текстом об этом сказал, так что конспироложество разводить не нужно, все на поверхности.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Ничего, подержат две версии некоторое время: Win7 и Win8.
Так на чем гуй тогда делать то? WPF загроблен, инвестировать в него нельзя, а WinRT на семерке недоступен. Вертаться обратно на винформсы 10-летней давности рождения и 15-летней — архитектуры?
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Твоя реплика? Объединись в коллектив с единомышленниками
Зачем?
ГВ>А вот MS сочла вполне допустимым для себя приостановить развитие SL и изменить стратегию. Имеет такую возможность.
И что? Это лишает меня права высказывать свою точку зрения?
ГВ>Если это не так, то от MS надо в принципе держаться подальше, безотносительно крутизны технологий.
Как будто где то по другому. Джобс, к примеру, еще круче в этом плане был.
ГВ>>>Мнений по поводу Синофски высказывается много и разных НС>>Ну давай тогда их обсудим, эти мнения. С указанием конкретных источников, разумеется. А то пока что я от тебя ни на чем не основанные твои итеории слышу. ГВ>Ну вот, к примеру: ГВ>http://www.vanityfair.com/business/2012/08/microsoft-lost-mojo-steve-ballmer
Sinofsky battled with executives, alienated workers in groups outside his Windows empire, and created a toxic environment, according to sources. His departure shouldn't surprise anyone.
Скажи, ты сам свои ссылки читал? Или накидал из гугля даже не глядя?
НС>>А что, виндив в МС — единственный, кто выпускает продукты в срок и хорошего качества? ГВ>Надеюсь, что — нет.
Тогда и Синовский совсем не эксклюзивен.
НС>>Потому что на SL разработка обойдется существенно дешевле, а качество будет выше. А до что андроид за бортом — так это именно тот способ, которым SL зарабатывает деньги. ГВ>Ага-ага-ага, много он помог тому же WP?
Много. С WP7 проблемы в основном маркетинговые, а не технические. Технически эта ОС — конфетка. Мне, по крайней мере, среди современной тройки, она нравится больше всех, как в разрезе пользователя, так и в разрезе девелопера.
Да, есть проблемы с совместимостью — и их в WP8 более менее починили.
НС>>Ага. А твой конкурент сделает Rich UI на SL + специализированных клиентов под мобильные платформы, и заберет у тебя всех пользователей. ГВ>Угу, только пока он будет делать специализированных клиентов подо все мобильные платформы...
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Так на чем гуй тогда делать то? WPF загроблен, инвестировать в него нельзя, а WinRT на семерке недоступен. Вертаться обратно на винформсы 10-летней давности рождения и 15-летней — архитектуры?
На Qt, wxWidgets и им подобных всё отлично пишется, причём не только под виндовый десктоп, а под все возможные.
И кстати я слышал что слухи что в них попытаются интегрировать и Metro вариант. Т.е. возможно получиться писать общий код и под win7 и под win8 metro. Но это пока только слухи.
Здравствуйте, alex_public, Вы писали:
НС>>Так на чем гуй тогда делать то? WPF загроблен, инвестировать в него нельзя, а WinRT на семерке недоступен. Вертаться обратно на винформсы 10-летней давности рождения и 15-летней — архитектуры?
_>На Qt, wxWidgets и им подобных
Ты, видимо, не уловил — речь про дотнет. Из этих подобных там всерьез есть только GTK, который недалеко от винформсов ушел.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Так на чем гуй тогда делать то? WPF загроблен, инвестировать в него нельзя, а WinRT на семерке недоступен. Вертаться обратно на винформсы 10-летней давности рождения и 15-летней — архитектуры?
Windows Forms, кстати, в еще более плачевном положении. До WPF ему расти и расти, а как его скрестить с WinRT вообще неизвестно.
Ты же хотел передать метафору страшного захолустья, а этот город, названный по крепости, Усть-Каменная, имеет зап 300 000 жителей, и является областным центром... Например, на территории этой области находится Семипалатинск...
Ты уверен, что эта модель передаёт то, что ты хотел сказать?
Все эмоциональные формулировки не соотвествуют действительному положению вещей и приведены мной исключительно "ради красного словца". За корректными формулировками и неискажённым изложением идей, следует обращаться к их автором или воспользоваться поиском
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Твоя реплика? Объединись в коллектив с единомышленниками НС>Зачем?
Очевидно, чтобы тебе не подсовывали то, от чего тебе плеваться хочется.
ГВ>>А вот MS сочла вполне допустимым для себя приостановить развитие SL и изменить стратегию. Имеет такую возможность. НС>И что? Это лишает меня права высказывать свою точку зрения?
А кто-то пытается тебя его лишить?
ГВ>>Если это не так, то от MS надо в принципе держаться подальше, безотносительно крутизны технологий. НС>Как будто где то по другому. Джобс, к примеру, еще круче в этом плане был.
Мы сейчас не об Apple.
ГВ>>>>Мнений по поводу Синофски высказывается много и разных НС>>>Ну давай тогда их обсудим, эти мнения. С указанием конкретных источников, разумеется. А то пока что я от тебя ни на чем не основанные твои итеории слышу. ГВ>>Ну вот, к примеру: ГВ>>http://www.vanityfair.com/business/2012/08/microsoft-lost-mojo-steve-ballmer
НС>Слово Sinofsky в тексте не присутствует. И дисреспект тебе за то, что ты заставил меня пролистать здоровенную говностатью без малейшей пользы.
НС>Sinofsky battled with executives, alienated workers in groups outside his Windows empire, and created a toxic environment, according to sources. His departure shouldn't surprise anyone.
Угу, оттуда же:
Sinofsky clearly had his skills. He is an immensely intelligent executive. And he turned around the Windows division, which was foundering when he took it over in 2006, suffering from the disastrous development and release of Windows Vista. He brought a discipline to his two Windows releases, each one something of a moon shot that requires getting thousands of software engineers, testers, and product managers working in unison toward the same goal.
НС>Скажи, ты сам свои ссылки читал? Или накидал из гугля даже не глядя?
на рассуждения одного из сотрудников Синофски.
НС>>>А что, виндив в МС — единственный, кто выпускает продукты в срок и хорошего качества? ГВ>>Надеюсь, что — нет. НС>Тогда и Синовский совсем не эксклюзивен.
Хрен его знает. Где-то я встречал высказывание, что SQL Server Team стала выпускать релизы в срок под влиянием методов Синофски. Сейчас быстро не найду, к сожалению.
НС>>>Потому что на SL разработка обойдется существенно дешевле, а качество будет выше. А до что андроид за бортом — так это именно тот способ, которым SL зарабатывает деньги. ГВ>>Ага-ага-ага, много он помог тому же WP? НС>Много.
А как именно? Я тут совсем не в курсе.
НС>>>Ага. А твой конкурент сделает Rich UI на SL + специализированных клиентов под мобильные платформы, и заберет у тебя всех пользователей. ГВ>>Угу, только пока он будет делать специализированных клиентов подо все мобильные платформы... НС>Ага, аж под все три. А есть еще и монотач.
Класс. То есть отдельные клиенты под три разные платформы — это, по-твоему, тьфу и растереть, а две сильно похожих версии ПО под WPF и WinRT — это беда-беда-беда. Изрыгаешь пламя не по-детски!
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Ты, видимо, не уловил — речь про дотнет.
Нууу это микроподколка дотнетчиков была...
Хотя... Насколько я знаю и к wxWidgets и к Qt есть биндинги для .Net.
НС>Из этих подобных там всерьез есть только GTK, который недалеко от винформсов ушел.
Вообще если брать только GUI, а не "всё всё" (как в wxWidgets и Qt), то на самом деле вариантов намного больше. Причём бывают очень красивые архитектуры, даже получше эти двух монстров. Например U++. А если не требовать обязательно нативных контролов, то добавится ещё и куча симпатичных gui библиотек рисующих через OpenGL и т.п...
Здравствуйте, hi_octane, Вы писали:
M>>А в чем собственно hell?
_>В том что эта технология совершенно не ориентирована на программистов, тех кто должен её использовать.
Да-да, именно поэтому они добавили IInspectable. Тут можно почитать об этом, отличная статья, детали про новый COM на 5-ой странице.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Здравствуйте, vdimas, Вы писали:
V>>Какие проблемы дотнету предоставить совместимую с HSTRING разметку строки для целей удешевления маршаллинга?
НС>Это если только readonly строку так можно. Дотнетная строка иммутабельна, WinRT строка тоже.
Осталось сделать разметку полей String такими, чтобы получить совместимость с хранимым по HSTRING и ву а ля.
Здравствуйте, Ночной Смотрящий, Вы писали:
V>>BSTR имеет семантику value. Абсолютно правильное решение. НС>Возможно. Но тут один товарищ кричал, что WinRT ограничений никаких не накладывает, а по факту ограничений даже больше, чем у CLR.
Дык, в отличие от CLR все эти "ограничения" легкопреодолимы из любого (почти) языка через тонкие фасады/адаптеры над АПИ, которые можно нарисовать в духе целевого языка (и в терминах типов основных библиотек, например IEnumerable<> и т.д.). Только это и важно.
Re[30]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Что характерно, при этом от действий Синофски ни один SQL-сервер не пострадал. НС>Уверен? А как же WinFS? Ну и не пересекается mssql так тесно с виндивом, как это происходит в случае девдива.
При чём тут WinFS? Если я правильно понимаю, то SQl Server должен был быть включён в WinFS, но это никак не означает, что с самим SQL Server что-то случилось из-за отказа от развития WinFS.
ГВ>>Ну, значит, всё ещё проще и хуже. "Технология будущего" банально зависит от грызни менеджеров. НС>О, наконец то. Теперь осталось понять, что Синовский в грызне этой — абсолютно недосягаемый чемпион, от его поведения фигеют даже старые бойцы на этом поле.
Ну да, он, конечно, местами крут:
He did one thing in particular that drove Ozzie nuts.
"Ray produced some products that you could think of as cloud-based fabric products. The plan was that Ray would hand them over to Sinofsky's team and Sinofsky's team would ship them. [But] when those products made it into Steve's team, Steve effectively killed them. 'You know. We're just not going to ship them.' If it was something that Steve didn't think worked he'd just not ship them and they'd die. There'd be no discussion about it. He'd just kind of passively aggressively do it. Take the product and kill it."
(На полях: здорово BI цитаты позволяет оформлять, сразу подставляет ссылку на источник.)
Хотя, стоит обратить внимание на выделенное: The plan was.. и There'd be no discussion about it. Чей план? Оззи? А Синофски в известность об этих планах заранее поставили? Согласовали? Похоже, что — нет. Вот он и не стал даже обсуждать: мало ли, что там Оззи навыдумывал — пусть сам и продаёт, если такой грамотный.
Пойми меня правильно, я в определённом смысле сочувствую Оззи, но и позиция Синофски выглядит очень даже не лишённой здравомыслия.
НС>Соответственно, каким бы гениальным тактиком он не был, он ставит под угрозу развитие корпорации в целом. И лысый практически прямым текстом об этом сказал, так что конспироложество разводить не нужно, все на поверхности.
Прежде, чем меня обвинять в конспироложстве — в зеркало посмотри. Кстати, сам Синофски говорит, что увольнение — это личный выбор, и как следствие, Баллмер тут не так, чтобы и виноват:
Some might notice a bit of chatter speculating about this decision or timing. I can assure you that none could be true as this was a personal and private choice that in no way reflects any speculation or theories one might read—about me, opportunity, the company or its leadership.
В качестве троллинга: Баллмеру и Гейтсу просто не хватает банального советского технического образования, чтобы понять, как нужно согласовывать работу исследовательских и "производственных" подразделений. Вот их там и колбасит из одной крайности в другую, первопроходцы, понимаешь.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[30]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>> Куда, вообще говоря, остальной топ-менеджмент смотрел? НС>Остальной это какой? Лысый тоже не сказать чтобы силен в стратегии, ему время нужно было чтобы понять что происходит, а остальных Синовский сожрал с потрохами. В МС много дальновидных менеджеров есть — Гатри тот же, Раддер. Но они, видать, менее искушенные в подковерной борьбе.
Мне очень сильно думается, что вся "подковёрная борьба" сводилась к демонстрации финансовых и других реальных результатов, помноженная на: "Что хотите, то и делайте".
НС>Впрочем, увольнение Синовского определенные надежды рождает, может ситуация и начнет меняться в лучшую сторону. А может опять очередной Синовский вылезет, этих тоже в любой крупной компании хватает.
Я пессимист в этом отношении и скорее, ожидаю повторения бардака с Vista/Longhorn. Одна надежда на то, что WinRT нативный и ручонки дальновидящих дотнетчиков до него не дотянутся. Ну и потом .Net уже в определённом смысле дискредитирован, так что особо сильных ожиданий с ним связывать не будут, а значит, будет спокойно развиваться.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[31]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>В качестве троллинга: Баллмеру и Гейтсу просто не хватает банального советского технического образования, чтобы понять, как нужно согласовывать работу исследовательских и "производственных" подразделений. Вот их там и колбасит из одной крайности в другую, первопроходцы, понимаешь.
В прочем, троллинга тут у меня гораздо меньше, чем может показаться на первый взгляд.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[28]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Виндив и wpf team. Спасибо, насмешил. Это как конфликт Путина и мэра усть-зажопинска. Конфликт был между Синовским и Гатри. Как только Синовский победил в этом противостоянии, все эти WPF и SL умерли автоматично. Мнение WPF team тут вообще никого не волновало.
Здравствуйте, alex_public, Вы писали:
ГВ>>И всеми силами агитируйте за переход на Win8. А что, всё в порядке: современный мир, изменения, то-сё. Сам же говорил недавно. _>Переход на win8 где?
Везде.
_>Единственное место где я надеюсь что она займёт хорошее место — это планшеты. А на десктопе win8 явно не нужна.
Да ты, прям, ретроград!
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Написал бы быстрый composition engine V>>В любом случае рендерер тут не при чем НС>Твои сказочки мы уже много раз слышали.
Дык, давно пора было самому проверить.
НС>Только у меня есть данные от людей, которые долго и больно меряли перформанс WPF внутри девдива.
Те самые "звезды"? ))
А что именно они меряли, не поделишься?
НС>И проблема именно в рендерере.
Брехня полная. Я код сериализатора композиции на дотнетной стороне гонял — он работает фактически со скоростью света, т.е. с этой стороны никаких тормозов. Т.е. даже если это самая затратная часть юзверского дотнетного кода, по показаниям дотнетного профайлера (который не профайлер нифига, вообще-то, для таких вещей), то этих затрат не видно и под микроскопом на фоне субъективно ощущаемых тормозов. Это цифры далеко не тех порядков. Самая сложная сцена сериализуется от намного меньше миллисекунды до единиц миллисекунд. А у тебя период развертки на мониторе 16ms или больше.
НС>Маршаллер там не разглядеть даже в электронный микроскоп. Не согласен?
Ес-но не согласен.
В общем, руки есть, голова есть, хватит уже гадать который год на одну и ту же тему. Садишься, пишешь на C++ COM-объект с одним ровно методом foo() (2 мин), потом создаешь экземпляр этого COM-объекта в одном потоке в дотнетной программе (через кастомную фабрику, как это всегда в DirectX, где объекты создают друг друга) и передаёшь ссылку на него в другой поток и дергаешь целевой метод оттуда (еще 5 мин). Получишь полный приплызд. Для анализа приплызда пусть COM-объект вываливает в лог все вызовы, AddRef/Release/QI/foo. Увидишь ту самую причину тормозов при вызове методов COM-объектов из донета, о которой всё время речь.
Очевидно же, что именно по этой причине данные отдаются в другой поток. Т.е. итоговые тормоза получаются не от того, что какой-то компонент в отдельности тормозит, а от того, что сценарий работы всей кухни крайне некомфортный:
— два потока разделяют один ресурс. Со всеми прелестями навроде false sharing и т.д....
— сериализация команд каждый раз происходит в новую область памяти (очевидно для того, чтобы избежать взаимных ожиданий двух потоков). Но память эта неуправляемая, и выделяется (ууупс!) разделяемым менеджером памяти. Угу, именно так — топорно и в лоб. Вот так Вот тебе и нагрузка на систему управления памятью. Работающее WPF банально мешает всем остальным нейтивным подсистемам.
В общем, единственно что тут можно сделать — потюнить сценарии использование памяти м/у producer и consumer, а не код сериализатора композиции переделать (бо он прост как пробка, там абсолютно нечего переделывать). Для сравнения, потюнив межпоточную передачу данных по работе (пулы памяти и способы синхронизации), добились в ~6 раз уменьшения общих задержек. И вообще всё стало заметно быстрее работать. Мораль — не надо грузить общие ресурсы в частных междусобойчиках.
НС>Данные профайлера в студию.
Гы-гы, дотнетный профайлер не умеет мерить то, что надо мерить в этом случае. Как ты измеришь тот факт, что пока ты блокируешь разделяемый менеджер памяти при вызове GlobalAlloc (в процессе сериализации сцены), ты тормозишь другие нейтивные потоки?
Здравствуйте, alex_public, Вы писали:
_>И кстати я слышал что слухи что в них попытаются интегрировать и Metro вариант. Т.е. возможно получиться писать общий код и под win7 и под win8 metro. Но это пока только слухи.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Да ты, прям, ретроград!
Ага, я такой. Так и представляю себе рабочее место будущего... Значит сижу я в своём удобном кресле и возюкаю вытянутыми руками по 24 дюймовому сенсорному монитору. Хотя с другой стороны наверное офигительные мышцы можно накачать на руках так...
Здравствуйте, alex_public, Вы писали:
ГВ>>Да ты, прям, ретроград!
_>Ага, я такой. Так и представляю себе рабочее место будущего... Значит сижу я в своём удобном кресле и возюкаю вытянутыми руками по 24 дюймовому сенсорному монитору. Хотя с другой стороны наверное офигительные мышцы можно накачать на руках так...
А мне, например, такая перспектива очень даже нравится. А то всё мышкой, да мышкой... Прям, как не в XXI веке. Тыкать пальцем, выбирать окна движением глаз... Голосовй ввод данных... И всё это в трёхмерном виде, на каком-нибудь голографическом псевдомониторе или что-то типа очков. По-моему, это просто ништяк, разве нет?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Aлeкceй, Вы писали:
A>Здравствуйте, Vladek, Вы писали:
V>>Как бы уже по-другому думают.
A>Про что там вкратце? А то много на ночь смотреть.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>А мне, например, такая перспектива очень даже нравится. А то всё мышкой, да мышкой... Прям, как не в XXI веке. Тыкать пальцем, выбирать окна движением глаз... Голосовй ввод данных... И всё это в трёхмерном виде, на каком-нибудь голографическом псевдомониторе или что-то типа очков. По-моему, это просто ништяк, разве нет?
Описанное как раз очень нравится... Только вот в win8 на десктопе нет вообще ничего из этого, а есть только то что описал я — возюкание вытянутыми руками по монитору.
Здравствуйте, alex_public, Вы писали:
ГВ>>А мне, например, такая перспектива очень даже нравится. А то всё мышкой, да мышкой... Прям, как не в XXI веке. Тыкать пальцем, выбирать окна движением глаз... Голосовй ввод данных... И всё это в трёхмерном виде, на каком-нибудь голографическом псевдомониторе или что-то типа очков. По-моему, это просто ништяк, разве нет? _>Описанное как раз очень нравится... Только вот в win8 на десктопе нет вообще ничего из этого, а есть только то что описал я — возюкание вытянутыми руками по монитору.
Ну так не всё сразу!
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Vladek, Вы писали:
V>К нему подходили с идеей сделать API к Windows по образу и подобию WP7, но он зарубил её, идею подхватила... команда WP7.
Интересная теория, но неверная. Винфон уже более менее оформился в 2008, в феврале 2010 был релиз самой ОС, а Синовский только в июле 2009 стал главой виндива.
Здравствуйте, Геннадий Васильев, Вы писали:
НС>>Уверен? А как же WinFS? Ну и не пересекается mssql так тесно с виндивом, как это происходит в случае девдива.
ГВ>При чём тут WinFS? Если я правильно понимаю, то SQl Server должен был быть включён в WinFS, но это никак не означает, что с самим SQL Server что-то случилось из-за отказа от развития WinFS.
WinFS, как я уже писал, это, собственно, MSSQL и есть. И, внезапно, проект этот как раз таки команды SQL Server.
ГВ>Хотя, стоит обратить внимание на выделенное: The plan was.. и There'd be no discussion about it. Чей план? Оззи? А Синофски в известность об этих планах заранее поставили?
Что значит заранее? Когда Оззи стал главным стратегом, до перехода Синовского в виндив было еще очень далеко.
ГВ> Согласовали? Похоже, что — нет.
Ты опять не понял. Никакой возможности согласований и не было. Люди до Синовского что то там делали. Потом пришел Синовский и без каких либо обсуждений просто выкинул всю работу.
ГВ> — в зеркало посмотри. Кстати, сам Синофски говорит, что увольнение — это личный выбор
Еще бы он другое говорил
ГВ>В качестве троллинга: Баллмеру и Гейтсу просто не хватает банального советского технического образования, чтобы понять, как нужно согласовывать работу исследовательских и "производственных" подразделений. Вот их там и колбасит из одной крайности в другую, первопроходцы, понимаешь.
Здравствуйте, alex_public, Вы писали:
_>Нууу это микроподколка дотнетчиков была...
То есть по делу сказать нечего.
_>Хотя... Насколько я знаю и к wxWidgets и к Qt есть биндинги для .Net.
Они негодные. Для промышленной разработки не подходят.
_>Вообще если брать только GUI, а не "всё всё" (как в wxWidgets и Qt), то на самом деле вариантов намного больше. Причём бывают очень красивые архитектуры, даже получше эти двух монстров. Например U++.
Ты опять троллишь?
Re[32]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Одна надежда на то, что WinRT нативный и ручонки дальновидящих дотнетчиков до него не дотянутся НС>Ну да, тебя только ручки дотнетчиков и заботят.
Дык, шаловливы без меры, того и заботят.
ГВ>>Ну и потом .Net уже в определённом смысле дискредитирован НС>Ага. Главное — верить. Можешь мечтать дальше
А я не верю, я констатирую.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Очевидно, чтобы тебе не подсовывали то, от чего тебе плеваться хочется.
Это эльфизм в запущенной стадии.
ГВ>>>Если это не так, то от MS надо в принципе держаться подальше, безотносительно крутизны технологий. НС>>Как будто где то по другому. Джобс, к примеру, еще круче в этом плане был. ГВ>Мы сейчас не об Apple.
НС>>Sinofsky battled with executives, alienated workers in groups outside his Windows empire, and created a toxic environment, according to sources. His departure shouldn't surprise anyone.
ГВ>Угу, оттуда же: ГВ>
Sinofsky clearly had his skills. He is an immensely intelligent executive. And he turned around the Windows division, which was foundering when he took it over in 2006, suffering from the disastrous development and release of Windows Vista. He brought a discipline to his two Windows releases, each one something of a moon shot that requires getting thousands of software engineers, testers, and product managers working in unison toward the same goal.
Жополизы всегда найдутся.
ГВ>Хрен его знает. Где-то я встречал высказывание, что SQL Server Team стала выпускать релизы в срок под влиянием методов Синофски
ГВ>>>Ага-ага-ага, много он помог тому же WP? НС>>Много. ГВ>А как именно? Я тут совсем не в курсе.
WP в плане удобства разработки объективно до сих пор на две головы выше конкурирующих платформ.
НС>>Ага, аж под все три. А есть еще и монотач. ГВ>Класс. То есть отдельные клиенты под три разные платформы — это, по-твоему, тьфу и растереть
Да.
ГВ>, а две сильно похожих версии ПО под WPF и WinRT — это беда-беда-беда
Две сильно похожих версии под WPF и WinRT (хотя похожесть там в основном в плане хамла, а дальше все намного печальнее) не избавляют от необходимости иметь отдельные версии под андроид и иос.
Re[32]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>>>Уверен? А как же WinFS? Ну и не пересекается mssql так тесно с виндивом, как это происходит в случае девдива. ГВ>>При чём тут WinFS? Если я правильно понимаю, то SQl Server должен был быть включён в WinFS, но это никак не означает, что с самим SQL Server что-то случилось из-за отказа от развития WinFS. НС>WinFS, как я уже писал, это, собственно, MSSQL и есть. И, внезапно, проект этот как раз таки команды SQL Server.
WinFS = (MSSQL + ...). Убираем WinFS, остаётся MSSQL + ... Что случилось с MSSQL? Как был, так есть, цветёт и пахнет.
ГВ>>Хотя, стоит обратить внимание на выделенное: The plan was.. и There'd be no discussion about it. Чей план? Оззи? А Синофски в известность об этих планах заранее поставили? НС>Что значит заранее? Когда Оззи стал главным стратегом, до перехода Синовского в виндив было еще очень далеко.
И что из этого следует? Стратег — это стратег, пусть стратегирует вволю. Далеко не все стратегические наработки немедленно пускаются "в серию", это как бы, общеизвестно.
ГВ>> Согласовали? Похоже, что — нет. НС>Ты опять не понял. Никакой возможности согласований и не было. Люди до Синовского что то там делали. Потом пришел Синовский и без каких либо обсуждений просто выкинул всю работу.
Там вообще много тумана. Я никак не могу взять в толк, что это за план такой, что он был, предусматривал участие windiv, а Синофски внезапно смог этот план прибить будучи исполнителем. Чей план-то? Рея? Баллмера? Гейтса? Каков был статус этого плана? Или это вообще не план, а просто чьи-то хотелки?
ГВ>> — в зеркало посмотри. Кстати, сам Синофски говорит, что увольнение — это личный выбор НС>Еще бы он другое говорил
Я не думаю, что ему был бы смысл скрывать именно увольнение (не по собственному желанию). Но это догадки, не более того.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, vdimas, Вы писали:
НС>>Твои сказочки мы уже много раз слышали. V>Дык, давно пора было самому проверить.
Я, в отличие от тебя, регулярно пользуюсь профайлером, а не сочиняю фантастические теории.
V>Те самые "звезды"? )) V>А что именно они меряли, не поделишься?
Перформанс WPF приложения во всех аспектах. В результате, к примеру, VS2012 не тормозит в UI вообще нигде. При том что редактор текста со сложной подсветкой синтаксиса и возможностью внедрять слои графики — не самая тривиальная в плане перформанса задача.
НС>>И проблема именно в рендерере. V>Брехня полная.
Ага, ит все тут сразу тебе поверили
V> Я код сериализатора композиции на дотнетной стороне гонял — он работает фактически со скоростью света, т.е. с этой стороны никаких тормозов.
Верно. И с другой стороны тоже в сериализаторе никаких тормозов. Тормоза вылазят при рендеринге, потому что растеризатор негодный.
V>Самая сложная сцена сериализуется от намного меньше миллисекунды до единиц миллисекунд.
Низкий отклик в WPF получается сугубо из-за необходимости вместо непосредственного вызова низлежащего DirectX делать сериализацию этих команд
Занавес.
V>В общем, руки есть, голова есть, хватит уже гадать который год на одну и ту же тему.
Гадаешь тут ты, а у меня есть реальные замеры.
НС>>Данные профайлера в студию. V>Гы-гы, дотнетный профайлер не умеет
Где я писал про дотнетный профайлер?
Re[33]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Геннадий Васильев, Вы писали:
НС>>Что значит заранее? Когда Оззи стал главным стратегом, до перехода Синовского в виндив было еще очень далеко. ГВ>И что из этого следует?
Из этого следует, что твои теории, будто Оззи что то там делал, не поставив в известность Синовского, опять не стоят выеденного яйца.
ГВ> Стратег — это стратег, пусть стратегирует вволю. Далеко не все стратегические наработки немедленно пускаются "в серию", это как бы, общеизвестно.
Их уже пустили в серию. До прихода Синовского.
ГВ>Там вообще много тумана
Ну да, когда стало понятно что ты фигню придумал, начались разговоры про туман.
ГВ>. Я никак не могу взять в толк, что это за план такой, что он был, предусматривал участие windiv, а Синофски внезапно смог этот план прибить будучи исполнителем
Тяжело разговаривать с человеком, который забывает все, о чем шла речь день назад. Нет, глава виндива это не исполнитель, это второе лицо корпорации.
НС>>Еще бы он другое говорил ГВ>Я не думаю, что ему был бы смысл скрывать именно увольнение
Это уже полный отрыв от реальности. Даже если отбросить чисто психологические моменты — шанс найти хорошую работу уволенного, да еще и не по сокращению, на порядки ниже, чем у того кто ушел сам.
ГВ>Но это догадки, не более того.
Т.е. словам лысого ты не веришь, а вот словам Синовского — веришь?
Re[34]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>>>Что значит заранее? Когда Оззи стал главным стратегом, до перехода Синовского в виндив было еще очень далеко. ГВ>>И что из этого следует? НС>Из этого следует, что твои теории, будто Оззи что то там делал, не поставив в известность Синовского, опять не стоят выеденного яйца.
Отнюдь. По идее, пока Синофски не стал вторым лицом, никто не обязан был предъявлять ему всю информацию. На фига, спрашивается?
ГВ>> Стратег — это стратег, пусть стратегирует вволю. Далеко не все стратегические наработки немедленно пускаются "в серию", это как бы, общеизвестно. НС>Их уже пустили в серию. До прихода Синовского.
Ничего не понимаю. Как их могли пустить в серию, если, как это следует из текста, ещё ничего не продавали? Это не серия, это всё ещё экспериментальная разработка, НИОКР.
ГВ>>Там вообще много тумана НС>Ну да, когда стало понятно что ты фигню придумал, начались разговоры про туман.
Просто детализировать всё — это надо статью накатать.
ГВ>>. Я никак не могу взять в толк, что это за план такой, что он был, предусматривал участие windiv, а Синофски внезапно смог этот план прибить будучи исполнителем НС>Тяжело разговаривать с человеком, который забывает все, о чем шла речь день назад. Нет, глава виндива это не исполнитель, это второе лицо корпорации.
Успокойся, я этого не забыл. Тогда вопрос: чей же это был план? Предшественника Синофски на посту главы windiv? Если так, то ничего удивительного, что от его "наследия" стали избавляться. Longhorn, понимаешь, повторять не хотелось.
НС>>>Еще бы он другое говорил ГВ>>Я не думаю, что ему был бы смысл скрывать именно увольнение НС>Это уже полный отрыв от реальности. Даже если отбросить чисто психологические моменты — шанс найти хорошую работу уволенного, да еще и не по сокращению, на порядки ниже, чем у того кто ушел сам.
Ага, а с учётом той лавины г..на, которое было вылито на Синофски — это, прямо таки, охрененное обеление.
ГВ>>Но это догадки, не более того. НС>Т.е. словам лысого ты не веришь, а вот словам Синовского — веришь?
Почему? Вполне верю словам Баллмера, как и Синофски. Что не так?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Re[34]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Это фобия. НС>Неа, ты именно что веришь.
Не надо присваивать себе лавры VladD2!
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>>Ничего, подержат две версии некоторое время: Win7 и Win8.
НС>Так на чем гуй тогда делать то? WPF загроблен, инвестировать в него нельзя, а WinRT на семерке недоступен. Вертаться обратно на винформсы 10-летней давности рождения и 15-летней — архитектуры?
WPF не загроблен, для дотнета он останется и никуда не денется. Пиши тормозные поделки сколько влезет.
Здравствуйте, Yoriсk, Вы писали:
I>>1000 компов это очень мало. У меня был первый опыт SL, втыкал в него всего три месяца и первый пробный "тираж" был на полторы тыщи юзеров.
Y>1К — это очень мало, а 1.5К — это уже достаточно. Интересная теория.
По твоему 'пробный "тираж"' это много ? Интересные навыки чтения, продолжай.
I>>Оказалось, все не так, процентов тридцать юзеров вообще не смогли войти в клиент за отсутствием клиента. Пришлось делать кастомную страничку инсталяции сильверлайта, что бы они не пугались.
Y>Не пугались чего, картинки "у вас не установлен SL, нажмите сюда"?
Да. Люди боятся инсталить чего то.
I>>Потом пришлось прикрутить табличку на счет совместимости браузеров, т.к. у многх оказалась какая то экзотика.
Y>Какая же, интересно? ЕМНИП уже второй раз вопрос звучит.
Тебе гистограмму с раскладом по браузерам показать, взятую из логов ииса ?
Y>У sl по большому счёту на клиенте есть аж два состояния. "Работает" и "на работает". Что-бы перевести из второго в первое обычно надо просто проинсталить клиент. Судя по вашему описанию никаких проблем кроме установить у вас не встретилось. О чём и речь.
Я перечислил целую кучу проблем — кривые контролы, низкий перформанс, гнусное аппаратное ускорение, инсталяция.
Y>В отличии от js, где в зависимости от есть "не работает вообще", "работает так, что лучше бы не", "очень сильно глючит но всё-таки работает", "работает, но как-то очень уж странно", "работает, но совсем не так, как в ХХХ" и еще вагон с тележкой всякого даже на совсем не экзотических броузерах. А с экзотикой, на которую и даже sl нету — так там проще повеситься сразу.
Не гони пургу, под ведроид и иос все пучком и летает безо всякого sl и даже флеша.
Здравствуйте, Евгений Акиньшин, Вы писали:
I>>1000 компов это очень мало. У меня был первый опыт SL, втыкал в него всего три месяца и первый пробный "тираж" был на полторы тыщи юзеров. Я наивно думал, что всё будет работать само. Оказалось, все не так, процентов тридцать юзеров вообще не смогли войти в клиент за отсутствием клиента. Пришлось делать кастомную страничку инсталяции сильверлайта, что бы они не пугались. Дальше оказалось, что кое какие браузеры запрещают подобные вещи. Пришлось добавить и этот пункт. Потом пришлось прикрутить табличку на счет совместимости браузеров, т.к. у многх оказалась какая то экзотика.
ЕА>Ключевое слово — экзотика. Под всеми распространенными браузерами и операционками нормально ставиться и работает.
Что, и настройки безопасности у всеходинаковые ? И права юзеров одинаковые ? Не поверю.
ЕА>Ну в общем согласен, сильверлайт требует несколько большего времени обучения для профессиональной работы. Только не знаю как это к обсуждаемому успеху платформы относится.
Непосредственно. Корявые и убогие контролы на сайтах — это в действии "требует несколько большего времени обучения для профессиональной работы".
ЕА>Ну опять все логично — ObservableCollection это реализация коллекции с нотификациями для простейшего и самого распространенного случая, когда требуется только обновление интерфейса и ничего лишнего не делает, чтобы не портить перфоманс. Если нужна коллекция с другим поведением, то либо создается наследник, либо пишется своя коллекция и реализуется INotifyCollectionChanged. И то, и другое делается элементарно.
Еще раз — наследник тебе ничего не даст, т.е. кое какие вещи private. Своя коллекция — не выход. Нужно подменять неймспейс.
ЕА>>Ну опять все логично — ObservableCollection это реализация коллекции с нотификациями для простейшего и самого распространенного случая, когда требуется только обновление интерфейса и ничего лишнего не делает, чтобы не портить перфоманс. Если нужна коллекция с другим поведением, то либо создается наследник, либо пишется своя коллекция и реализуется INotifyCollectionChanged. И то, и другое делается элементарно.
I>Еще раз — наследник тебе ничего не даст, т.е. кое какие вещи private. Своя коллекция — не выход. Нужно подменять неймспейс.
Здравствуйте, Геннадий Васильев, Вы писали:
НС>>Из этого следует, что твои теории, будто Оззи что то там делал, не поставив в известность Синовского, опять не стоят выеденного яйца. ГВ>Отнюдь. По идее, пока Синофски не стал вторым лицом, никто не обязан был предъявлять ему всю информацию. На фига, спрашивается?
Верно, А теперь цитирую:
Чей план? Оззи? А Синофски в известность об этих планах заранее поставили? Согласовали? Похоже, что — нет. Вот он и не стал даже обсуждать: мало ли, что там Оззи навыдумывал — пусть сам и продаёт, если такой грамотный.
ГВ>Ничего не понимаю. Как их могли пустить в серию, если, как это следует из текста, ещё ничего не продавали? Это не серия, это всё ещё экспериментальная разработка, НИОКР.
http://en.wikipedia.org/wiki/Live_Mesh
И еще, до прихода Синовского была утвержденная стратегия развития Windows. И еще можно было бы понять, если бы в меше были какие то реальные проблемы. Но, по факту, Синовский даже не стал разбираться что да как, а просто все порезал, в угоду своим "сверхценным" идеям. И так происходило во всех случаях. Что бы не составило конкуренцию его идеям, все сливалось в унитаз. И ладно бы его собственные идеи были как у Джобса, но ведь подобного феноменального успеха у сабжа и в помине не было.
ГВ> Предшественника Синофски на посту главы windiv? Если так, то ничего удивительного, что от его "наследия" стали избавляться. Longhorn, понимаешь, повторять не хотелось.
А чего не избавиться от еще чего нибудь? Ну, там, от ядра NT, к примеру?
ГВ>Ага, а с учётом той лавины г..на, которое было вылито на Синофски — это, прямо таки, охрененное обеление.
Тем не менее это не значит, что он с радостью будет заниматься садомазохизмом и рассказывать, что в увольнении виноват он сам.
НС>>Т.е. словам лысого ты не веришь, а вот словам Синовского — веришь? ГВ>Почему? Вполне верю словам Баллмера, как и Синофски. Что не так?
Потому что Баллмер почти открытым текстом сказал о неудовлетворительной коммуникации между подразделениями. Те, кто хоть немножко в теме, прекрасно поняли по какой причине от него избавились.
Здравствуйте, Ikemefula, Вы писали:
I>WPF не загроблен
Загроблен. В том смысле, что он переведен на режим поддержки и небольших модификаций. SL тоже, формально, вроде как присутствует, но мы же понимаем что да как.
Здравствуйте, vdimas, Вы писали:
V>Фи, как низкопробно-то...
Не, это просто кого то память подводит.
V>
V>и затем их "проигрывание" на нейтивной стороне в своём потоке.
Ага, ну то есть дотнет на самом деле не причем?
V>Знаешь, где я вылавливаю основные тормоза в нейтивном коде? На управлении памятью.
В GUI. Мдя, жесть.
V> Угу, особенно тяжело выглядит картинка в момент освобождения памяти. Т.е. если выделение происходит обычно одновременно с какими-то вычислениями и более-менее размазано во времени, то освобождение памяти в нейтиве обычно синхронизировано. Поэтому, если ты пользуешь разделяемый менеждер памяти, то, освобождая за раз тысячи блоков памяти, ты тысячи раз захватываешь и отпускаешь общий примитив синхронизации. Что происходит с другими потоками в этот момент, догадаться несложно.
Ну то есть проблема таки в безруких товарищах, реализовавших composition engine? Тогда с чем ты вообще споришь?
НС>>Где я писал про дотнетный профайлер? V>А где ответ на этот вопрос: V>
V>Как ты измеришь тот факт, что пока ты блокируешь разделяемый менеджер памяти при вызове GlobalAlloc (в процессе сериализации сцены), ты тормозишь другие нейтивные потоки?
Скачай какой нибудь приличный профайлер и посмотри. Профайлер многопоточных приложений с красивым рисованием блокировок есть, емнип, в VS2012. В том числе для нативного кода.
Но ты, конечно, можешь продолжать делать выводы исключительно из своих предположений и субъективных ощущений, да.
Здравствуйте, Sinix, Вы писали:
S>P.S. Что вам мешает взять PIX и посмотреть, как оно рендерится?
Мешает ему одна простая вещь — ему не интересна правда, ему только его теории интересны. В Философии есть показательный тред про ООП — он там такую фантастическую пургу несет, что его сказки про WPF просто блекнут на фоне.
Здравствуйте, Ночной Смотрящий, Вы писали:
S>>P.S. Что вам мешает взять PIX и посмотреть, как оно рендерится? НС>Мешает ему одна простая вещь — ему не интересна правда, ему только его теории интересны.
Проведи эксперимент, поделись результатами — какая проблема? Лень мешает?
По этой теме теории только у тебя, бо поисследовать происходящее тебе банально влом.
Мне было критично когда-то принимать решение о переходе на WPF, так что наисследовался по самое нихочу. Перехода на WPF не было, ес-но.
НС>В Философии есть показательный тред про ООП — он там такую фантастическую пургу несет, что его сказки про WPF просто блекнут на фоне.
О да... вместо того, чтобы возражать там же по-существу (если есть что), можно продолжать низкопробство под специально заведенным для этого действа ником. )))
Мои поздравления.
====================
И чего ты так боишься экспериментов под нейтивом? Ты же чем-то зарабатывал в до-дотнетные времена?
Re[36]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>>>Из этого следует, что твои теории, будто Оззи что то там делал, не поставив в известность Синовского, опять не стоят выеденного яйца. ГВ>>Отнюдь. По идее, пока Синофски не стал вторым лицом, никто не обязан был предъявлять ему всю информацию. На фига, спрашивается?
НС>Верно, А теперь цитирую: НС>
НС>Чей план? Оззи? А Синофски в известность об этих планах заранее поставили? Согласовали? Похоже, что — нет. Вот он и не стал даже обсуждать: мало ли, что там Оззи навыдумывал — пусть сам и продаёт, если такой грамотный.
Да, похоже, это неправильное предположение.
ГВ>>Ничего не понимаю. Как их могли пустить в серию, если, как это следует из текста, ещё ничего не продавали? Это не серия, это всё ещё экспериментальная разработка, НИОКР.
НС>http://en.wikipedia.org/wiki/Live_Mesh
Хм. Live Mech заменён на SkyDrive. Что-то я сходу не могу найти преимуществ первого перед вторым. С одной стороны понятно — синхронизация всего, что угодно. А с другой стороны, SkyDrive выглядит каким-то, более целостным и внятным, что ли... Или я чего-то важного не углядел?
НС>И еще, до прихода Синовского была утвержденная стратегия развития Windows. И еще можно было бы понять, если бы в меше были какие то реальные проблемы. Но, по факту, Синовский даже не стал разбираться что да как, а просто все порезал, в угоду своим "сверхценным" идеям. И так происходило во всех случаях. Что бы не составило конкуренцию его идеям, все сливалось в унитаз. И ладно бы его собственные идеи были как у Джобса, но ведь подобного феноменального успеха у сабжа и в помине не было.
Ну вот, всё вместе уже более или менее понятно. Правда, всё равно остаётся немой вопрос: что же это за стратегические планы, раз одному-единственному Синофски удалось их пустить под откос? Даже если мы спишем это на глупость Баллмера или на то, что он просто дожидался, пока разрушения достигнут каких-то критических размеров...
ГВ>> Предшественника Синофски на посту главы windiv? Если так, то ничего удивительного, что от его "наследия" стали избавляться. Longhorn, понимаешь, повторять не хотелось. НС>А чего не избавиться от еще чего нибудь? Ну, там, от ядра NT, к примеру?
Ядро-то вполне работоспособно, зачем от него избавляться?
ГВ>>Ага, а с учётом той лавины г..на, которое было вылито на Синофски — это, прямо таки, охрененное обеление. НС>Тем не менее это не значит, что он с радостью будет заниматься садомазохизмом и рассказывать, что в увольнении виноват он сам.
НС>>>Т.е. словам лысого ты не веришь, а вот словам Синовского — веришь? ГВ>>Почему? Вполне верю словам Баллмера, как и Синофски. Что не так?
НС>Потому что Баллмер почти открытым текстом сказал о неудовлетворительной коммуникации между подразделениями. Те, кто хоть немножко в теме, прекрасно поняли по какой причине от него избавились.
Хорошо, пусть так.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Так дорогой мой, скилл "нормально построить процесс разработки" стоит сотни тысяч стратегических задумок НС>Синовский, повторюсь, не уникален. На такую должность вполне можно подыскать человека, у которого и скилл этот присутствует, и с product vision все хорошо. Ну либо найти человека только с первым скиллом + скиллом умения прислушиваться к словам других, а не изображать из себя носорога со сверхценными идеями.
ИМХО, несколько странная позиция — непременно сочетать product vision и product development в одной персоне (если мы не о шароварщиках говорим, конечно). И потом, знаешь, "прислушиваться" — это можно сделать и обязанностью, а не свободным выбором. Функциональное подчинение ещё никто не отменял.
НС>>>Жополизы всегда найдутся. ГВ>>Восхитительно. Значит, как кто-то отзывается хорошо — так сразу жополиз. НС>Индусы, они такие
Индусы — они разные, есть и весьма толковые, и не страдающие избыточным жополизничеством.
НС>>>WP в плане удобства разработки объективно до сих пор на две головы выше конкурирующих платформ. ГВ>>Верю. Только что это меняет в смысле распространённости? НС>В смысле распространенности надо долго и больно бить по яйцам маркетоидов. Нет, они традиционно у МС некудышные, но то, что произошло с винфоном, это уже вообще ни в какие ворота. И тут, кстати, почти вся вина на лысом — его провал.
То есть маркетинг валят маркетологи во главе с Баллмером, а по шее достаётся Синофски. А заодно Баллмер прощёлкивает развал "стратегических планов" (при условии, что таковые вообще были чем-то, значащим больше, чем бумага, на которой они распечатаны). Ну вот и складывается картина...
НС>>>Две сильно похожих версии под WPF и WinRT (хотя похожесть там в основном в плане хамла, а дальше все намного печальнее) не избавляют от необходимости иметь отдельные версии под андроид и иос. ГВ>>О, как! Может, лучше одну, на HTML+JS? НС>Это, если у нас GUI достаточно тяжелый, будет дороже и хуже, чем основное приложение на WPF/SL и 2.5 облегченных клиента для мобилок (либо один клиент на монотаче с реюзом части кода большого приложения).
Ну OK, фиг с ним.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>Здравствуйте, Ikemefula, Вы писали:
ЕА>>>Ну опять все логично — ObservableCollection это реализация коллекции с нотификациями для простейшего и самого распространенного случая, когда требуется только обновление интерфейса и ничего лишнего не делает, чтобы не портить перфоманс. Если нужна коллекция с другим поведением, то либо создается наследник, либо пишется своя коллекция и реализуется INotifyCollectionChanged. И то, и другое делается элементарно.
I>>Еще раз — наследник тебе ничего не даст, т.е. кое какие вещи private. Своя коллекция — не выход. Нужно подменять неймспейс.
ЕА>Почему не выход?
Потому что например есть другие компоненты которые _уже_ используют имеющуюся коллекцию.
Re[37]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Хм. Live Mech заменён на SkyDrive.
Не совсем. Live Mesh это все таки немного больше, чем просто синхронизация данных в удаленное хранилище.
ГВ> Что-то я сходу не могу найти преимуществ первого перед вторым.
Куда интереснее преимущества второго перед первым.
ГВ>Правда, всё равно остаётся немой вопрос: что же это за стратегические планы, раз одному-единственному Синофски удалось их пустить под откос?
Неважно что это за планы. Важно то, что власти у него было очень много, и в борьбе нанайских мальчиков он был круче всех
Здравствуйте, Ночной Смотрящий, Вы писали:
I>>WPF не загроблен
НС>Загроблен. В том смысле, что он переведен на режим поддержки и небольших модификаций. SL тоже, формально, вроде как присутствует, но мы же понимаем что да как.
А ты как хотел, каждые год-два устраивать революцию ? Иногда надо заниматься тем, что тупо улучшать перформанс не выпуская никаких фич.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>>>А кто тогда глава виндива? I>>Руководитель отдела разработки.
НС>Нет, мужчина. Глава виндива де-факто "стратегический маркетинг".
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>ИМХО, несколько странная позиция — непременно сочетать product vision и product development в одной персоне
Ну вот у Джобса получалось. У Гейтса тоже.
ГВ>И потом, знаешь, "прислушиваться" — это можно сделать и обязанностью, а не свободным выбором. Функциональное подчинение ещё никто не отменял.
Ничего не понял. Кто кому должен подчиняться, чтобы умерить пыл товарищей навроде Синовского?
ГВ>То есть маркетинг валят маркетологи во главе с Баллмером, а по шее достаётся Синофски
Здравствуйте, vdimas, Вы писали:
V>Проведи эксперимент, поделись результатами — какая проблема?
Проблема называется NDA. А повторять кучу работы самостоятельно, чтобы тебя потешить — мне лень. Тем более что не я тут с сенсационными заявлениями насчет WPF регулярно вылажу.
НС>>В Философии есть показательный тред про ООП — он там такую фантастическую пургу несет, что его сказки про WPF просто блекнут на фоне.
V>О да... вместо того, чтобы возражать там же по-существу
Обрати внимание — я не тебе отвечал.
V>И чего ты так боишься экспериментов под нейтивом?
Здравствуйте, Ikemefula, Вы писали:
I>А ты как хотел, каждые год-два устраивать революцию ?
Я хотел, чтобы на развитие WPF выделялось бабло. Чтобы, к примеру, переписать тормозной composition engine.
I> Иногда надо заниматься тем, что тупо улучшать перформанс не выпуская никаких фич.
Перформансом тоже никто заниматься не будет, если проект не реанимируют.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>В смысле распространенности надо долго и больно бить по яйцам маркетоидов. Нет, они традиционно у МС некудышные, но то, что произошло с винфоном, это уже вообще ни в какие ворота. И тут, кстати, почти вся вина на лысом — его провал.
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Хм. Live Mech заменён на SkyDrive. НС>Не совсем. Live Mesh это все таки немного больше, чем просто синхронизация данных в удаленное хранилище. ГВ>> Что-то я сходу не могу найти преимуществ первого перед вторым. НС>Куда интереснее преимущества второго перед первым.
Я пока вижу одно главное преимущество — что легче понять, для чего он (SkyDrive) предназначен. Live Mesh выглядит более навороченным агрегатом "all in one" за ради абстракции папок. Но я только по верхам пробежался и почти наверняка чего-то важного не заметил.
ГВ>>Правда, всё равно остаётся немой вопрос: что же это за стратегические планы, раз одному-единственному Синофски удалось их пустить под откос? НС>Неважно что это за планы. Важно то, что власти у него было очень много, и в борьбе нанайских мальчиков он был круче всех
Содержание планов и в самом деле не важно. Важно другое — формальный статус таких планов.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, alex_public, Вы писали:
_>Если по делу, то я уже писал что не вижу никаких реальных проблем у .Net сейчас
Технологических проблем — вполне возможно. Но есть еще и политические проблемы. Виндив фактически определяет основные денежные потоки внутри корпорации и основные направления развития.
Более конкретно — посмотри на ситуацию с WinRT. Оно нахрен никомы в девдиве не надо было. Но тут нарисовался Синовский со своим NIH и панеслась — все планы девдива похерены и он дружно перепиливает кучу компиляторов, тулов, CLR и саму студию под поддержку этого WinRT. -2 года в развитии всех технологий разработки.
_>так что откуда все эти вопли?
Вопли тут в основном от некоторых любителей натива.
_>Или дотнетчики так боятся что их мирок при равной конкуренции автоматом сдуется? )
Конкуренция внутри одного подразделения? Ну ну.
Re[38]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>>Хм. Live Mech заменён на SkyDrive.
НС>Не совсем. Live Mesh это все таки немного больше, чем просто синхронизация данных в удаленное хранилище.
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>ИМХО, несколько странная позиция — непременно сочетать product vision и product development в одной персоне НС>Ну вот у Джобса получалось. У Гейтса тоже.
Дык, не все же такие, как Гейтс и Джобс (безотносительно того, нравятся они кому-то или нет, таланты у обоих, определённо, выдающиеся).
ГВ>>И потом, знаешь, "прислушиваться" — это можно сделать и обязанностью, а не свободным выбором. Функциональное подчинение ещё никто не отменял. НС>Ничего не понял. Кто кому должен подчиняться, чтобы умерить пыл товарищей навроде Синовского?
Гипотетически: если бы Синофски состоял в формальном функциональном подчинении Оззи, то никаких коллизий не было бы. От Оззи исходил бы не "вопрос для обсуждения", а прямое указание: вот тебе фитюлька, займись продажами. И Синофски ответил бы "есть!", а не "...сам пошёл!"
ГВ>>То есть маркетинг валят маркетологи во главе с Баллмером, а по шее достаётся Синофски НС>Синовскому досталось по шее не за провал винфона.
Я понимаю. Но исхожу из того, что по идее, характеристики выпускаемых продуктов должны бы согласовываться с маркетологами, а не с видением "производственника" — Синофски. А Баллмер, выходит, как раз это направление и завалил (при условии, что маркетологи подчинены именно Баллмеру).
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Твои сказочки мы уже много раз слышали. Только у меня есть данные от людей, которые долго и больно меряли перформанс WPF внутри девдива. И проблема именно в рендерере. Маршаллер там не разглядеть даже в электронный микроскоп. Не согласен? Данные профайлера в студию.
Цирк — GPU по факту работает медленнее чем процессор выполняя неэффективный менеджед код
Вобщем WPF надо было убить года на два-три раньше.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>>>В Философии есть показательный тред про ООП — он там такую фантастическую пургу несет, что его сказки про WPF просто блекнут на фоне.
V>>О да... вместо того, чтобы возражать там же по-существу
НС>Обрати внимание — я не тебе отвечал.
В том то и дело, а судя по твоим техническим постам, тебе ктото объяснял суть происходящего в том треде
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Дык, не все же такие, как Гейтс и Джобс (безотносительно того, нравятся они кому-то или нет, таланты у обоих, определённо, выдающиеся).
Ну так и МС — выдающаяся корпорация.
НС>>Ничего не понял. Кто кому должен подчиняться, чтобы умерить пыл товарищей навроде Синовского?
ГВ>Гипотетически: если бы Синофски состоял в формальном функциональном подчинении Оззи, то никаких коллизий не было бы
А с самого начала об этом писал — проблема в том, что Синовский был не на своей должности.
Здравствуйте, vdimas, Вы писали:
V>Я же говорю, вы не туда и не тот порядок цифр смотрите. Покажешь мне такой рендерер, который рисует сцену за сотню ms? То-то... А задержки именно такие.
WPF. Построение сцены 100-300мс, рендеринг — 5сек. Ты открой ссылку от Sinix, там на пальцах объясняется, почему такой результат. После таких вещей мне стало жалко времени ,которое я потратил на SL и WPF вместе взятые.
В сервелате, бущешь смеяться, примитивы быстрее рисуются напрямую в битмап олдскульными алгоритмами навроде брезенхема,и это занимает времени меньше нежели построение сцены вместе с тамошним рендерингом через легальные средтсва.
То есть GPU выполняя команды отрисовки работает медленнее, нежели CPU который гоняет неэффективный менеджед код. С учетом того, что СPU минимум втрое медленнее GPU, рендеринг по скромной оценке минимум в 10 раз медленнее чем мог бы быть.
Здравствуйте, alex_public, Вы писали:
_>Интересно, каким надо быть маркетологом, что бы суметь продать такое http://habrahabr.ru/company/apps4all/blog/159285/ ?) Тут даже руководители секты Apple не справились бы... )
А почитайте комментарии, там не у всех такие проблемы.
Если вспомнить, то и у эплов косяков много было. Если вспомнить 4 айфон, когда все вокруг пищали, что антенна пропадает.
Здравствуйте, Ikemefula, Вы писали:
I>>>1000 компов это очень мало. У меня был первый опыт SL, втыкал в него всего три месяца и первый пробный "тираж" был на полторы тыщи юзеров. Y>>1К — это очень мало, а 1.5К — это уже достаточно. Интересная теория. I>По твоему 'пробный "тираж"' это много ? Интересные навыки чтения, продолжай.
При чём тут "пробный тираж" и подобные поэтические описания? Вы сами сказали, что 1К — это очень мало, у тебя был целый 1.5К и там немедленно вылезли проблемы. Видимо порог "много/мало" где то между 1 и 1.5К.
Y>>Не пугались чего, картинки "у вас не установлен SL, нажмите сюда"? I>Да. Люди боятся инсталить чего то.
Всякий раз, когда я слышу про то, что "юзеры боятся ставить" как-то магически оказывается, что у этих робких юзеров последние апдейты FF/Chrome/... и прочее и прочее и прочее. Ява апдейтер чуть ли не два раза в день чего-то требует, а юзеры всё боятся...
I>>>Потом пришлось прикрутить табличку на счет совместимости браузеров, т.к. у многх оказалась какая то экзотика. Y>>Какая же, интересно? ЕМНИП уже второй раз вопрос звучит. I>Тебе гистограмму с раскладом по браузерам показать, взятую из логов ииса ?
Замечательно как мы от простой просьбы указать броузер через "специальную таблицу совместимости" приехали к каким-то там гистограммам из логов. И всё без какой-либо конкретики.
Уж что угодно покажите.
Y>>У sl по большому счёту на клиенте есть аж два состояния. "Работает" и "на работает". Что-бы перевести из второго в первое обычно надо просто проинсталить клиент. Судя по вашему описанию никаких проблем кроме установить у вас не встретилось. О чём и речь. I>Я перечислил целую кучу проблем — кривые контролы
В чём кривость?
I>низкий перформанс, гнусное аппаратное ускорение
Чем и как меряли? Можно результаты посмотреть?
Y>В отличии от js, где в зависимости от есть "не работает вообще", "работает так, что лучше бы не", "очень сильно глючит но всё-таки работает", "работает, но как-то очень уж странно", "работает, но совсем не так, как в ХХХ" и еще вагон с тележкой всякого даже на совсем не экзотических броузерах. А с экзотикой, на которую и даже sl нету — так там проще повеситься сразу. I>Не гони пургу, под ведроид и иос все пучком и летает безо всякого sl и даже флеша.
Здравствуйте, vdimas, Вы писали:
V>Автор по ссылке хороший такой махровый нуб. Он приводит как откровения стандартные вещи. Давай посмотрим внимательней, что происходит: V>
V>И далее есть еще одна приведенная им картинка с линиями по контуру. Т.е. CPU выдаёт в GPU массив точек, но кол-во этих точек (42 точки на рисунке) и сам характер вычислений более чем скромный, в сравнении со случаем сглаженного рисования эллипса полностью на CPU. Сотню таких "каркасных" точек можно посчитать за пару сотен ns, вызов метода объекта DirectX — единицы ns. То, что автор называет "блокировкой на каждый вызов" — разница в стоимости порядка десятка ns на вызов и то не факт, бо это же аппаратная блокировка, а не ожидание на примитиве синхронизации ОС. Т.е. один лишний нейтивный вызов рояли не играет вообще. Кароч, многие миллионы таких элипсов в секунду рисовать не проблема и это (неожиданно!) именно так и происходит во всех приложениях. Заметь, ни у кого не тормозит — AutoCAD может рисовать поболе примитивов в сцене весьма и весьма шустро.
Миллионы эллипсов в wpf это вообще невозможная проблема.
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Дык, не все же такие, как Гейтс и Джобс (безотносительно того, нравятся они кому-то или нет, таланты у обоих, определённо, выдающиеся). НС>Ну так и МС — выдающаяся корпорация.
Это не аргумент.
НС>>>Ничего не понял. Кто кому должен подчиняться, чтобы умерить пыл товарищей навроде Синовского? ГВ>>Гипотетически: если бы Синофски состоял в формальном функциональном подчинении Оззи, то никаких коллизий не было бы НС>А с самого начала об этом писал — проблема в том, что Синовский был не на своей должности.
Объясняю ещё раз. Если бы у Синофски была формальная обязанность подчиняться решениям подразделения Оззи, то никаких проблем: "они нашу штуку завалили, а-а-а-а!" не было бы и близко. Но поскольку в MS, как я понял, полномочия подразделений перемешаны в какую-то первобытную кашу, то...
Естественно, это всё — гипотетические рассуждения.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Yoriсk, Вы писали:
Y>>В отличии от js, где в зависимости от есть "не работает вообще", "работает так, что лучше бы не", "очень сильно глючит но всё-таки работает", "работает, но как-то очень уж странно", "работает, но совсем не так, как в ХХХ" и еще вагон с тележкой всякого даже на совсем не экзотических броузерах. А с экзотикой, на которую и даже sl нету — так там проще повеситься сразу. I>>Не гони пургу, под ведроид и иос все пучком и летает безо всякого sl и даже флеша.
Y>Ой, судя по реакции я в больное место попал...
http://www.icenium.com/
Ну и головой подумай — как это иос показывает видео на сайтах, если ни флеша ни sl в ём нет ?
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Здравствуйте, alex_public, Вы писали:
_>>Интересно, каким надо быть маркетологом, что бы суметь продать такое http://habrahabr.ru/company/apps4all/blog/159285/ ?) Тут даже руководители секты Apple не справились бы... )
НС>А ничего что у меня 100 лет релизный айпад делает ровно то же прямо здесь и сейчас?
И где тонны жалоб ? Или нам по тебе мерить ?
НС>Разбираться надо с конкретным софтом. Хотели нейтив для прикладников — кушайте, не обляпайтесь. В WP7.5 я за год эксплуатации ни разу не видел подвисания или перезагрузки телефона.
Здравствуйте, Aлeкceй, Вы писали:
A>А почитайте комментарии, там не у всех такие проблемы. A>Если вспомнить, то и у эплов косяков много было. Если вспомнить 4 айфон, когда все вокруг пищали, что антенна пропадает.
Пищали а реально оказалось что процент сбоев связи был меньше чем у 3GS.
Здравствуйте, alex_public, Вы писали:
_>Ну так например C++ на Windows предыдущие лет 10 прожил как раз в таком состояние
Это вряд ли
НС>>Конкуренция внутри одного подразделения? Ну ну.
_>Конкуренция платформ за разработчиков.
Мы сейчас про внутрикорпоративные дела говорим вообще то. С тем же сервелатом внешних разработчиков тупо кинули. Если это называется конкуренция платформ ...
_> У нас же сейчас какая официальная политика MS? Есть три платоформы: нейтив, .Net, html+javascript. И они с точки зрения MS теперь вроде как равноправные — выбор полностью за разработчиками...
Ага, и поэтому подавляющее большинство софта в маркете — на дотнете.
Здравствуйте, Ikemefula, Вы писали:
I>Миллионы эллипсов в wpf это вообще невозможная проблема.
Ес-но, потому что они не умеют передавать трафик м/у потоками.
Странно, написанные "непонятно кем" биржевые программы умеют передавать трафик, а MS — нет. ))
Шучу, MS умеет, ес-но, просто в случае конкретно WPF кол-во индуссов перешло в кач-во продукта.
Здравствуйте, Ночной Смотрящий, Вы писали:
I>>Это надо к главе WPF подойти, пробить в грудную клетку и печень I>>глава WPF просто фантазёр.
НС>О ком конкретно речь?
Это не важно, т.к. результат налицо — про перформанс не думали, Убить перформанс проца которй минимум вдесятеро быстрее CPU это надо прилагать сумасшедшие усилия.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>>>А ничего что у меня 100 лет релизный айпад делает ровно то же прямо здесь и сейчас? I>>И где тонны жалоб ?
НС>У поклоняющихся Джобсу это не принято.
Ну вот, очередной заговор в твоем исполнении. Я видел кучу жалоб на эппловскую продукцию, но почему не принято говорить только про твою проблему, вот загадка то.
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Мы сейчас про внутрикорпоративные дела говорим вообще то. С тем же сервелатом внешних разработчиков тупо кинули. Если это называется конкуренция платформ ...
Ты скажи внятно наконец, бюджеты у впф и винды общие, т.е. один на всех, или нет ? Если общие, то фактически впф или дотнет часть виндива. Если нет, то при чем здесь Синофски ?
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Это вряд ли
Почему? Не помню каких-то существенных улучшение для C++ от MS года так наверное с 2003 до 2010... И к 2010-му там уже некопилось совершенно неприличное отставание даже от gcc... Хорошо хоть вовремя опомнились потому как в этой ситуации C++ разработчики банально стали переходить не на C#, а на другие средства разработки с C++ и часто кроссплатформенные....
НС>Мы сейчас про внутрикорпоративные дела говорим вообще то. С тем же сервелатом внешних разработчиков тупо кинули. Если это называется конкуренция платформ ...
Так если внутренняя политика MS будет соответствовать их же официальной, то будет всё поровну. Собственно говоря пока это уже так и выглядит, т.к. winrt хотя внутри себя и целиком нативный, но работает для всех трёх платформ. Т.е. не совсем верно говорить что эти силы оторвали от .net разработки. Скорее направили на общую для всех трёх платформ разработку. Т.е. просто равенство...
А сильверлайт... Это же по сути подобие флеша так и не набравшее популярность. Довольно странно его поддерживать на фоне того как весь мир с любопытством наблюдал за войной оригиального флеша и html5.
НС>Ага, и поэтому подавляющее большинство софта в маркете — на дотнете.
Здравствуйте, Ikemefula, Вы писали:
V>>Я же говорю, вы не туда и не тот порядок цифр смотрите. Покажешь мне такой рендерер, который рисует сцену за сотню ms? То-то... А задержки именно такие. I>WPF. Построение сцены 100-300мс, рендеринг — 5сек.
У тебя есть сылка на демонстрационное приложение в исходниках?
I>Ты открой ссылку от Sinix, там на пальцах объясняется, почему такой результат.
Сорри, там откровения одного нуба для других. Как рисуются сложные фигуры в ускорителях известно со времен Win95. И у всех оно, заметь, работает как надо. А в WPF — нет.
Уже сказал, единственное разумное зерно в статье насчет рисования сцены каждый раз с 0-ля. Дык, но это:
1. было известно сразу по выходу WPF (см. рекомендации от самой MS);
2. многократно перевешивает всю остальную статью по важности.
Автор этого не понимает и упомянул о кешировании примитивов вскользь, вместо этого замылив кучу места рассуждениями о том, чего не понимает и что работает никак не медленее, чем у всех.
Ну и, по нубству своему, умудряется сравнивать с "Direct2D Rendering", и даже дает ссылку. Это полный приплызд! Не в курсе, видимо, когда появился 10-й и 11-й DirectX, а когда WPF.
I>После таких вещей мне стало жалко времени, которое я потратил на SL и WPF вместе взятые.
Глупости. XAML как был, так и остался. Немного подменили низлежащий движок и теперь всё летает. Так что, ничего ты зря не потратил, навыки те же.
I>В сервелате, бущешь смеяться, примитивы быстрее рисуются напрямую в битмап олдскульными алгоритмами навроде брезенхема,и это занимает времени меньше нежели построение сцены вместе с тамошним рендерингом через легальные средтсва.
Сервелат — это вообще отдельный фреймворк. Боюсь, там главным было соблюдение "песочницы", да и вообще, такая куча работы по разработке YA-dotnet, что до шлифовки рендеринга руки просто не дошли. Скорее всего была поставлена задача обогнать Adobe Flash — с ней справились успешно.
I>То есть GPU выполняя команды отрисовки работает медленнее, нежели CPU который гоняет неэффективный менеджед код. С учетом того, что СPU минимум втрое медленнее GPU, рендеринг по скромной оценке минимум в 10 раз медленнее чем мог бы быть.
Это зависит от характера сцены, ес-но. А вообще о SL сказать что-либо сложно, т.к. эта технология "сама в себе". Но кое-какие вещи в SL появились раньше, чем в WPF (а в WPF не появились вообще), а кое-какие АПИ классов в SL нравилось гораздо больше, чем аналогичные в дотнете. Более продуманно, что ле... Поэтому, мне одно время казалось, что SL в далёкой перспективе и будет следующим дотнетом, а текущий дотнет + WPF умрет... Меня пытались поднять на смех, ес-но... но оп-па!!! Набор классов WinRT является зеркальным отражением SL, а вовсе не WPF! Какая прэлесть! ЧТД.
Re[38]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Важно то, что власти у него было очень много, и в борьбе нанайских мальчиков он был круче всех
Если у Синофски действительно было много власти (подозреваю, что так и было), то ни о какой борьбе нанайских мальчиков речи идти не может. Это простая, банальная и тупая как пробка реализация полномочий. Ergo, никакой фантастической подковёрной борьбы не было, поскольку начальники с подчинёнными не сражаются по определению. А toxic environment по-видимому, создавали в основном те, кто образовывал это самое environment. Короче, ситуация — просто хрестоматийная.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ikemefula, Вы писали:
I>И этот человек утверждат, что аргумент hi_octane необоснованы Почитай еще, может найдешь их обосноваными
Ну, я не привык бить себя пяткой в грудь и рассказывать какой я супер-пупер программист, если я не сталкивался с задачей или знаю тему неглубоко, не вижу проблем об этом прямо сказать, но это не значит что я не понимаю о чем речь.
(В использоваии MTA модели не больше сложности, чем в любой многопоточной программе.)
Ну, насчет hi_octane — мы обсуждали, простые приземленные вещи, о чем я и написал. Моя мысль — не стоит поливать говном, то что исправно работает
I>Да, ком предлагает слишком сложное решение. Городить на КОМ большие фремворки это самоубийство. Вот отдельные нативные феньки для низкоуровневого доступа или перформансу — очень даже и неплохо.
Черт, а в MS об этом не знают видимо там сборище суициидальных маньяков
Здравствуйте, vdimas, Вы писали:
V>Сорри, там откровения одного нуба для других. Как рисуются сложные фигуры в ускорителях известно со времен Win95. И у всех оно, заметь, работает как надо. А в WPF — нет.
В том то и дело.
I>>После таких вещей мне стало жалко времени, которое я потратил на SL и WPF вместе взятые.
V>Глупости. XAML как был, так и остался. Немного подменили низлежащий движок и теперь всё летает. Так что, ничего ты зря не потратил, навыки те же.
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, michae1, Вы писали:
I>Практически все менеджед
шутишь? С++ — цветет и пахнет.
I>Вот этот OleView может врать а работая через #import ты ничем не исправишь ситуацию.
Круто! Как же он может врать если он вытаскивает инфу из бинарников и реестра? Гуиды не те показывает или припишет чего в дерево интерфейсов?
M>>4) "Кодами возврата HR пользуются только в самой MS, все остальные только S_OK, и E_FAIL" — рукалицо) открою тебе страшную тайну, HRESULT предоставляет диапазон для кастомных ошибок, а такие интерфейсы как IErrorInfo... позволяют получить текстовую информацию. (конечно это должно поддерживаться используемым com_объектом). Не нравиться HRESULT юзай _com_ptr_t
I>Первосортное дерьмо. Увеличивает время на разработку компонентов и затрудняет использование. Правильный путь — исключения, но в ком этого нет и никогда не будет.
Возврат кода ошибки ничем не хуже бросания ексепшена — это две равноправных идеологии. Вообще, для сведения, _com_ptr_t обертка генерирует _com_error эксепшн но ты можешь юзать CComPtr и работать с кодами ошибок.
P.S.: Впечатления подхалима он на меня не произвёл.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ikemefula, Вы писали:
I>>>После таких вещей мне стало жалко времени, которое я потратил на SL и WPF вместе взятые. V>>Глупости. XAML как был, так и остался. Немного подменили низлежащий движок и теперь всё летает. Так что, ничего ты зря не потратил, навыки те же. I>Что, SL стал внезапно шустрым ? Не знал.
Metro GUI внезапно шустрое, не хуже Win7. А навыки для разработки дотнетных Metro-приложений внезапно нужны те же, что и для SL/WPF.
Здравствуйте, vdimas, Вы писали:
V>Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>>Если брать чисто UI, то скорее наоборот — WinRt эдакий каcтрированный сильверлайт 3.0
V>Из-за отсутствия всего 2-х специфических контролов из разряда "неуловимый Джо"? Которые сделать — раз плюнуть?
V>Ребят, вы уже там совсем в своём соку заварились...
Ну вот навскидку, с чем столкнулся в последнее время:
1) Нет события OnTextInput — чего ввели с клавиатуры узнать нельзя. Глубоко не копал, но судя по тому что пишут, совсем нельзя. Никакой свой текстовый процессор не напишешь, включая элементарный ввод по маске итд.
2) Нельзя отрисовать никакие объекты UI в битмап. Совсем нельзя. Нам пришлось повторить все, что отображается в UI на DirectX, только ради того, чтобы png-ку сохранить
3) Биндинг — то что мне больше всего нравилось во всех XAML реализациях, кастрирован по самое нехочу
4) Нету драг-н-дропа между приложениями
5) Примитивнейший форматированный текст, можно сказать нет его. В сочетании с пунктом 1, так вообще весело.
6) Нет элементарной заливки повторяющимся растровым изображением
7) ScrollViewer — который шустрый, с правильным поведением и плавной анимацией, поглощает практически все события манипуляции. Если хочется иметь интерактивный контент со скроллированием, приходится писать свой контрол, который таким же отзывчивым и плавным никак не выходит
Если подскажешь как это все победить, да еще чтобы раз плюнуть, буду признателен.
Из положительного могу сказать, что действительно работает на удивление шустро, стабильно и почти не глючит.
V>Это зависит от характера сцены, ес-но. А вообще о SL сказать что-либо сложно, т.к. эта технология "сама в себе". Но кое-какие вещи в SL появились раньше, чем в WPF (а в WPF не появились вообще), а кое-какие АПИ классов в SL нравилось гораздо больше, чем аналогичные в дотнете. Более продуманно, что ле... Поэтому, мне одно время казалось, что SL в далёкой перспективе и будет следующим дотнетом, а текущий дотнет + WPF умрет... Меня пытались поднять на смех, ес-но... но оп-па!!! Набор классов WinRT является зеркальным отражением SL, а вовсе не WPF! Какая прэлесть! ЧТД.
Таки да, в сильверлайте в некоторых местах более продуман и многие вещи в нем раньше появились. И самое смешное, он даже частенько оказывается быстрее.
Здравствуйте, Aлeкceй, Вы писали:
ГВ>>С моей колокольни — он выигрышном положении перед Windows, потому что не собирается кардинально меняться ради "выигрывания битв" не пойми кого с не пойми чем и ради очередного светлого будущего (читай, для удовлетворения чьих-то глупых амбиций). Поскольку довольно много известного мне народу рассуждает примерно так же, то...
A>Ага, у линуксоидов до сих пор баттхерт на счёт вялого и системд. А если не вспоминать эпичные срачи на темы: KDE 4 != KDE 4.0, про гном3 не пригоден для десктопа и т.д., и т.п., то да, изменений ради битв нет.
Да нету, это же просто оболочка. Под виндами тоже полно разных шеллов и эти разные шеллы вполне совместимы, потому что есть Shell API. В линухах тоже есть же стандарт на оконный менеджер, поэтому гномовские приложения работают внутри кед и обратно тоже и все они прекрасно работают внутри любой адекватной графической оболочки с адекватным оконным менеджером. Мне на одной из виртуалок надоел гном — переключил на XFCE и забыл. Все те же самые приложения прекрасно запускаются из под любой оболочки, не мешая друг другу.
Сравни с тем, что в Win8 необходимо переключать режимы отображения из полноэкранного Metro в оконное. Вот это уже ломающее изменение. Какой бы из шеллов по ссылке ты не взял — они в пролете на Метро.
Здравствуйте, Ночной Смотрящий, Вы писали:
ЕА>>Итого на сегодняшний день имеем 4 очень похожие, но нефига не совместимые реализации одного и того же: WPF, Silverlight, Windows Phone и Windows Runtime НС>При этом если несовместимость первого и остальных еще можно понять и простить, все таки для полной реализации всех фич WPF нужен полноценный фреймворк, а SL и WP почти совместимы между собой, то WinRT — чистейшая блажь сабжа.
Была бы возможность сделать быстрый WPF, за 7 лет был бы сделан. Нет — нет.
M>Ну, я не привык бить себя пяткой в грудь и рассказывать какой я супер-пупер программист, если я не сталкивался с задачей или знаю тему неглубоко, не вижу проблем об этом прямо сказать, но это не значит что я не понимаю о чем речь. M>(В использоваии MTA модели не больше сложности, чем в любой многопоточной программе.)
И часто у тебя встречается маршалинг в любых многопоточных программах ?
M>Ну, насчет hi_octane — мы обсуждали, простые приземленные вещи, о чем я и написал. Моя мысль — не стоит поливать говном, то что исправно работает
Если бы работало. А так большая часть глюков в нынешнем софте это кривые комовские компоненты,то интерфейсы неправильно отдаются, то счетчик ссылок неправильно работает, то всякие говнометоды используются навроде моникеров, с которыми надо убить кучу времени только что бы понять, что к чему, то декларация метода занимает простыни и половина параметров означает не то что должно.
I>>Да, ком предлагает слишком сложное решение. Городить на КОМ большие фремворки это самоубийство. Вот отдельные нативные феньки для низкоуровневого доступа или перформансу — очень даже и неплохо.
M>Черт, а в MS об этом не знают видимо там сборище суициидальных маньяков
Знают. Дотнет появился как из за того, что ком зашел в тупик.
Здравствуйте, vdimas, Вы писали:
V>В линухах тоже есть же стандарт на оконный менеджер, поэтому гномовские приложения работают внутри кед и обратно тоже и все они прекрасно работают внутри любой адекватной графической оболочки с адекватным оконным менеджером. Мне на одной из виртуалок надоел гном — переключил на XFCE и забыл.
Ага, работают, но лучше бы не работали, потому что гтк-приложения выглядят вырвиглазно в кедах, пока не допилишь.
V>Сравни с тем, что в Win8 необходимо переключать режимы отображения из полноэкранного Metro в оконное. Вот это уже ломающее изменение. Какой бы из шеллов по ссылке ты не взял — они в пролете на Метро.
Здравствуйте, alex_public, Вы писали:
_>Интересно, каким надо быть маркетологом, что бы суметь продать такое http://habrahabr.ru/company/apps4all/blog/159285/ ?) Тут даже руководители секты Apple не справились бы... )
У меня андроид тоже самопроизвольно перезагружается, что не мешает ему продаваться.
ЕА>А по факту — только работает пошустрей + более совершенные АПИ для тача, и еще некоторых специфических областей. Вот зачем было так делать? Сильверлайтовские прилоги приходиться портировать практически исключительно переименованиями.
Открою секрет — "только работает пошустрей" — это самое главное. А на АПИ, нэйспейсы и остальное всем пофиг, кроме программистов.
Как много веселых ребят, и все делают велосипед...
Здравствуйте, Aлeкceй, Вы писали:
A>Ага, работают, но лучше бы не работали, потому что гтк-приложения выглядят вырвиглазно в кедах, пока не допилишь.
Один раз запусти preferences из обоих оболочек и поставь одинаковую тему. Я для кед ставлю GTK+ тему, и всё становится неотличимо. Шрифты тоже одинаковые для всего — как в виндах.
V>>Сравни с тем, что в Win8 необходимо переключать режимы отображения из полноэкранного Metro в оконное. Вот это уже ломающее изменение. Какой бы из шеллов по ссылке ты не взял — они в пролете на Метро.
A>А почему мне не надо переключать?
Надо. Но это образец ломающего изменения, которых в линуксе нет. Т.е. пример насчет Unity был нерелевантен.
Здравствуйте, vdimas, Вы писали:
V>Один раз запусти preferences из обоих оболочек и поставь одинаковую тему. Я для кед ставлю GTK+ тему, и всё становится неотличимо. Шрифты тоже одинаковые для всего — как в виндах.
Хз, не пробовал. Обычно ставил QtCurve, но там не все гладко.
V>Надо.
Как вы можете утверждать, если не знаете что и как у меня работает?
V>Но это образец ломающего изменения, которых в линуксе нет. Т.е. пример насчет Unity был нерелевантен.
Как это нет?
Когда у меня в арче что-нибудь отваливалось чуть ли не после каждого обновления. Предугадаю ваши выпадки, что проблема во мне, но интернет полон такими же проблемами, она не придумана только что мной.
Да и гномом до сих пор пользоваться нельзя.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>ИМХО, НС тут имеет в виду, что пользователи купят устройство с SL чтобы пользоваться SL-приложениями. При таком раскладе — да, андроид остаётся за бортом. Правда, расклад слегка фантастический.
Зря вы тут зубоскалите. Я знаю как минимум две крупных конторы, которые обеспечили свой выездной саппорт смартами на WP только потому, что разработка автоматизации под WP им обошлась дёшево.
[]
V>В линухах тоже есть же стандарт на оконный менеджер, поэтому гномовские приложения работают внутри кед и обратно тоже и все они прекрасно работают внутри любой адекватной графической оболочки с адекватным оконным менеджером.
А, к примеру, KDevelop под Убунтой об этом знает или ему забыли рассказать?
Почетный кавалер ордена Совка.
Re[39]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Ergo, никакой фантастической подковёрной борьбы не было, поскольку начальники с подчинёнными не сражаются по определению.
Нет там прямого начальник-подчиненный, есть разный вес.
ГВ> А toxic environment по-видимому, создавали в основном те, кто образовывал это самое environment
Здравствуйте, alex_public, Вы писали:
_>Почему? Не помню каких-то существенных улучшение для C++ от MS года так наверное с 2003 до 2010...
Т.е. улучшение покрытия стандарта не считается? А что тогда ты вообще ждешь от VC++? Очередного C++/CX?
_> И к 2010-му там уже некопилось совершенно неприличное отставание даже от gcc...
Отставание в чем?
_>Так если внутренняя политика MS будет соответствовать их же официальной, то будет всё поровну.
Что все? Вот студию, ее как, тоже надо распилить на части для псевдоконкуренции? Или надо вообще несколько студий выпустить? Для дотнета на дотнете, для С++ на С++, для HTML+JS на HTML+JS? Ну что за ерунда? Конкуренция внутри корпорации приведет только к дикому перерасходу ресурсов на разработку. В МС, конечно же, этого нет. Там есть генеральная линия партии, и все выстраивается вокруг нее.
_>Т.е. не совсем верно говорить что эти силы оторвали от .net разработки
Это не предмет для обсуждения, это факт. На поддержку WinRT ушла масса ресурсов. Причем, что обидно, впустую — компиляторы и языковые пакеты для C#/VB идут прямиком в корзину, вместе со всем правленным под WinRT кодом, в следующей студии будет совсем другой продукт.
_>А сильверлайт... Это же по сути подобие флеша
Нет.
НС>>Ага, и поэтому подавляющее большинство софта в маркете — на дотнете. _>Ну так значит у .net пока ещё всё отлично...
Видишь ли, мне, как разработчику, совершенно плевать на "равные права". Мне важно развитие и направление этого развития. Если МС начнет распылять усилия по всем направлениям — это окончится очень печально.
Здравствуйте, Ikemefula, Вы писали:
I>Ну вот, очередной заговор в твоем исполнении. Я видел кучу жалоб на эппловскую продукцию, но почему не принято говорить только про твою проблему
Здравствуйте, vdimas, Вы писали:
V>Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>>Ну вот навскидку, с чем столкнулся в последнее время:
ЕА>>1) Нет события OnTextInput — чего ввели с клавиатуры узнать нельзя. Глубоко не копал, но судя по тому что пишут, совсем нельзя. Никакой свой текстовый процессор не напишешь, включая элементарный ввод по маске итд.
V>Раз оно доступно для АппСтора, то должно быть доступно для P-invoke.
Но вот тут х.з., сам не разбирался еще в этом вопросе, только в форумах видел жалобы, что в WinRt все нужные функции не заявлены и таки проблемы с АппСтором есть.
Но то что из коробки нет такого события не позволяет мне считать это современной библиотекой. Я последний раз такой фигней с отслеживанием кнопочек страдал, когда на ассемблере прерывания клавиатуры обрабатывал.
ЕА>>2) Нельзя отрисовать никакие объекты UI в битмап. Совсем нельзя. Нам пришлось повторить все, что отображается в UI на DirectX, только ради того, чтобы png-ку сохранить
V>Потому что контролы отделены от композиции.
V>А кто тебе мешает пробежаться по графу композиции (там все открыто) и повторить на произвольной поверхности? V>http://geoffwebbercross.blogspot.co.uk/2012/09/exporting-image-from-directx-2d-image_15.html
Ну собственно так и сделали. Для бешенной собаки сто верст не крюк.
Но только не надо мне рассказывать, что библиотека, которая собственные графические объекты не может в картинку записать, это вообще круто.
V>Или кто тебе мешает получить низлежащую DX-поверхность и "слить" с нее данные?
Ну во-первых — официальная позиция микрософт, что так делать нельзя и в стор с этим не пропустят
Во вторых мне нужно разрешение больше, чем на экране.
ЕА>>3) Биндинг — то что мне больше всего нравилось во всех XAML реализациях, кастрирован по самое нехочу
V>Конкретней.
Например:
Не устанавливается UpdateSourceTrigger, когда применять биндинг (для текст бокса только на потерю фокуса работает)
Нет GetBindingExpression — соответсвенно насильно применить биндинг через UpdateSource тоже нельзя (Из-за этого для текст бокса приходится применять костыль с отдельным Attached свойством, чтобы нормально работало )
Не задается формат строки, все время приходится конвертеры цеплять
Нет Relative Source = Ancestor
Нет мультибиндингов
Все что связано с валидацией не реализовано
Сейчас ты мне расскажешь, что без всего этого можно спокойно жить
ЕА>>4) Нету драг-н-дропа между приложениями
V>По-идее, в Win8 нету перекрывающихся окошек, поэтому спорно. Безопасность, опять же.
Есть snapped окошки. С безопасностью до меня не доходит, чего не так — буфер обмена же можно использовать.
ЕА>>5) Примитивнейший форматированный текст, можно сказать нет его. В сочетании с пунктом 1, так вообще весело.
V>Ниче не понял... WebView-компонент есть? Или GUI-приложение можно сделать как HTML-приложение, которое вызывает ваши компоненты для основной функциональности.
WebView это такая чужеродная хрень, без доступа к DOM модели, по верх которой ничего нарисовать нельзя, внутрь вставить нельзя итд. А свой форматированный текст примитивный до ужаса.
ЕА>>6) Нет элементарной заливки повторяющимся растровым изображением
V>http://www.blakepell.com/Blog/?p=564
Обложить весь экран одинаковыми картинками это тоже самое, что заливка
ЕА>>7) ScrollViewer — который шустрый, с правильным поведением и плавной анимацией, поглощает практически все события манипуляции. Если хочется иметь интерактивный контент со скроллированием, приходится писать свой контрол, который таким же отзывчивым и плавным никак не выходит
V>Без ревью самописной приблуды ничего посоветовать не смогу...
ладно, тут спорить не буду, сильно много деталей, специфичных для приложения.
Здравствуйте, Aлeкceй, Вы писали:
V>>Но это образец ломающего изменения, которых в линуксе нет. Т.е. пример насчет Unity был нерелевантен. A>Как это нет? A>Когда у меня в арче что-нибудь отваливалось чуть ли не после каждого обновления.
Это баги, а не принципиально ломающие изменения.
A>Предугадаю ваши выпадки, что проблема во мне, но интернет полон такими же проблемами, она не придумана только что мной.
Не предугадал. Увы, в линухах многое делается бесплатно или условно бесплатно, поэтому возможно всякое.
Здравствуйте, Patalog, Вы писали:
V>>В линухах тоже есть же стандарт на оконный менеджер, поэтому гномовские приложения работают внутри кед и обратно тоже и все они прекрасно работают внутри любой адекватной графической оболочки с адекватным оконным менеджером.
P>А, к примеру, KDevelop под Убунтой об этом знает или ему забыли рассказать?
Что он должен знать? Прекрасно работает из под гнома.
Здравствуйте, koandrew, Вы писали:
ГВ>>ИМХО, НС тут имеет в виду, что пользователи купят устройство с SL чтобы пользоваться SL-приложениями. При таком раскладе — да, андроид остаётся за бортом. Правда, расклад слегка фантастический.
K>Зря вы тут зубоскалите. Я знаю как минимум две крупных конторы, которые обеспечили свой выездной саппорт смартами на WP только потому, что разработка автоматизации под WP им обошлась дёшево.
Я же не сказал, что он вообще фантастический. Охотно верю в твои две конторы, даже в три или в четыре. Даже в пять.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, vdimas, Вы писали:
A>>Когда у меня в арче что-нибудь отваливалось чуть ли не после каждого обновления. V>Это баги, а не принципиально ломающие изменения.
Это баги при обновлении, т.е. они ломают совместимость чего-то с чем-то.
V>Не предугадал. Увы, в линухах многое делается бесплатно или условно бесплатно, поэтому возможно всякое.
В коммерческом софте тоже самое. Тем более линукс пишется не энтузиастами, а программистами, сидящими на з/п в корпорации.
V>Я пользуюсь не гномом/kde, а приложениями.
Здравствуйте, vdimas, Вы писали:
V>Сказал человек, прямо скажем, не потрудившийся ничего проверить лично до сих пор. Несколько лет назад он вообще был пойман на том, что плохо представлял происходящее в процессе рендеринга в WPF. Ну и когда-то под своим основным ником он был одним из самых заметных представителей/защитников дотнета на этом сайте (последние годы попустился малость), так что случай не так чтобы беспристрастный.
Во-первых, вы меня с кем-то путаете, ник у меня ровно один — этот. Во-вторых, зачем так откровенно хамить? Типа если собеседник/автор статьи дурак — то ты 100% умнее?
V>OK, как, по-твоему, рисуются эллипсы в OpenGL? Предположи для самопроверки, никуда не заглядывая...
Примерно то же самое, только всей толпой сразу.
V>И далее есть еще одна приведенная им картинка с линиями по контуру. Т.е. CPU выдаёт в GPU массив точек, но кол-во этих точек (42 точки на рисунке) и сам характер вычислений более чем скромный, в сравнении со случаем сглаженного рисования эллипса полностью на CPU.
Проблема не в размере массива точек, проблема в скармливании GPU всей сцены по одному элементу за раз.
V>В чем он прав — что каждая сцена рисуется с 0-ля.
И в этом тоже.
V>Но рисование каждой сцены с 0-ля — это вынужденная мера, т.к. для реализации инкрементальных изменений необходимо было связывать дотнетные объекты с объектами DirectX, то бишь для схемы дух потоков потребовался бы двусторонний обмен данными
Вообще-то в WPF все графические ресурсы — freezable. Так что мимо
V>Это происходит только при изменении сцены, т.е. автор врет или сам не знает.
Или рассматривал только сценарии, когда рендер активно задействован — при анимации/ресайзе формы и т.п. Кто его знает?)
V>И да, когда говорят о тормозах в WPF, то речь не о 60 кадрах в секунду, а об видимых задержках в сотню и более ms
Чтобы так забить рендер — это сильно постараться надо. Делитесь, как добились? Что говорит perforator?
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Так вот как раз Синофский-то и обеспечивал то самое развитие и что гораздо важнее — направление развития. Не ты ли сам говорил ровно год назад
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>Я — не противоречу. Я нигде про роль дотнета вообще в этом топике утверждений не делал.
Ну хорошо, это я поспешно. Но как бы то ни было, развитие выглядит согласованным, с какой стороны ни посмотри. Даже выкидывание WPF и SL можно объяснить тем, что им найдена замена и не где-нибудь, а аж на уровне базовых API. Не хрен собачий, заметь. Откуда тогда разговоры о распылении усилий? Или это из-за того, что теперь кто-то придумал новый велосипед, которым срочно будут заменять WinRT?
И — да, я так понял, что высказывание о конкуренции внутри MS у тебя возражений не вызвало?
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Ночной Смотрящий, Вы писали:
V>>>>Была бы возможность сделать быстрый WPF, за 7 лет был бы сделан. НС>>>Докажи. V>>Это надо понимать так, что ты бы дал еще 7 лет???
НС>Это надо понимать, что твои заявления, как обычно, высосаны из пальца.
Здравствуйте, IT, Вы писали:
IT>Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>>Я тут подумал, а какой смысл держаться за технологию, которую надо рихтовать под каждый новый браузер? Это ж ахиллесова пята, а не технология, разве нет? В противовес SL тот же JS поддерживают более или менее все, вне зависимости от их лояльности курсу MS.
IT>Кто тебе сказал, что JS не надо допиливать под каждый новый браузер? Ты в курсе сколько кода для совместимости написано в том же jQuery. А SL работает везде ожидаемо одинаково.
То есть нигде не работает? А то я уже задолбался... чуть что — "Ля-ля тополя, нужен сервелат." Его че, как открываешь страничку где используется SL нужно каждый раз устанавливать?
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, michae1, Вы писали:
M>>(В использоваии MTA модели не больше сложности, чем в любой многопоточной программе.) I>И часто у тебя встречается маршалинг в любых многопоточных программах ?
Ну попробуй написать потокобезопасный локальный сервер (без COM), который будет данные, скажем, через pipe гонять и обмениваться управляющими командами с клиентами, вот и посмотрим насколько это будет "легче" сделать без COM.
I>Если бы работало. А так большая часть глюков в нынешнем софте это кривые комовские компоненты...
Глюки есть, с этим я и не спорю, но чтобы быть честными, нужно добавить, что и сложность решаемых задач досточно высокая, ну и как бы ошибки есть везде вопрос в том наскольок их легко\слодно локализовать.
M>>Черт, а в MS об этом не знают видимо там сборище суициидальных маньяков
I>Знают. Дотнет появился как из за того, что ком зашел в тупик.
Я бы так не сказал, .Net — это совершенно другое направление, которое имеет много точек сопроикосновения с COM. Ну и к тому же .Net не покрывает всех возможностей COM технологии.
M>>>(В использоваии MTA модели не больше сложности, чем в любой многопоточной программе.) I>>И часто у тебя встречается маршалинг в любых многопоточных программах ?
M>Ну попробуй написать потокобезопасный локальный сервер (без COM), который будет данные, скажем, через pipe гонять и обмениваться управляющими командами с клиентами, вот и посмотрим насколько это будет "легче" сделать без COM.
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, michae1, Вы писали:
I>А ты я вижу специалист. Олевью врет потому что кривая инфа в бинарниках. Реестр кривой по этой же причине. Вопрос = откуда берутся кривые бинарники ? Ты вообще в курсе про idl ?
Смешно, улыбнул. Можешь привести пример при каких условиях OleView соврет, очень мне интересно поглядеть.
M>>Возврат кода ошибки ничем не хуже бросания ексепшена — это две равноправных идеологии.
I>Чушь. Код ошибки надо обрабатывать самому и всегда, в противном случае ошибки будут глотаться, что вобщем то норма для кома.
Что чушь? Что существует две идеологии информировании об ошибке? COM-объект возвращает HRESULT а уже как с ним работать — на твое усмотрение, хочешь ставь проверки, хочешь кидай ексепшн (_com_ptr позволяет это автоматизировать)
>>Вообще, для сведения, _com_ptr_t обертка генерирует _com_error эксепшн но ты можешь юзать CComPtr и работать с кодами ошибок. I>Ты в курсе, что это костыль и он не покрывает всех сценариев ?
Нет, я не в курсе что это костыль прекросно работает. Напиши свой ну и ради интереса что ж он не покрывает?
I>Да можно делать, я ж не спорю, я тоже делал. Порок не "высоковат" а "слишком высокий". Чем ExtJS не угодил ? В ём вроде все предельно просто и рич UI клепается на раз.
Как у ExtJS с биндингом листа к списку из, хотя бы, тысячи айтемов? Все еще те же дикие тормоза?
Здравствуйте, Евгений Акиньшин, Вы писали:
ЕА>Ну вроде логично все — событие полного сброса для этого и сделано — сообщает о неких глобальных изменениях, при которых проще в интерфейсе все перестроить, чем искать что изменилось. Что не устраивает-то?
Странно, кстати, что выбрано именно это. К ObservableCollection есть гораздо более серьезная претензия — отсутствие возможности частичного изменения элементов и VirtualMode. Приходится клепать свои костыли вокруг для перфоманса.
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, michae1, Вы писали:
M>>>>(В использоваии MTA модели не больше сложности, чем в любой многопоточной программе.) I>>>И часто у тебя встречается маршалинг в любых многопоточных программах ?
M>>Ну попробуй написать потокобезопасный локальный сервер (без COM), который будет данные, скажем, через pipe гонять и обмениваться управляющими командами с клиентами, вот и посмотрим насколько это будет "легче" сделать без COM.
I>Есть классная вещь для этого, WCF называется. Легко и просто.
Здравствуйте, IT, Вы писали:
IT>Если SL работает, то он работает везде одинаково. А работает он как минимум везде, где мне когда-либо было нужно.
На iPad'е топ-менеджмента?
Здравствуйте, IT, Вы писали:
D>>Родной мой, а ты где здесь тупой троллинг увидел, я уже закалупался, когда захожу на сайт не помню точно как называется, но вроде techday нау-мынау... и постоянно мне заявляет, что мне надо установить сервелат... IT>Ну так установи один раз? Тот же флешплеер, наверное, каждый месяц по пять раз обновляешь, а один раз сильверлайт установить в лом. Видимо тогда не будет повода здесь потролить.
А у меня на Mac OS он ну ваааще не работает.
Здравствуйте, Cyberax, Вы писали:
IT>>Если SL работает, то он работает везде одинаково. А работает он как минимум везде, где мне когда-либо было нужно. C>На iPad'е топ-менеджмента?
Да, да. Топ-менеджмент просто изнывает от необходимости высокоинтеррактивных приложений. Так ему и хочется по клавишам постучать и данных повводить. Твой топ-менеджмент заставить тебя сделать одну кнопку — "сделать зашибись", по нажатию на которой можно нагенерить ему хучу тупого html-я, хоть вагон.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Ночной Смотрящий, Вы писали:
C>>Вот он и не работает, на retina-display. НС>Багрепорт уже отправил?
Это известная проблема, не у одного меня.
Ну и на Линуксе оно тоже нормально не работает вообще. Moonlight глючит чуть менее, чем в 100% случаев.
Здравствуйте, Patalog, Вы писали:
P>>>А, к примеру, KDevelop под Убунтой об этом знает или ему забыли рассказать? V>>Что он должен знать? Прекрасно работает из под гнома.
P>Ну ясное дело — "у меня все работает" (с), кто бы сомневался.
Попробуй запустить хотя бы раз KDE-десктоп, чтобы убедиться, что он работоспособен, а потом переключись обратно в гном.
Здравствуйте, Aлeкceй, Вы писали:
V>>Это баги, а не принципиально ломающие изменения. A>Это баги при обновлении, т.е. они ломают совместимость чего-то с чем-то.
Баги можно починить. А Win8 уже не починишь.
V>>Я пользуюсь не гномом/kde, а приложениями. A>А в вин8 вы пользуетесь не приложениями?
В Win8 они не дают пользоваться другими приложениями, пока сами активны.
Таки зря отказались от перекрывающихся окошек...
ИМХО, достаточно было подкрутить умолчательный лейаут окошеки всё, а не навязвать его отсутствие.
ЕА>Но вот тут х.з., сам не разбирался еще в этом вопросе, только в форумах видел жалобы, что в WinRt все нужные функции не заявлены и таки проблемы с АппСтором есть.
Блин, ты вообще понимаешь, что тебе пишут???
Раз оно доступно для АппСтора, то должно быть доступно для P-invoke.
Конкретно нейтивные GetKeyboardState и ToUnicode поддерживаются апсторным WinRT. А дотнетный p-invoke вообще сбоку и никакого эффекта в наличии функциональности не вносит — это же просто метаинформация, которая либо разресолвится дотнетным джитом, либо нет.
ЕА>Но то что из коробки нет такого события не позволяет мне считать это современной библиотекой.
Не свисти, из коробки есть CharacterReceived, т.е. ты можешь написать свой полноценный TextBox вообще с 0-ля.
ЕА>Я последний раз такой фигней с отслеживанием кнопочек страдал, когда на ассемблере прерывания клавиатуры обрабатывал.
Ясно... От IME настолько далеки, насколько это возможно. Ты здесь и сейчас изволишь путать скан-коды с высокоуровневой трансляцией.
Это же обязательная трансляция событий. Она тебе нужна будет в любом случае, если ты переводшь алфавит устройства ввода в алфавит команд. Вообрази, что ты в таче какие-то динамические зизаги захочешь использовать в кач-ве команд ввода? Попытайся мыслить шире этих несчастных кнопочек.
И сколько строчек алгоритм? 100? 200? )))
ЕА>Но только не надо мне рассказывать, что библиотека, которая собственные графические объекты не может в картинку записать, это вообще круто.
Ты сам себе противоречишь или не понимаешь происходящего.
Композиция — это и есть целевая картинка. А "проиграть" её может тебе захотеться не только на битмапе, но и на векторном формате (что более естественно) или на плоттере или в сеть отправить.
Эх... вот и выросло поколение, которое GDI не нюхало и не понимает графических абстракций...
Раньше "композиция" представляла из себя код — "черный ящик", который что-то рисует на GDI. И ты этому коду подсовывал разные абстракции для проигрывания одной и той же рисовательной последовательности. А сейчас у тебя полная свобода действий. Ты даже можешь в процессе любые эффекты и трансформации накладывать... Да вообще что угодно можно вытворять, это же не "чёрный ящик". Грех жаловаться-то...
ЕА>Обложить весь экран одинаковыми картинками это тоже самое, что заливка
Боюсь, для 3D это именно так.
Заметь, не одинаковыми картинками, а одной и той же картинкой. Ресурс-то один и тот же, ты обложишь весь экран командами рисования этого ресурса. Ферштейн? TiledBrush делала ровно то же самое.
MM>Мы раньше, блин, месаги слали, блин, сэндмессадж, блин, гетпарент, блин, никаких этих ваших РилайтивСоурс, блин. Программирование вырождается. Новый API спасение. Учите С++, блин. ТекстИнпут не могут, блин. Да раньше, блин, я его одной левой. СетВиндоуЛонг, понял!
Угу, все помнят твою реакцию на совет попробовать, наконец, DirectX, хотя бы дотнетный... бо забивать ваши гвозди этим жидким WPF г-ном у вас выходило не ахти... Ну ничо, побаловались и буде... никуда вы теперь не денетесь. Перестанете, наконец, гнать лажу и начнете делать вещи.
Здравствуйте, Геннадий Васильев, Вы писали:
ГВ>Зато он один и внедрён на нижний уровень всех вариаций Win8, а не добавлен в виде посторонних сервисов. Не знаю кому как, но такое воплощение вызывает больше доверия.
Да при чем тут доверие? Тут даже выбора не стоит никакого между WPF и WinRT, области их применения абсолютно не пересекаются.
НС>>Оттуда, что задача декларативного метроподобного UI уже была решена в рамках Windows Phone. При этом, что характерно, совместимость с SL там обеспечена максимальная, в отличие от WinRT.
ГВ>Вот именно — решена там, решена сям, а WinRT — единая платформа для всех
Не так. Задача была уже решена, но надо было изобрести велосипед.
ГВ>. По-моему, вполне рациональный подход, не?
Не.
ГВ> И если WinRT позиционируется в первую очередь для мобильных платформ, то тем более объяснимо: у Google свой стор+API, у Apple — свой, а MS чем хуже?
А у МС тоже уже был свой API. Правда, с фатальным недостатком.
НС>>Велосипед это WinRT. ГВ>Извини, но это чушь.
Извини, но это правда.
ГВ>Выходит, что несколько параллельных похожих друг на друга реализаций — это хорошо
Нет, это плохо.
ГВ>а одна общая замена для них — плохо?
С тобой невозможно разговаривать, ты "забываешь" все неудобные для твоих теорий факты. WinRT не является заменой ни для WPF, ни для SL (это объективно наблюдаемый факт, тут не о чем спорить), при этом полностью дублирует функционал WP API.
Здравствуйте, vdimas, Вы писали:
ЕА>>Но то что из коробки нет такого события не позволяет мне считать это современной библиотекой.
V>Не свисти, из коробки есть CharacterReceived, т.е. ты можешь написать свой полноценный TextBox вообще с 0-ля.
О точно, вру, они его таки добавили или починили. В превью версии винды были с этим какие-то проблемы.
Ладно, спасибо
ЕА>>Я последний раз такой фигней с отслеживанием кнопочек страдал, когда на ассемблере прерывания клавиатуры обрабатывал. V>Ясно... От IME настолько далеки, насколько это возможно. Ты здесь и сейчас изволишь путать скан-коды с высокоуровневой трансляцией.
Не надо понимать так буквально — я имел ввиду что давно не приходило в голову возиться с чем-то более низкоуровневом, чем уже готовый текст.
V>Это же обязательная трансляция событий. Она тебе нужна будет в любом случае, если ты переводишь алфавит устройства ввода в алфавит команд. Вообрази, что ты в таче какие-то динамические зизаги захочешь использовать в кач-ве команд ввода? Попытайся мыслить шире этих несчастных кнопочек.
И почему стандартную версию этого перевода не может делать для меня стандартная библиотека?
Или лучше спрошу так: "Почему я, тупой дотнетчик, должен радоваться исчезновению часто используемого евента, который во всех реализациях всегда был?"
Тач, кстати хороший пример — винрт предоставляет несколько уровней работы с тачем. Можно сырые нажатия отслеживать, а можно уже распознанные жесты. И приходится активно использовать и то, и другое.
Примерно так. Наверно чуток побольше — лениво смотреть.
Ну то есть, то что то, что всегда делалось в одну строчку, теперь требует 200 это улучшение?
ЕА>>Но только не надо мне рассказывать, что библиотека, которая собственные графические объекты не может в картинку записать, это вообще круто.
V>Композиция — это и есть целевая картинка. А "проиграть" её может тебе захотеться не только на битмапе, но и на векторном формате (что более естественно) или на плоттере или в сеть отправить.
Именно так, но только проигрывание на битмапе хотелось бы делать одной строчкой — это все-таки типовая операция.
ЕА>>Обложить весь экран одинаковыми картинками это тоже самое, что заливка
V>Боюсь, для 3D это именно так. V>Заметь, не одинаковыми картинками, а одной и той же картинкой. Ресурс-то один и тот же, ты обложишь весь экран командами рисования этого ресурса. Ферштейн? TiledBrush делала ровно то же самое.
По-моему это ты не понимаешь что такое абстракция — мне до лампочки как это внутри реализовано, и через что это выводиться. У меня есть абстракция — заливка, и есть места, где ее можно использовать.
Например, бекграунд кнопочки, или заливка текста, или контур произвольного Path. И использование этой заливки я могу задать в стиле, в биндинге итд.
Всем понятно, что можно весь экран ручками замостить одинаковыми элементами, но какое отношение приведенный тобой пример имеет к заливке ?
А так да, я могу DirectX-й сурфейс положить и вообще попиксельно рисовать все что мне захочеться.
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Зато он один и внедрён на нижний уровень всех вариаций Win8, а не добавлен в виде посторонних сервисов. Не знаю кому как, но такое воплощение вызывает больше доверия. НС>Да при чем тут доверие? Тут даже выбора не стоит никакого между WPF и WinRT, области их применения абсолютно не пересекаются.
Угу. API схожи (http://metroapps.wikispaces.com/Delta+with+WPF), а области применения — разные.
НС>>>Оттуда, что задача декларативного метроподобного UI уже была решена в рамках Windows Phone. При этом, что характерно, совместимость с SL там обеспечена максимальная, в отличие от WinRT. ГВ>>Вот именно — решена там, решена сям, а WinRT — единая платформа для всех НС>Не так. Задача была уже решена, но надо было изобрести велосипед.
Допустим. А что на счёт десктопов? Приложения Windows Phone на десктопах работали до появления Win8?
ГВ>>. По-моему, вполне рациональный подход, не? НС>Не.
Почему?
ГВ>> И если WinRT позиционируется в первую очередь для мобильных платформ, то тем более объяснимо: у Google свой стор+API, у Apple — свой, а MS чем хуже? НС>А у МС тоже уже был свой API. Правда, с фатальным недостатком.
Угу, на десктопах не работал.
НС>>>Велосипед это WinRT. ГВ>>Извини, но это чушь. НС>Извини, но это правда.
С твоей точки зрения — может быть и правда. С моей — тоже в каком-то смысле правда, но тем не менее — чушь.
ГВ>>Выходит, что несколько параллельных похожих друг на друга реализаций — это хорошо НС>Нет, это плохо.
Ну хоть тут консенсус.
ГВ>>а одна общая замена для них — плохо? НС>С тобой невозможно разговаривать, ты "забываешь" все неудобные для твоих теорий факты.
Ты занят примерно тем же: отрицаешь всё то, где Синофски не предстаёт истеричным школьником, дорвавшимся до власти. Так что, поверь, мы стоим друг друга в этом отношении.
НС>WinRT не является заменой ни для WPF, ни для SL (это объективно наблюдаемый факт, тут не о чем спорить), при этом полностью дублирует функционал WP API.
То есть это никакой не велосипед, а перенос подходов, отработанных в WP на другую реализацию. При этом одновременно получаем ещё единый API и повышение быстродействия. Проигрываем в том, что две развитые библиотеки пришлось объявить ошибкой.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!
Здравствуйте, Евгений Акиньшин, Вы писали:
V>>>>А кто тебе мешает пробежаться по графу композиции (там все открыто) и повторить на произвольной поверхности? V>>>>http://geoffwebbercross.blogspot.co.uk/2012/09/exporting-image-from-directx-2d-image_15.html ЕА>>>Ну собственно так и сделали. Для бешенной собаки сто верст не крюк. V>>И сколько строчек алгоритм? 100? 200? ))) ЕА>Примерно так. Наверно чуток побольше — лениво смотреть.
Значит вовсе не сто верст крюк, а максимум пол-дня однократной работы.
ЕА>Ну то есть, то что то, что всегда делалось в одну строчку, теперь требует 200 это улучшение?
Я думаю, что АПИ — это АПИ, а прикладные либы — это прикладные либы. Согласен, дотнетная обертка над WinRT пока не полноценная в том плане, что она пока немножко низкоуровневая, являясь фактически лишь зеркалом этого АПИ. Но ты сам себе показал, что базовые возможности фактически бесконечны, в сравнении с тем же WPF (где так просто DX-слои с XAML-слоями не перемешаешь) и тем паче в сравнении с SL. Это и есть та самая необходимая разработчикам свобода.
Ну а в прикладном плане тут возможны варианты:
— мильен третьесторонних тонюсеньких хелперов подо-все случаи жизни (ссылку на одну из таких либ уже давал);
А вот прямо компонент, тебе можно было не тратить пол-дня на написание своего элемента, а взять готовый WriteableBitmapEx.
— выпуск требуемого тебе под авторством MS в каком-нить неймспейсе WinRtExtensions в духе того, как она обычно это делает при очередном обновлении версии дотнета.
Прошло только пару месяцев, т.е. еще очень и очень рано делать выводы. На MS-сайте лежит официальный список нейтивного АПИ, еще не покрытого WinRT... Вот так — они прямо об этом и говорят, что этот АПИ доступен апсторовским приложениям. Так что, p-invoke в руки, как во времена первого дотнета и первых WinForms... Это не страшно, поверь.
V>>Композиция — это и есть целевая картинка. А "проиграть" её может тебе захотеться не только на битмапе, но и на векторном формате (что более естественно) или на плоттере или в сеть отправить. ЕА>Именно так, но только проигрывание на битмапе хотелось бы делать одной строчкой — это все-таки типовая операция.
Теперь это у тебя в одну строчку.
V>>Боюсь, для 3D это именно так. V>>Заметь, не одинаковыми картинками, а одной и той же картинкой. Ресурс-то один и тот же, ты обложишь весь экран командами рисования этого ресурса. Ферштейн? TiledBrush делала ровно то же самое.
ЕА>По-моему это ты не понимаешь что такое абстракция — мне до лампочки как это внутри реализовано, и через что это выводиться. У меня есть абстракция — заливка, и есть места, где ее можно использовать.
Правильно. Поэтому я тебе давал ссылку на полностью готовый WinRT XAML компонент, который можно использовать сразу из разметки.
ЕА>Например, бекграунд кнопочки, или заливка текста, или контур произвольного Path. И использование этой заливки я могу задать в стиле, в биндинге итд.
Дык, кто тебе мешает код по ссылке оформить в виде DependencyProperty соотв. контейнера?
Я уже молчу о том, что дух MetroUI — это всё-таки "плоская" заливка.
ЕА>Всем понятно, что можно весь экран ручками замостить одинаковыми элементами, но какое отношение приведенный тобой пример имеет к заливке ? ЕА>А так да, я могу DirectX-й сурфейс положить и вообще попиксельно рисовать все что мне захочеться.
Здравствуйте, vdimas, Вы писали:
V>Я думаю, что АПИ — это АПИ, а прикладные либы — это прикладные либы. Согласен, дотнетная обертка над WinRT пока не полноценная в том плане, что она пока немножко низкоуровневая, являясь фактически лишь зеркалом этого АПИ. Но ты сам себе показал, что базовые возможности фактически бесконечны, в сравнении с тем же WPF (где так просто DX-слои с XAML-слоями не перемешаешь) и тем паче в сравнении с SL. Это и есть та самая необходимая разработчикам свобода.
Ну тогда я думаю мы пришли к единому мнению. Твой первоначальный вопрос был — почему возмущаются дотнетчики, а мой ответ:
1) Лишили многих привычных плюшек
2) Работает только на метро стороне, поэтому почти всегда приходится держать вторую версию для сильверлайта\впф, где есть другие проблемы на которые теперь точно все забили
согласен?
V>А вот прямо компонент, тебе можно было не тратить пол-дня на написание своего элемента, а взять готовый WriteableBitmapEx.
Видел, он нам не подошел, в тот момент, когда этот вопрос решался. Кажись там функций для вывода текста не было, но точно не помню.
V>Прошло только пару месяцев, т.е. еще очень и очень рано делать выводы. На MS-сайте лежит официальный список нейтивного АПИ, еще не покрытого WinRT... Вот так — они прямо об этом и говорят, что этот АПИ доступен апсторовским приложениям. Так что, p-invoke в руки, как во времена первого дотнета и первых WinForms... Это не страшно, поверь.
Не так меня просто напугать, я и в кодах когда-то писал, и на асме, и на си. Просто сейчас мне больше не охота писать низкоуровневые велосипеды, а больше нравиться работать на высоком уровне абстракции.
ЕА>>Например, бекграунд кнопочки, или заливка текста, или контур произвольного Path. И использование этой заливки я могу задать в стиле, в биндинге итд.
V>Дык, кто тебе мешает код по ссылке оформить в виде DependencyProperty соотв. контейнера?
Не всегда так получиться, например выставляешь заливку кнопочке, а она по факту применяется внутри ее шаблона к разным подэлементам, да еще в зависимости от условий, да еще по разному в разных состояниях.
V>Именно так. Тебе доступна произвольная ф-сть. Та самая, о нехватке которой так долго говорили WPF-разработчики. Можно даже изращаться с GDI+: http://blogs.telerik.com/blogs/posts/12-05-09/gdi-in-a-windows-8-c-metro-application-experimenting-for-fun.aspx
В Windows Store с такими извращениями не пустют. И на ARM-е, скорее всего, не запустится.
Здравствуйте, michae1, Вы писали:
M>Смешно, улыбнул. Можешь привести пример при каких условиях OleView соврет, очень мне интересно поглядеть.
Конечно. Пишешь мусор в idl, компилишь, смотришь в OleView — тот же самый мусор. Ты в курсе, что в tlb часто далеко не все поддерживаемые интерфейсы прописываются ?
M>Что чушь? Что существует две идеологии информировании об ошибке? COM-объект возвращает HRESULT а уже как с ним работать — на твое усмотрение, хочешь ставь проверки, хочешь кидай ексепшн (_com_ptr позволяет это автоматизировать)
HRESULT это ручная дистетчеризация ошибок — крайне ненадежное решение.
>>>Вообще, для сведения, _com_ptr_t обертка генерирует _com_error эксепшн но ты можешь юзать CComPtr и работать с кодами ошибок. I>>Ты в курсе, что это костыль и он не покрывает всех сценариев ?
M>Нет, я не в курсе что это костыль прекросно работает. Напиши свой ну и ради интереса что ж он не покрывает?
Указатель можно передавать в другой компонент, а там про твой костыль никто не знает. А исключения будут работать в любом случае.
Здравствуйте, IT, Вы писали:
IT>Если SL работает, то он работает везде одинаково. А работает он как минимум везде, где мне когда-либо было нужно. И хватит уже тролить на эту тему. Только законченному фанату с промытыми мозгами не понятно, что как технология JS+CSS в сравнении с SL — это позапрошлый век.
Так нам что, обсуждать где тебе чего было нужно или особенности твоего восприятия ? Дела в микрософте показывают что SL уже отжил своё и его надо как минимум реанимировать.
Кстати, может, дело не в моём троллинге, а в нищебродской конторе где не бывает ни iMac, ни Macbook, ни планшетов, ни линукса, а взамен всего этого есть что нибудь навроде дресскода ?
Здравствуйте, Yoriсk, Вы писали:
C>>Это известная проблема, не у одного меня. Y>Хм, у наших кастомеров всё работало... Собсна, первое, что я сделал после "а может SL прикрутим" — это накидал контролов и послал маководам.
В режиме эмуляции обычного разрешения оно работает.
Y>Только на счёт ретины не в курсе.. У тебя ретина прямо в ОС вшита, может поэтому?
Т.е.? Retina display — это дисплей с двойным разрешением, и у плагинов для браузеров должна быть его поддержка. Иначе глючит. Flash и Java выпускали специальные обновления для retina.
C>>Ну и на Линуксе оно тоже нормально не работает вообще. Moonlight глючит чуть менее, чем в 100% случаев. Y>Линукс? Нет, не слышал.
Ну выучи такое слово: "Android".
Здравствуйте, Ночной Смотрящий, Вы писали:
НС>>>Багрепорт уже отправил? C>>Это известная проблема, не у одного меня. НС>Ну, бешлое гугление этого не подтвердило.
На форумах Netflix'а упоминания есть.
C>>Ну и на Линуксе оно тоже нормально не работает вообще. Moonlight глючит чуть менее, чем в 100% случаев. НС>Ну, это претензии с мегаопенсорс сообществу.
С чего бы? Flash для Линукса вполне есть от производителя. А вот SL нету.
Здравствуйте, Aлeкceй, Вы писали:
A>А вообще, если не хотите пользоваться вин8 приложениями, то пользуйтесь обычными? Это ли не свобода выбора?
На WinRT?
Здравствуйте, Cyberax, Вы писали:
A>>А вообще, если не хотите пользоваться вин8 приложениями, то пользуйтесь обычными? Это ли не свобода выбора? C>На WinRT?
А тебе зачем WinRT? Ты же Макбук купил. Или тебя MS заставила поставить WinRT?
Здравствуйте, MxMsk, Вы писали:
A>>>А вообще, если не хотите пользоваться вин8 приложениями, то пользуйтесь обычными? Это ли не свобода выбора? C>>На WinRT? MM>А тебе зачем WinRT? Ты же Макбук купил. Или тебя MS заставила поставить WinRT?
Это я про то, что свободы выбора на Винде всё меньше.
Здравствуйте, vdimas, Вы писали:
V>Ну да, последняя ссылка была сугубо извращения. Но принцип этого извращения был такой же — рисунок в битмап в памяти. Но фиг с ней. Мне в этом WriteableBitmapEx не нравится только одна реализованная стратегия копирования. Если склероз не изменяет, то в нейтивном DX можно лочить память по чтению, по записи и чтению-записи, т.е. можно обойтись в одну транзакцию: залочил — нарисовал — закоммитил. А здесь всё происходит в 2 транзакции: залочил — прочитал в int[], порисовал на массиве int[], залочил-закоммитил обратно. Пичаль...
V>Хотя и оно работает в 20 раз быстрее, чем XAML-код: http://dl.dropbox.com/u/2681028/CodeplexData/WriteableBitmapEx/BlitSample/TestPage.html
Кстате!
Наверно, стоит прикрутить Antigrain и реализовать всё-таки первую стратегию! Должно быть еще быстрее + куча готового функционала.
Здравствуйте, Ikemefula, Вы писали:
I>Так нам что, обсуждать где тебе чего было нужно или особенности твоего восприятия ? Дела в микрософте показывают что SL уже отжил своё и его надо как минимум реанимировать.
Не знаю кто тебе через какую замочную щель показывает дела в микрософте, но как минимум этот кто-то не в курсе что только что вышел PH8, где SL является флагманской технологией.
I>Кстати, может, дело не в моём троллинге, а в нищебродской конторе где не бывает ни iMac, ни Macbook, ни планшетов, ни линукса, а взамен всего этого есть что нибудь навроде дресскода ?
Понятно, меня лично пообсуждать не получается, давай пообсуждаем мою контору. Моя контора, кстати, одна из тех, которые устроили последний кризис на Вол Стрит четыре года назад. Дресскода там действительно есть. Не очень жёсткий, но есть. А вот маков и икбуков нет. У нас люди делом занимаются, а не на планшетках злобных птицей гоняют.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Cyberax, Вы писали:
IT>>Не знаю кто тебе через какую замочную щель показывает дела в микрософте, но как минимум этот кто-то не в курсе что только что вышел PH8, где SL является флагманской технологией. C>Тебе забыли сказать, что флагманской технологией нынче является HTML+JS.
Ты немного опоздал. Это мы уже обсудили. JS как технология сосёт как тпылесос. Если в MS и были какие-то на этот счёт высокие указания, то после уволнения сабжа всё станет на свои места.
C>Видимо, таки стоило закупить туда макбуки. Может тогда топ-менеджмент не смотрел бы на тонны HTML, а занимался полезным чем-то.
Ты плохо знаешь что такое топ-менеджмент. Ему вообще привычнее смотреть цифры и графики на бумаге, а не HTML.
C>А если серьёзно, то внутрикорпоративное дерьмо можно хоть на FoxPro писать. Всем пофиг.
Опять ошибаешься. Не всем.
Если нам не помогут, то мы тоже никого не пощадим.
Т.е. речь о том, что де-факто использовать имеющуюся юникодную дотнетную строку, вместо копии. А суть моего вопроса в том, мог бы дотнет сам делать аналогичное тому, что происходит при вызове WindowsCreateStringReference, но в "эконом-стиле", т.е. чтобы разметка необходимых полей совпадала с HSTRING_HEADER и ничего не надо было делать? У меня еще руки не дошли поставить студию на 8-ку и банально проверить числовое значение HSTRING после вызова. Просто подумалось, что это адрес заголовка.
Но даже если числовое значение HSTRING не будет являться адресом HSTRING_HEADER (или поля внутри этой структуры), то HSTRING_HEADER можно создавать прямо на стеке перед вызовом ф-ий WinRT. Т.е. это всё-равно дешевый маршаллинг выходит, надо только дотнетную строку запинить.
[]
P>>Ну ясное дело — "у меня все работает" (с), кто бы сомневался.
V>Попробуй запустить хотя бы раз KDE-десктоп, чтобы убедиться, что он работоспособен, а потом переключись обратно в гном.
А зачем? Напомню, что речь шла про >гномовские приложения работают внутри кед и обратно
Так вот, не работают. Иначе как объяснить что это УГ (Kdevelop) на одном и том же проекте как-то работает у кубунте, а на убунте падает?
Здравствуйте, IT, Вы писали:
IT>Не знаю кто тебе через какую замочную щель показывает дела в микрософте, но как минимум этот кто-то не в курсе что только что вышел PH8, где SL является флагманской технологией.
Я не знаю что за PH8, дай посмотреть ?
IT>Понятно, меня лично пообсуждать не получается, давай пообсуждаем мою контору. Моя контора, кстати, одна из тех, которые устроили последний кризис на Вол Стрит четыре года назад. Дресскода там действительно есть. Не очень жёсткий, но есть. А вот маков и икбуков нет. У нас люди делом занимаются, а не на планшетках злобных птицей гоняют.
Я работал на контору примерно такого же порядка мб даже побольше, и там были не только маки, а вообще все что угодно, специфика бизнеса.
В дотнете создание строки-константы — это всегда динамическое копирование литерала из памяти бинарного образа (или ресурсов) на управляемую кучу.
А если мы подаем как аргумент в вызовы WinRT такой литерал, то можно обойтись без динамического создания дотнетной строки на управляемой куче и её последующего маршаллинга.
Именно так всё работает в C++/UX — литералы обыгрываются компилятором через WindowsCreateStringReference.
void Foo()
{
String^ str = "Hello C++ world";
// WindowsCreateStringReference is called
Здравствуйте, Ikemefula, Вы писали:
I>Здравствуйте, michae1, Вы писали:
I>Конечно. Пишешь мусор в idl, компилишь, смотришь в OleView — тот же самый мусор. Ты в курсе, что в tlb часто далеко не все поддерживаемые интерфейсы прописываются ?
Ну знаешь это сродни: "а можно молотком по монитору стукнуть". Изначальный вброс был, что "OleView может врать", но реально что ты написал, то в OleView и покажется. К тому же очень маловероятно, что ты столкнешься с кривой инфой в оттестированом, релизном бинарнике.
Re[32]: Стивен Синофски: MS, давай, до свидания! (доп.)
Здравствуйте, Ночной Смотрящий, Вы писали:
ГВ>>Одна надежда на то, что WinRT нативный и ручонки дальновидящих дотнетчиков до него не дотянутся НС>Ну да, тебя только ручки дотнетчиков и заботят.
ГВ>>Ну и потом .Net уже в определённом смысле дискредитирован
НС>Ага. Главное — верить. Можешь мечтать дальше
Мммм...
Вот тебе инфа к медитации по C++/CX:
Переменная WinRT представляет собой пару указателей: указатель на таблицу виртуальных методов и указатель на внутренние данные объекта.
We also spent a lot of time exploring various approaches to how to hold onto a pointer to a WinRT class or interface.
Скажем так.. независимо от WinRT и немного задолго ДО, Гена & Co нехило протюнили кое-где критический-важный перформанс. Как техническая деталь — пришли к аналогичному способу представления полиморфных объектов. Правда, без поддержки компилятора, т.е. на уровне либы, но сам факт показателен.
В общем, это уже совсем другой уровень. Глядя на подобные вещи в WinRT/С++/СХ я вижу, что это делали люди, которые хоть что-то понимают в том, что делают. А ты приклеиваешь ярлык "велосипед", сорри, по ровно противоположной причине.
Здравствуйте, Ikemefula, Вы писали:
I>Я не знаю что за PH8, дай посмотреть ?
Очепятка. WP8.
I>Я работал на контору примерно такого же порядка мб даже побольше, и там были не только маки, а вообще все что угодно, специфика бизнеса.
Пока в этой хрени нет никакой необходимости.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, Aлeкceй, Вы писали:
C>>Тебе забыли сказать, что флагманской технологией нынче является HTML+JS. A>Наверно поэтому большинство софта на дотнете?
Большинство софта нынче — на C/C++. В Виндовом магазине HTML+JS сейчас — самая быстрорастущая секция.
Здравствуйте, IT, Вы писали:
C>>Тебе забыли сказать, что флагманской технологией нынче является HTML+JS. IT>Ты немного опоздал. Это мы уже обсудили. JS как технология сосёт как тпылесос. Если в MS и были какие-то на этот счёт высокие указания, то после уволнения сабжа всё станет на свои места.
Она сосёт, но зато работает везде, где надо. А не на игрушках от МС.
C>>Видимо, таки стоило закупить туда макбуки. Может тогда топ-менеджмент не смотрел бы на тонны HTML, а занимался полезным чем-то. IT>Ты плохо знаешь что такое топ-менеджмент. Ему вообще привычнее смотреть цифры и графики на бумаге, а не HTML.
Хорошо знаю (технически, я сам топ-менеджер в компании с теоретический капитализацией в 100млн. баксов). Это в распилочных институтах типа банков всем пофиг.
А в нормальных компаниях нынче топы обожают планшетки. Вполне их понимаю — действительно удобно.
C>>А если серьёзно, то внутрикорпоративное дерьмо можно хоть на FoxPro писать. Всем пофиг. IT>Опять ошибаешься. Не всем.
Всем, всем.
Здравствуйте, Patalog, Вы писали:
V>>Попробуй запустить хотя бы раз KDE-десктоп, чтобы убедиться, что он работоспособен, а потом переключись обратно в гном.
P>А зачем?
Чтобы установить все необходимые либы и проинициализировать необходимые конфиги, вестимо.
Сделай так: sudo apt-get install kubuntu-desktop
И затем однократно войди в рабочий стол KDE во время логина. Тут же выйди. Всех делов-то. Дольше ныть в форум.
P>Напомню, что речь шла про >>гномовские приложения работают внутри кед и обратно P>Так вот, не работают. Иначе как объяснить что это УГ (Kdevelop) на одном и том же проекте как-то работает у кубунте, а на убунте падает?
Здравствуйте, michae1, Вы писали:
I>>Конечно. Пишешь мусор в idl, компилишь, смотришь в OleView — тот же самый мусор. Ты в курсе, что в tlb часто далеко не все поддерживаемые интерфейсы прописываются ?
M>Ну знаешь это сродни: "а можно молотком по монитору стукнуть". Изначальный вброс был, что "OleView может врать", но реально что ты написал, то в OleView и покажется. К тому же очень маловероятно, что ты столкнешься с кривой инфой в оттестированом, релизном бинарнике.
В таком духе написано много компонентов и в свое время приходилось продираться через подобные грабли. Компонент реализуется десятка три интерфейсов а в коклассе указан только один основной. Опаньки !
Здравствуйте, Aлeкceй, Вы писали:
C>>А почему вы отвечаете вопросом на вопрос? A>Потому что мы обсуждали десктоп и причем тут винрт я не знаю.
А десктоп — это следующий шаг.
Здравствуйте, IT, Вы писали:
IT>Сосёт больше, чем работает. Тут всё очень просто. JS усугубляет криворукость программистов, SL выпрямляет насколько это возможно.
Считай весь веб живет на JS и до сих пор не собирался загибаться. А вот SL поделки от самого микрософта вызывают стойкое сомнение что это можно осилить среднему девелоперу.
Здравствуйте, Ikemefula, Вы писали:
IT>>Сосёт больше, чем работает. Тут всё очень просто. JS усугубляет криворукость программистов, SL выпрямляет насколько это возможно. I>Считай весь веб живет на JS и до сих пор не собирался загибаться. А вот SL поделки от самого микрософта вызывают стойкое сомнение что это можно осилить среднему девелоперу.
Вообще-то весь веб живёт на HTML. Но ты не отвлекайся от темы. Мы тут обсуждаем роль SL в корпоративных приложениях с требованиями к высокой интеррактивности, где JS является технологией позапрошлого века.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, IT, Вы писали:
IT>>>Сосёт больше, чем работает. Тут всё очень просто. JS усугубляет криворукость программистов, SL выпрямляет насколько это возможно. C>>ROTFL. Я ещё не видел ни одного нормального приложения на SL. C>>Вообще. IT>Ты же топ-менеджер. Тебе не положено
Ну вот я и думаю, прячут их от меня что ли?
Здравствуйте, IT, Вы писали:
IT>Вообще-то весь веб живёт на HTML. Но ты не отвлекайся от темы. Мы тут обсуждаем роль SL в корпоративных приложениях с требованиями к высокой интеррактивности, где JS является технологией позапрошлого века.
Здравствуйте, Ikemefula, Вы писали:
I>Собственно дальше мусолить про классный сервелат нет смысла ибо вендор не в состоянии использовать свои же технологии.
Причём тут вендор? Это он на твоём компьютере устроил зверинец разных версий всего? Я думал, что проблемы версионности — это проблемы линукса. Но похоже это проблемы не линукса, а "линуксоидов".
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, IT, Вы писали:
IT>Причём тут вендор? Это он на твоём компьютере устроил зверинец разных версий всего?
Вчера все работало. Сегодня снес дважды, запустил всякие прожки которые по идее вычищают его полностью, поставил заново, ровно одну версию. Всех изменений — вместо слово newer стало the same.
>Я думал, что проблемы версионности — это проблемы линукса. Но похоже это проблемы не линукса, а "линуксоидов".
Здравствуйте, IT, Вы писали:
I>>Собственно дальше мусолить про классный сервелат нет смысла ибо вендор не в состоянии использовать свои же технологии. IT>Причём тут вендор? Это он на твоём компьютере устроил зверинец разных версий всего? Я думал, что проблемы версионности — это проблемы линукса.
У Ikemefula — обычная Винда. У меня обычный Mac OS X: http://www.rsdn.ru/forum/flame.comp/4973163 — результат тот же.
Повторю: я ещё не видел НИ ОДНОГО работающего SL приложения. Вообще. Всегда или приложение глючит или SL не работает.
Здравствуйте, Ikemefula, Вы писали:
IT>>Причём тут вендор? Это он на твоём компьютере устроил зверинец разных версий всего? I>Вчера все работало. Сегодня снес дважды, запустил всякие прожки которые по идее вычищают его полностью...
Дальше можно не обсуждать.
Если нам не помогут, то мы тоже никого не пощадим.
Он уже нам рассказал про "всякие прожки", которые он запускает на своей обычной винде, чтобы зачистить неугодный SL.
C>Повторю: я ещё не видел НИ ОДНОГО работающего SL приложения. Вообще. Всегда или приложение глючит или SL не работает.
А я не видел ни одного неработающего SL приложения. Видимо мы живём в разных SL-измерениях.
Если нам не помогут, то мы тоже никого не пощадим.
Здравствуйте, IT, Вы писали:
C>>У Ikemefula — обычная Винда. У меня обычный Mac OS X: http://www.rsdn.ru/forum/flame.comp/4973163 — результат тот же. IT>Он уже нам рассказал про "всякие прожки", которые он запускает на своей обычной винде, чтобы зачистить неугодный SL.
Ну вот а что мне зачищать? Поставил прямо с сайта МС.
C>>Повторю: я ещё не видел НИ ОДНОГО работающего SL приложения. Вообще. Всегда или приложение глючит или SL не работает. IT>А я не видел ни одного неработающего SL приложения. Видимо мы живём в разных SL-измерениях.
Ну так ты смотрел внутри корпоративного инета, где вся головная боль — у админов.
Здравствуйте, Cyberax, Вы писали:
C>>>У Ikemefula — обычная Винда. У меня обычный Mac OS X: http://www.rsdn.ru/forum/flame.comp/4973163 — результат тот же. IT>>Он уже нам рассказал про "всякие прожки", которые он запускает на своей обычной винде, чтобы зачистить неугодный SL. C>Ну вот а что мне зачищать? Поставил прямо с сайта МС.
Посмотри ссылки от Sinix, там есть пару прожек которые специально для решения этой проблемы. Мне, правда, пока что не помогли.
Здравствуйте, IT, Вы писали:
IT>>>Причём тут вендор? Это он на твоём компьютере устроил зверинец разных версий всего? I>>Вчера все работало. Сегодня снес дважды, запустил всякие прожки которые по идее вычищают его полностью...
IT>Дальше можно не обсуждать.
Разумеется, у тебя то всё работает, а мне надо найти способ вычистить SL, что бы поставить его заново.
Здравствуйте, Cyberax, Вы писали:
C>Повторю: я ещё не видел НИ ОДНОГО работающего SL приложения. Вообще. Всегда или приложение глючит или SL не работает.
Чащего всего бывает так, что прилага работает, но девелоперы пока продирались через SL, забыли все нужные фичи и получается непойми что.
Здравствуйте, Ikemefula, Вы писали:
IT>>>Он уже нам рассказал про "всякие прожки", которые он запускает на своей обычной винде, чтобы зачистить неугодный SL. C>>Ну вот а что мне зачищать? Поставил прямо с сайта МС. I>Посмотри ссылки от Sinix, там есть пару прожек которые специально для решения этой проблемы. Мне, правда, пока что не помогли.
Не, оно принципиально отказывается в hi-dpi режиме работать. Причём даже на Винде (LOL).
Здравствуйте, Ikemefula, Вы писали:
I>Не надо передёргивать. Речь про разработку софта под винду а не разработку компонентов самой винды. Дотнетчики из микрософта обещали перформанс и сдулись. Потому .нет повторяет подвиг джавы — уходит во всякие серверные области. Но там тухло для него, ибо все крепко и прочно завязано на джаву, ибо это кроссплатформенная технология. У дотнета кроссплатформенности около нуля.
Здравствуйте, Ikemefula, Вы писали:
I>Дешевле при полном провале в перформансе например и во многих сценариях с памятью. С++ сдулся очень сильно, раньше на нем практически все писалось. I>Дотнетчики обещали классный перформанс, но сдулись. Обещали классный GC, но сдулись. Обещали быстрый запуск и сдулись. Вобщем много чего обещали и ничего из этого не вышло.
...но всё равно при этом на коне! В то время как бородатые С++ники (бородатые потому что нет времени побриться) ловят мемори лики в своих уже устаревших и ставших никому не нужными поделках...
Здравствуйте, koandrew, Вы писали:
I>>Дотнетчики обещали классный перформанс, но сдулись. Обещали классный GC, но сдулись. Обещали быстрый запуск и сдулись. Вобщем много чего обещали и ничего из этого не вышло.
K>...но всё равно при этом на коне! В то время как бородатые С++ники (бородатые потому что нет времени побриться) ловят мемори лики в своих уже устаревших и ставших никому не нужными поделках...
Да нет никакого коня. Например как дотнет пошел в иис, доля этого ииса стала катастрофически уменьшаться Никаких подвижек на серверном рынке не происходит, такое ощущение что Ораклы-ибм дали взятку микрософту.
Здравствуйте, koandrew, Вы писали:
I>>Дотнетчики обещали классный перформанс, но сдулись. Обещали классный GC, но сдулись. Обещали быстрый запуск и сдулись. Вобщем много чего обещали и ничего из этого не вышло.
K>...но всё равно при этом на коне! В то время как бородатые С++ники (бородатые потому что нет времени побриться) ловят мемори лики в своих уже устаревших и ставших никому не нужными поделках...
Бородатые сиплюсплюсники спокойно поедят, спокойно спустятся с горы... И спокойно запрягут коней, осёдланных и объезженных шарпистами.
Я знаю только две бесконечные вещи — Вселенную и человеческую глупость, и я не совсем уверен насчёт Вселенной. (c) А. Эйнштейн
P.S.: Винодельческие провинции — это есть рулез!