Kioshilol
@Kioshilol
Student

Что такое .net framework?

Я так понимаю под .net/ c# подразумевается кроссплатформенность приложений написанных на c#
  • Вопрос задан
  • 988 просмотров
Пригласить эксперта
Ответы на вопрос 3
Zoominger
@Zoominger
System Integrator
Я так понимаю под .net/ c# подразумевается кроссплатформенность приложений написанных на c#


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

Читайте: https://ru.wikipedia.org/wiki/.NET_Framework
Если в двух словах, то .NET Framework - платформа, а C# - один из языков, на котором можно под неё писать.
Ответ написан
@nrgian
Инструментарий, это прежде всего среда выполнения для программ, скомпилированных под .NET Framework. А также библиотеки и компилятор и т.п.
Это нужно для, например, программ на C#.

Как пример:

Программе на Python, обычно, нужен интерпретатор Python на том же компьютере, где будет выполняться программа написанная на Python. И библиотеки.
Программе на PHP, аналогично, нужен интерпретатор PHP. И библиотеки.
Программе на JavaScript нужен интерпретатор JavaScript, например, встроенный в браузеры.
Программе на Java/Kotlin нужна среда выполнения, называемая JVM, и библиотеки и компилятор
Программе на C/C++ нужен компилятор и библиотеки (или хотя бы заголовочные файлы), средой исполнения, в отличие от всех предыдущих является просто операционная система, дополнительной среды исполнения не нужно.
Программе на Go нужен компилятор и библиотеки, со средой исполнения тут аналогично C/C++

Отличительным моментом для .NET (тут полная аналогия с Java/Kotlin) - это то, что программа компилируется в бинарный промежуточный код и этот код запускается под управления CLR (для Java/Kotlin этот аналог называется JVM).

В отличие от этого, C/C++/Go/Pascal и т.п. - программа компилируется в бинарный код процессора и не требует никакой специальной среды исполнения, кроме операционной системы.

В отличие от этого, Python/PHP/Ruby/JavaScript и т.п. программа запускается через интерпретатор. Этап компиляции в бинарный код в некоторых из этих сред даже если и имеется, то проходит прозрачно для программиста, не выделяется в отдельный этап.
Ответ написан
Комментировать
DanielDemidko
@DanielDemidko
Программист
Простыми словами.
1. Код на языке программирования может компилироваться не только в нативный код ОС, но и в байт код исполняющей машины. Исполняющая машина же может быть доступна для разных ОС. В этом и есть ее смысл, чтобы один и тот же исполняемый файл мог запускаться на разных ОС.

2. Проект может состоять не только из ваших файлов, но и из заранее скомпилированных библиотек (очевидно).

3. Всеобъемлющий набор из исполняющей машины, компилятора вашего языка (и возможно других языков) в байт код этой исполняющей машины, и кучи библиотек (+ возможно некоторых других инструментов разработки) принято называть фреймворком.
Скажем еще проще: фреймворк это огромный набор библиотек и инструментов разработки.

В нашем конкретном случае язык это C#, а фреймворк это .NET.
Но есть и другие фреймворки, например Java (использует язык Java) или .NET Core (тоже использует C#).
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы