Здравствуйте, koenig, Вы писали:
N>>У меня ответ один и в этом я согласен с автором — код на C# получится банально медленнее. K>команда не из тех ли людей, что ie писали?
Не знаю, свечку не держал.
С другой стороны, Майкрософту никто не мешает свою студию под дотнет переписывать. Не в команде же проблема?
Здравствуйте, Nuzhny, Вы писали: N>С другой стороны, Майкрософту никто не мешает свою студию под дотнет переписывать. Не в команде же проблема?
Как минимум UI в студии уже давно на дотнете.
N>>>У меня ответ один и в этом я согласен с автором — код на C# получится банально медленнее. K>>команда не из тех ли людей, что ie писали?
N>Не знаю, свечку не держал. N>С другой стороны, Майкрософту никто не мешает свою студию под дотнет переписывать. Не в команде же проблема?
Здравствуйте, RBujfEOHIY, Вы писали:
RBE>Всем привет.
RBE>Почему браузер Microsoft Edge написан не под платформу .Net? RBE>Сатирический тон ON. RBE>Ведь это такая замечательная, эффективная, надёжная, продуманная, быстрая, удобная, стабильная, стандартизированная, кросс-платформенная, портируемая и всячески по-иному превосходная платформа, за которой — будущее RBE>программной индустрии. И все-все-все другие, бесконечные, многолетние, исступлённые, восторженные, фанатичные восхваливания от Microsoft и её глупых адептов-фанатиков. RBE>Сатирический тон OFF.
Низачёт, не защитано.
Весь пост — чистое, незамутнённое хейтерство, ничего более там нет.
Если это вдруг неочевидно, то достаточно просто заменить .net на java(ну и M$ и Edge соответственно). Измнилось примерно ничего.
Здравствуйте, alexsoff, Вы писали:
A>.net это инструмент, как и любой инструмент он имеет свою специализацию. Так вот, .net отлично подходит для корпоративных приложений.... Браузеры весьма специфичная ниша, в которой на данный момент управляемым средам делать нечего, поэтому .net, как инструмент, сюда не вхож. .Net — универсальнай инструмент. Не абсолютно универсальный, но всё же универсальный.
Что нужно в браузере, чего не может дать .Net (судя по восхваливаниям)?
Работа с сетью по HTTP(s) в ней есть. И работа с сертификатами, и шифрование, и цифровые подписи — всё есть.
GUI в ней есть (Windows Forms, WPF).
Рисование графики (и простой (текст, линии, примитивы, др. т.п.), и сложной (подключение DirectX, OpenGL)) в ней есть.
Работа с XML в ней есть.
Работа с файлами, каталогами, конфигами в ней есть.
Работа с настольными встраиваемыми БД в ней есть (на крайний случай без проблем можно SQLite подключить).
Инструменты для написания дижков рендеринга и JavaScript'а в ней есть (структуры данных, алгоритмы, события, др.).
Быстрота исполенния в ней есть. Даже JIT-компилятор работает быстро. Но вдобавок есть NGen, который скомпилирует сборку в native-код под конкретный компьютер/процессор пользователя; и всё это — из коробки, служба оптимизации в фоне работает ещё с версии .Net 2.0. ( это я из восхваливаний .Net'а взял).
Писать код легко, быстро, приятно, удобно. И получается он надёжным, безопасным.
Чего нет в .Net'е, что нужно для браузера?
Адепты Microsoft и .Net'а будут десятки опраданий придумывать, почему Edge был написан не под .Net. И каждое оправдание — несостоятельней предыдущего.
Но причина до банальности проста (как мне кажется): .Net — не так превосходна, как её малюют безумные маркетологии Microsoft. И вообще не превосходна, а просто хороша, или даже средненькая, посредственная. Она превосходна только в ро́сказнях и головах маркетологов и задуренных ими адептов-фанатиков. А в объективной реальности, в реальном деле она пасует. Вот и вся причина, на мой взгляд. Вот и не выбрана она была для Microsoft Edge. Microsoft Edge сорвал маски с лицемерных, лживых маркетологов, и обнажил истину (конечно же для тех, кто хочет её видеть, и имеет волю, разум и силу духа её видеть, а не для тех, кто хочет жить в мире розовых иллюзий, построенном маркетологами).
Здравствуйте, RBujfEOHIY, Вы писали:
RBE>.Net — универсальнай инструмент. Не абсолютно универсальный, но всё же универсальный.
Не бывает универсальных инструментов, иначе бы все на них перешли и не городили 100500 велосипедов.
RBE>Что нужно в браузере, чего не может дать .Net (судя по восхваливаниям)? RBE>Чего нет в .Net'е, что нужно для браузера?
Для браузера очень критична работа с очень маленькими аллокациями памяти, чего стоит в современных SPA разделение манипуляций между реальным и виртуальным DOM, интерпретатор JavaScript и т.д. К сожалению в .Net уж очень скудная база без перехода на неуправляемый код работы напрямую с памятью.
RBE>Адепты Microsoft и .Net'а будут десятки опраданий придумывать, почему Edge был написан не под .Net. И каждое оправдание — несостоятельней предыдущего.
RBE> лживых маркетологов, и обнажил истину (конечно же для тех, кто хочет её видеть, и имеет волю, разум и силу духа её видеть, а не для тех, кто хочет жить в мире розовых иллюзий, построенном маркетологами).
А Вы слушайте не речи маркетологов, а базируйтесь на своих ощущениях в использовании того или иного продукта/инструмента (не важно, .net, java, QT) и тогда все встанет на свои места.
Здравствуйте, hi_octane, Вы писали:
RBE>>Почему браузер Microsoft Edge написан не под платформу .Net? _>Ложная посылка, отсюда и ложное противоречие. Правильный вопрос был бы "Почему MS Edge не переписан под .NET".
Не могу согласиться. Унаследованного кода в MS Edge значительно меньше, чем нового (так говорят разработчики, я не придумал и не предположил). Они очень многое просто выкинули (что-то — безвозвратно, что-то заменили новым кодом). Поэтому MS Edge скорее написан, чем переписан.
Кроме того, сами восхваливатели .Net'а говорят, что лучше переписать программу на .Net, чем ковыряться в мерзких C++, C, COM, Win32API и прочих старых, неудобных, ненадёжных, сложных инструментах (как они обзывают до .Net'овские инструменты).
В .Net'е ведь и утечек памяти не будет, и незакрытых дескрипоторов уже не будет, и XAML будет, и WPF будет, и делегаты, и локальные функции, и LINQ, и паттерн-матчинг, и generics'ы будут, и много-много других удобностей и вкусностей будет.
Что ж они? Старыми инструментами говёный браузер написали. 1,5 десятилетия получали бесконечный поток критики. Решили положить этому конец. И за эти же самые инструменты взялись? И за старую кодовую базу взялись? Нестыковочка. На старом (говёном и критикуемом, окостеневшем и рудиментарном) коде старыми (крайне неудобными и плохими, как они сами твердят) инструментами они что, хотят получить новый хороший результат? Нестыковка на нестыковке. Нелогичность на нелогичности. И также это не соответствует их заявлениям. MS Edge — новый браузер, а не допиленный напильником MS IE.
RBE>Но причина до банальности проста (как мне кажется): .Net — не так превосходна, как её малюют безумные маркетологии Microsoft. И вообще не превосходна, а просто хороша, или даже средненькая, посредственная. Она превосходна только в ро́сказнях и головах маркетологов и задуренных ими адептов-фанатиков. А в объективной реальности, в реальном деле она пасует. Вот и вся причина, на мой взгляд. Вот и не выбрана она была для Microsoft Edge. Microsoft Edge сорвал маски с лицемерных, лживых маркетологов, и обнажил истину (конечно же для тех, кто хочет её видеть, и имеет волю, разум и силу духа её видеть, а не для тех, кто хочет жить в мире розовых иллюзий, построенном маркетологами).
RBE>P.S. Пафосно не хотел говорить, но так уж вышло.
Мое личное предположение. На этапе создания Edge .Net Core лежащий в основе .Net Native был убог, и не поддерживал кучу библиотек.
Сейчас же с выходом Net Core 2 и .Net Standard 2, вполне реально писать любое приложение под UWP с .Net Native
Плюс развивается Xamarin.Forms. Вполне возможно, что и напишут и на .Net.
и солнце б утром не вставало, когда бы не было меня
Здравствуйте, RBujfEOHIY, Вы писали:
RBE>Всем привет.
RBE>Почему браузер Microsoft Edge написан не под платформу .Net?
А при чем здесь .Net? Те же самые агрументы можно и для java применить. Суть в том, что managed языки из-за сборки мусора не годятся для рендергинга html страниц. Т.е. будут заметные тормоза.
Есть вещи, и рендеринг среди них, которые лучше делать на C/C++.
Можно пойти дальше и наехать на гугл -- почему хром не на го написан? го плохой язык или не годится для задачи?
Здравствуйте, Max Mustermann, Вы писали:
MM>Весь пост — чистое, незамутнённое хейтерство, ничего более там нет.
Против ненавистников есть замечательный приём. Написать отличный, превосходный, быстрый, удобный, поддерживающий стандарты, полезный, эффективный, экономный, портируемый, кросс-платформенный и всячески по-другому хороший браузер. Его начнут люди использовать — и ахнут в изумлении. И все ненавистники прикусят языки и замолчат.
И я в самом деле хочу понять, почему Edge не под .Net написан, а не излить здесь желчь на .Net, Microsoft, её маркетологов, их адептов. Мне до них вообще, по большому счёту, нет никакого дела. Я в самом деле придерживаюсь не очень высокого мнения о .Net, но другие-то люди придерживаются высокого. Вот и хочется узнать их обоснованные соображения, а не злопыхать здесь (я далёк от такого времяпровождения).
MM>Если это вдруг неочевидно, то достаточно просто заменить .net на java(ну и M$ и Edge соответственно). Измнилось примерно ничего.
Это не аргумент — "Не критикуйте .Net, не переставайте ею восхищаться и её восхвалять, не подвергайте сомнению её величие, превосходство и применимость для серьёзных, трудных, сложных, нагруженных применений, ведь Java и JVM ещё хуже".
Здравствуйте, RBujfEOHIY, Вы писали: RBE>Я в самом деле придерживаюсь не очень высокого мнения о .Net, но другие-то люди придерживаются высокого. Вот и хочется узнать их обоснованные соображения.
Обоснованные соображения состоят в том, что огромное количество коммерческого софта по всему миру написано на .NET
Этот софт решает задачи заказчиков (клиентов/пользователей и т.д.) и приносит прибыль. Больше знать не обязательно.
Все остальные соображения индивидуальны, причины выбора той или иной технологии субъективны и обусловены множеством факторов в каждом конкретном случае. Если команда А для продукта В выбрала технологию С, значит у нее были на то причины (обоснованные или не очень). В случае с браузером возможен ваш вариант — команда (или ее руководители) придерживались "не очень высокого мнения" (или знали только С++).
Здравствуйте, Sharov, Вы писали:
RBE>>Почему браузер Microsoft Edge написан не под платформу .Net?
S>А при чем здесь .Net? Те же самые агрументы можно и для java применить. Суть в том, что managed языки из-за сборки мусора не годятся для рендергинга html страниц. Т.е. будут заметные тормоза.
Я полагаю, настоящему .Net-хакеру (в хорошем смысле, а не криминальном) не составит труда обойти тормоза из-за сборки мусора (пулы памяти и т.п., другие приёмы).
RBE>Я полагаю, настоящему .Net-хакеру (в хорошем смысле, а не криминальном) не составит труда обойти тормоза из-за сборки мусора (пулы памяти и т.п., другие приёмы).
RBE>Что ж они? Старыми инструментами говёный браузер написали. 1,5 десятилетия получали бесконечный поток критики. Решили положить этому конец. И за эти же самые инструменты взялись? И за старую кодовую базу взялись? Нестыковочка. На старом (говёном и критикуемом, окостеневшем и рудиментарном) коде старыми (крайне неудобными и плохими, как они сами твердят) инструментами они что, хотят получить новый хороший результат? Нестыковка на нестыковке. Нелогичность на нелогичности.
Никакой нестыковочки. Найди тут подфорум "Управление проектами" и почитай темы вида "На чём писать XXX?" — если нет каких-то решающих ограничений, ответ будет всегда один — "На том что знает команда". Команда IE знает C/C++ и потроха старого IE. Всё что им разрешили сделать — это выкинуть тонны легаси, типа поддержки hta, active desktop, двух параллельных DOM-моделей, архитектуры аддонов и BHO, которая не подчинялась никаким политикам безопасности, и т.п.
RBE>И также это не соответствует их заявлениям. MS Edge — новый браузер, а не допиленный напильником MS IE.
С точки зрения маркетологов в MS — заявление абсолютно верное. При той скорости с которой из рук уходил рынок — брэнд IE всё, с ним больше ничего людям не продать. Примерно как с Vista.
А с точки зрения программистов MS — у них впервые появилась возможность этот копролит хоть немного переписать. Разумеется они радуются как дети и готовы переписать хоть всё, хоть 2 раза о чём на каждом углу и кричат. Второго такого шанса скорее всего уже вообще никогда не будет
RBE>Я полагаю, настоящему .Net-хакеру (в хорошем смысле, а не криминальном) не составит труда обойти тормоза из-за сборки мусора (пулы памяти и т.п., другие приёмы).
Не составит. Я раз вкорячил .NET в HFT с market making'ом Когда люди в ту команду приходят — у них от описания технологии всё лицо одним вопросительным знаком становится. А оно уже лет 7 работает и бабло приносит стабильным потоком. В этом году в ту же команду звали — надо новую архитектуру на тех же идеях под криптобиржи и блокчейн — видно всём всё платится нравится
Но в MS такое пропихнуть не получится. Потому что там новенькие проходят обязательную лоботомию. Инфа из первых рук здесь:
Вас надо бы в команду офиса для профилактики Вы бы там сгенерили лист в 100 айтемов, которые нужно срочно поменять, в первую же неделю. С гордостью принесли бы этот лист своему шефу, он бы объяснил, почему это неправильно. Потом вы бы отнесли этот лист шефу шефа — он бы объяснил на более высоком абстрактном уровне. Потом бы вы начали понимать, что является ключевым в решении проблем пользователя и партнеров, а что не очень.
Я был просто на этом пути, был такой же молодой и горячий и я точно знал, как правильно писать софт и зарабатывать деньги. После разговоров с senior, principal и partner чуваками из MS — у меня уже нет быстрых ответов на вопросы, как у вас сейчас. Потому что все очевидные идеи были обсуждены этими людьми сотню, если не тысячу раз. Они просто заканчивают предложение за вас и рассказывают ответ.
Тому разговору 7 лет давности, там я молодой, не видавший больших копроораций, как раз на твоей стороне выступаю
Здравствуйте, RBujfEOHIY, Вы писали:
RBE>Здравствуйте, vl690001x, Вы писали:
V>>Ответ на поверхности. Один из многих, но самый принципиально важный. В случае с браузерами, производительность имеет критическое значение, а .NET рассчитан больше на скорость написания кода, чем на его производительность. RBE>Н-е-е-т. Они и производительность .Net'а преподносят в качестве одной из ключевых фишек.
По сравнению с Питоном, да. Можно с Java еще пиписькомерством заниматься.
Но там же управляемая память. Какая нахрен производительность?
Очевидную ерунду пишешь.
Здравствуйте, Sharov, Вы писали:
S>А при чем здесь .Net? Те же самые агрументы можно и для java применить. Суть в том, что managed языки из-за сборки мусора не годятся для рендергинга html страниц. Т.е. будут заметные тормоза. S>Есть вещи, и рендеринг среди них, которые лучше делать на C/C++.
Любой у кого есть хоть немного здравого смысла, и так это понимает.
А топикстартеру не поможет уже ничего, наверное, если путает понятие "оптимальная платформа для решения большинства задач" и "на чем лучше всего писать то что должно не тормозить как можно у большего кол-ва людей, и от этого зависит — будет ли продукт конкурентоспособен или нет".
Здравствуйте, RBujfEOHIY, Вы писали:
НС>>...Можно ссылочку на подобные утверждения моложе 5 лет? RBE>Насчёт моложе 5 лет — нет под рукой.
Потому что так давно уже никто не говорит. Стратегия МС с приходом Сатии поменялась кардинальнейшим образом и в 2017 году тащить старый маргетинговый булшит не очень умно.
RBE>А более ранние — вот: Эндрю Троелсен
Троелсен не работал в МС, это его личное мнение.
RBE>Под рукой оказалась эта книга. Но точно такие книги есть и последних лет
Ну вот как найдешь такую книгу, да еще и от сотрудников МС, так и поговорим. А пока то ты с мельницами воюешь.
Vlad Dudau в МС работает?
N>The new engine began as a fork of Trident
Сам то свои ссылки читаешь?
N>Форкнули, старое удалили, а остальное переписали заново.
В цитате нет про "переписали заново" и она прямо противоречит предыдущему утверждению про "написали с нуля".
N>Но ты опять занимаешься резкой по цитатам
Нет, это вы тут выдает странное преломление услышанного в своих головах вместо фактов.
N> и уходом от темы, цепляясь за детали
Никакого ухода. В твоей же цитате прямо сказано что Edge написан на основе Trident, а не с нуля. А значит переписывание под .NET точно не канает.
N>. Скажи: почему Мозилла может себе позволить переписывать свой браузер на свой язык
Потому что когда коту делать нечего, он яйца чешет. У Mozilla Foundation нет задачи зарабатывания денег, зато есть задача развлекать девелоперов для души.
Здравствуйте, Nuzhny, Вы писали:
N>С другой стороны, Майкрософту никто не мешает свою студию под дотнет переписывать. Не в команде же проблема?
Мешает. Это сверхдорогая затея, потому что поверх СОМовского ядра навернуты мегатонны кода, в том числе стороннего. Ну и в современной VS процентов 95 уже, наверное, дотнетный код. Плюсового кода там совсем мало. Даже пакет языкового сервиса и проекта для С++ написан на дотнете (причем его переписали первым, задолго до Розлина).