NET Framework — зачем он нужен?

20.09.2022 / Время чтения: 3 мин.

Время на прочтение: 3 минут(ы) Разбираемся, что такое .Net и как он помогает упростить разработку ПО.

NET Framework — зачем он нужен?
Время на прочтение: 3 минут(ы)

Что такое .NET

.NET Framework («дот нет») — это своеобразный адаптер кода для Windows, помогающий подстроить написанную программу под язык процессора.

Разные программы создаются на разных языках программирования. Языки развиваются, их становится больше. Количество приложений, построенных на них, тоже постоянно увеличивается.

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

Так, пространство .NET — это единая платформа. Она собирает все инструменты в одном унифицированном пространстве. Это помогает поддерживать объектно-ориентированность, безопасность кода, обработку исключений.

Например, когда вы создаете программу на одном из языков программирования, подключается пространство имён. Именно им пользуется программист, чтобы правильно написать код, организовать его согласно логике языка.

Без .NET было бы необходимо постоянно подключать пространства имён, чтобы программы правильно идентифицировались системой, корректно работали. С .NET это не нужно, так как он позволяет применять сходные пространства имён, библиотеки, API. В числе языков, на которые рассчитан .NET Framework:

  • C#
  • Visual C++
  • Visual Basic
  • F#

Подобный подход к обработке кода позволяет соблюсти одно из основных правил программирования — Don’t Repeat Yourself.

Для чего нужен .Net

Универсальность

.NET многим полезна для программистов. Например, она даёт пользоваться четырьмя языками программирования в рамках одной платформы. Благодаря этому можно не ждать, когда выйдут новые библиотеки, они будут появляться с обновлениями .NET. А ещё можно писать код на разных языках одновременно, и эти элементы будут легко взаимодействовать друг с другом.

Дешевле для компании

.NET даже удешевляет работу, так как вместо трёх команд, занимающихся созданием программ под Windows, MacOS, Linux можно взять одну на .NET. Скорость написания кода не увеличится, но зато он будет работать сразу на всех платформах.

Удобство пользователей

По описанию .NET может сложиться впечатление, что она полезна только программистам, но на самом деле это не так. Пользователям она тоже облегчает пользование компьютером. Ведь если бы .NET не было, перед запуском программы на каждый компьютер надо бы было устанавливать среду исполнения под её язык. Так .NET помогает сэкономить место на жёстком диске: не надо устанавливать дополнительные компоненты. Да и установка программ теперь идет максимально быстро.

Причём без .NET библиотеки пришлось бы устанавливать на Windows постоянно, даже если язык один и тот же. Всё из-за того, что библиотеки часто обновляются, и из-за любых незначительных перемен пришлось бы устанавливать ещё одну, почти идентичную уже установленной, библиотеку. А она бы не заменяла уже существующую, устанавливаясь рядом.

Как работает .Net

Разобраться с принципом работы .NET Framework можно, разобравшись с ключевыми элементами платформы:

  • CLR — Common Language Runtime, то есть исполняющая среда. 
  • CLI — Common Language Infrastructure, или общеязыковая инфраструктура.
  • CIL — Common Intermediate Language, то есть промежуточный язык.

Новичкам тяжело понять разницу между этими компонентам из-за схожих названий. .NET, рассмотрим принцип её работы: 

  1. Сначала пользователь пишет код на одном или даже смеси языков программирования. 
  2. Во время компиляции с помощью CLI, .NET переведёт код на свой, промежуточный язык. Получится промежуточный байт-код CIL.
  3. После подключаются нужные библиотеки.
  4. При запуске программы, виртуальная машина .NET передаёт байт-код в часть CLR.
  5. Байт-код переводится на нужный язык.
  6. Программа выполняется.

Это происходит при запуске любой программы на Windows и других ОС, если установлен .NET Core.

Что такое .Net Core

.NET вышла в начале 2000-х, изначально работала исключительно с Windows. Так было до 2014 года, пока не вышла .NET Core, новая кроссплатформенная версия. Со временем ею планируют полностью заменить устаревшую, ведь она гораздо комфортнее, работает на Windows, Linux и MacOS. А последняя версия базового .NET Framework была выпущена в 2019 году.

С тех пор .NET Core называется просто .NET, начиная с версии 5.0. Главным отличием .NET Core от предыдущей версии является открытый исходный код. Хотя код .NET Framework тоже можно посмотреть, но не использовать, как открытый.

Чем Net отличается от виртуальной машины Java

.NET разрабатывался, в том числе, и как аналог уже существующей виртуальной машины Java, но более современный. Основным отличием здесь стала польза для пользователей ПК, так как .NET Core работает и с ними, запуская любые необходимые программы, причём не только на Windows.

Если говорить подробнее, виртуальная машина Java устроена сложнее, это буквально компьютер внутри компьютера, который глубоко работает с кодом. В сравнении с ней .NET больше похож на переводчика, помогающего пользователям улучшить свой опыт использования персонального компьютера. .NET позволил создавать больше полезных программ и свободно выпускать их без риска, что кто-то из пользователей не справится с установкой.

Потенциал карьеры .NET разработчика

Мы уже писали, что использование фреймворка помогает удешевить разработку. Для компаний это отличный способ оптимизировать затраты, поэтому знание .Net часто встречается в вакансиях C# разработчиков.

Вот пример вакансии на hh.ru:

Вакансия Net разработчика

Все чаще требуется работа именно с .Net Core: постепенно новая версия платформы вытесняет предшественника. В среднем, зарплата middle разработчика составлять 150-250 тысяч рублей: все зависит от вашего опыта и того, насколько вы подходите под задачи компании.

Войти в разработку на C# сложнее, чем на Java или Python. Как и любому разработчику, необходимо понимать работу алгоритмов, архитектуру сервисов. Разбираться с этим на C# будет сложнее. Поэтому часто советуют начать с изучения более «мейнстримных», после чего повышать сложность.

Подпишись на нашу рассылку и получай свежие полезные материалы каждую неделю

Какой-то текст ошибки
Какой-то текст ошибки

Нас читает 11 000 человек

Начните карьеру в разработке на Java

С нуля обучаем разработке на Java: от написания первого кода до готового проекта в портфолио. Вы научитесь работать с файлами и сетью, создавать приложения на Java и пользоваться Spring Framework. Карьерный Центр гарантирует трудоустройство.

Посмотреть