Список разделов › Общие разделы › Оффтопик
VEG:Я кое-для какого проекта хотел бы использовать .NET 4.5,
VEG:umanai, расскажите, на чём основано ваше мнение, и что вы предлагаете взамен?
VEG:Или вы так говорите о каждой технологии, о которой ничего не знаете?
.NET 4.5 — 48 мегабайт для 32 и 64 разрядных версий в одном установочном пакете, включая и набор консольных инструментов для разработчика. Не могу сказать, что это много.Sumanai:Да весит уж очень много.
Сравним.Sumanai:Остальные флеймворки столько не весят.
Пока вы не используете какие-либо .NET-приложения — фреймворк не загружается. Как и другие фреймворки, он загружается только в процессы, которые без него работать не могут.Sumanai:Да и некоторые версии имеют привычку иногда тормозить загрузку ПК, выполняя свои внутренние оптимизации.
Обычно такие категоричные заявления о .NET оставляют те люди, которые ничего о нём не знают. Сам грешил таким на первых курсах в универе. Всеобщая ненависть к Microsoft только усугубляет ситуацию. Но потом поработал как с Java, так и с C# (.NET), разобрался как оно работает, какие инструменты для оптимизации предлагают эти языки/платформы. Теперь у меня совсем другое мнение.Sumanai:Почему это?
VEG:.NET 4.5 — 48 мегабайт для 32 и 64 разрядных версий в одном установочном пакете, включая и набор консольных инструментов для разработчика. Не могу сказать, что это много.
VEG:Пока вы не используете какие-либо .NET-приложения — фреймворк не загружается.
VEG:Всеобщая ненависть к Microsoft только усугубляет ситуацию.
Не вижу проблемы. .NET 4.0 тоже весит 48 мегабайт. То есть новая версия фреймворка совершенно не прибавила в весе. Как был установщик 48 мегабайт, так и остался.Sumanai:Это потому что он основывается на 4.
Что-то вы сочиняете. Если речь идёт об Ngen — пока его не запустит какой-нибудь установщик или обновлятор, он не начинает свою работу. А так — это же хорошо, что после установки приложения оно автоматически компилируется для вашей системы (один раз).Sumanai:Но именно загрузочная оптимизация работает сама по себе, при любом изменении пакета, например, при обновлении.
Mono?Sumanai:Тут скорее принципиальное отсутствие кроссплатформенности.
VEG:пока его не запустит какой-нибудь установщик или обновлятор, он не начинает свою работу.
VEG:(один раз).
VEG:Mono?
Sumanai:Да весит уж очень много. Остальные флеймворки столько не весят.
При обновлении самого .NET. Закрываются уязвимости, исправляются ошибки... Это совершенно нормально, ведь при обновлении других компонентов Windows система так же тратит на это какие-то ресурсы :)Sumanai:При обновлении ОС он запускается.
Ну вот, например. Сам по себе .NET как технология полностью кроссплатформенный. Просто он позволяет очень легко и прозрачно использовать нативные API. Очевидно, что если вы используете, например, функции для работы с реестром Windows, это не заработает в других ОС. Если же вы будете использовать только кроссплатформенные библиотеки — проблем не будет. Большинство разработчиков и не стремится писать кроссплатформенный код, разрабатывая что-то под .NET. Чаще всего не стоит такой задачи. Но инструмент здесь не при чём.Sumanai:И как, ваши утилиты работают, или просто первый нагугленный проект?
Mono — это реализация стандарта, причём со своим набором библиотек и возможностей. На сколько качественная реализация — вопрос другой. Тесно с Mono не работал, только по мелочи. Но проблем не было. С учётом того, что Xamarin на этом целую среду разработки написала — думаю, реализация хорошая.Sumanai:Теоретически и вайн на лине есть, но на практике далеко не всё работает, а что работает, то зачастую нестабильно.
VEG:Это совершенно нормально, ведь при обновлении других компонентов Windows система так же тратит на это какие-то ресурсы :)
VEG:Ух, что-то в оффтопик свёл тему. Отдельную тему о .NET / C# завести что-ли :)