Начало работы с .net framework
Содержание:
- Features of the common language runtime
- Возможности среды CLR
- Архитектура веб-фреймворков
- When to choose .NET Framework
- To install language packs
- В этом разделе
- Модели выполнения.
- .NET Framework FAQ
- What is .NET Framework used for?
- Who uses .NET Framework?
- Why do I need .NET Framework?
- How does .NET Framework work?
- What are the main components/features of .NET Framework?
- What is the difference between .NET Core and .NET Framework?
- Can you have multiple .NET Frameworks installed?
- How much does .NET Framework cost?
- Which version of .NET Framework should I use?
- What is the support policy for .NET Framework?
- Типы веб-фреймворков
- Случаи использования .NET Core/5+
- Клиентский профиль .NET Framework 4
- Следующие шаги
- Как научиться пользоваться веб-фреймворками
Features of the common language runtime
The common language runtime manages memory, thread execution, code execution, code safety verification, compilation, and other system services. These features are intrinsic to the managed code that runs on the common language runtime.
Regarding security, managed components are awarded varying degrees of trust, depending on a number of factors that include their origin (such as the Internet, enterprise network, or local computer). This means that a managed component might or might not be able to perform file-access operations, registry-access operations, or other sensitive functions, even if it’s used in the same active app.
The runtime also enforces code robustness by implementing a strict type-and-code-verification infrastructure called the common type system (CTS). The CTS ensures that all managed code is self-describing. The various Microsoft and third-party language compilers generate managed code that conforms to the CTS. This means that managed code can consume other managed types and instances, while strictly enforcing type fidelity and type safety.
In addition, the managed environment of the runtime eliminates many common software issues. For example, the runtime automatically handles object layout and manages references to objects, releasing them when they are no longer being used. This automatic memory management resolves the two most common app errors, memory leaks and invalid memory references.
The runtime also accelerates developer productivity. For example, programmers write apps in their development language of choice yet take full advantage of the runtime, the class library, and components written in other languages by other developers. Any compiler vendor who chooses to target the runtime can do so. Language compilers that target the .NET Framework make the features of the .NET Framework available to existing code written in that language, greatly easing the migration process for existing apps.
While the runtime is designed for the software of the future, it also supports software of today and yesterday. Interoperability between managed and unmanaged code enables developers to continue to use necessary COM components and DLLs.
The runtime is designed to enhance performance. Although the common language runtime provides many standard runtime services, managed code is never interpreted. A feature called just-in-time (JIT) compiling enables all managed code to run in the native machine language of the system on which it’s executing. Meanwhile, the memory manager removes the possibilities of fragmented memory and increases memory locality-of-reference to further increase performance.
Finally, the runtime can be hosted by high-performance, server-side apps, such as Microsoft SQL Server and Internet Information Services (IIS). This infrastructure enables you to use managed code to write your business logic, while still enjoying the superior performance of the industry’s best enterprise servers that support runtime hosting.
Возможности среды CLR
Среда CLR управляет памятью, выполнением потоков, выполнением кода, проверкой безопасности кода, компиляцией и другими системными службами. Эти средства являются внутренними для управляемого кода, который выполняется в среде CLR.
По соображениям безопасности управляемым компонентам присваиваются разные степени доверия, зависящие от ряда факторов, в число которых входит их происхождение (например, Интернет, сеть предприятия или локальный компьютер). Это означает, что управляемый компонент может или не может выполнять операции доступа к файлам, операции доступа к реестру или другие важные функции, даже если он используется в одном и том же активном приложении.
Среда выполнения также обеспечивает надежность кода, реализуя инфраструктуру строгой типизации и проверки кода, которую называют системой общих типов (CTS). Система общих типов обеспечивает самоописание всего управляемого кода. Различные языковые компиляторы корпорации Microsoft и независимых изготовителей создают управляемый код, удовлетворяющий системе общих типов . Это означает, что управляемый код может принимать другие управляемые типы и экземпляры, при этом обеспечивая правильность типов и строгую типизацию.
Кроме того, управляемая среда выполнения исключает многие часто возникающие проблемы с программным обеспечением. Например, среда выполнения автоматически управляет размещением объектов и ссылками на объекты, освобождая их, когда они больше не используются. Автоматическое управление памятью исключает две наиболее часто возникающие ошибки приложений: утечки памяти и недействительные ссылки на память.
Среда выполнения также повышает продуктивность разработчиков. Например, программисты могут писать приложения на привычном языке разработки, при этом используя все преимущества среды выполнения, библиотеки классов и компонентов, написанных другими разработчиками на других языках. Это доступно любому производителю компиляторов, обращающихся к среде выполнения. Языковые компиляторы, предназначенные для платформы .NET Framework, делают средства .NET Framework доступными для существующего кода, написанного на соответствующих языках, существенно облегчая процесс переноса существующих приложений.
Хотя среда выполнения разрабатывалась для будущего программного обеспечения, она также поддерживает сегодняшнее и вчерашнее программное обеспечение. Взаимодействие управляемого и неуправляемого кодов позволяет разработчикам использовать необходимые компоненты COM и библиотеки DLL.
Среда выполнения разработана для повышения производительности. Хотя общеязыковая среда выполнения предоставляет многие стандартные службы времени выполнения, управляемый код никогда не интерпретируется. Средство компиляции по требованию (JIT) позволяет выполнять весь управляемый код на машинном языке компьютера, где он запускается. Между тем диспетчер памяти устраняет возможность фрагментации памяти и увеличивает объем адресуемой памяти для дополнительного повышения производительности.
Наконец, среда выполнения может размещаться в высокопроизводительных серверных приложениях, таких как Microsoft SQL Server и службы IIS (Internet Information Services). Такая инфраструктура позволяет использовать управляемый код для написания собственной логики программ, пользуясь при этом высочайшей производительностью лучших производственных серверов, которые поддерживают размещение среды выполнения.
Архитектура веб-фреймворков
Архитектура почти всех популярных веб-фреймворков основана на декомпозиции нескольких отдельных слоёв (приложения, модули и т.д.). Это означает, что вы можете расширять функциональность, исходя из своих потребностей, и использовать изменённую версию вместе с кодом фреймворка или добавлять сторонние приложения.
Существует множество open-source сообществ и коммерческих организаций, которые создают приложения или расширения для популярных фреймворков, например, Django REST Framework, ng-bootstrap и т.д.
MVC — Модель, Представление и Контроллер (Model-View-Controller) — три составляющих каждого веб-фреймворка.
Модель MVC используется во всех веб-фреймворках
- Модель содержит все данные и уровни бизнес-логики, её правила и функции.
- Представление отвечает за визуальное отображение данных.
- Контроллер преобразует входные данные в команды для Модели и Представления.
Они неотделимы друг от друга, поэтому важно как следует во всём разобраться, чтобы избежать ошибок во время работы приложения
When to choose .NET Framework
.NET Core/5+ offers significant benefits for new applications and application patterns. However, .NET Framework continues to be the natural choice for many existing scenarios, and as such, .NET Framework isn’t replaced by .NET Core/5+ for all server applications.
Current .NET Framework applications
In most cases, you don’t need to migrate your existing applications to .NET Core/5+. Instead, a recommended approach is to use .NET Core/5+ as you extend an existing application, such as writing a new web service in ASP.NET Core.
Third-party libraries or NuGet packages not available for .NET Core/5+
.NET Standard enables sharing code across all .NET implementations, including .NET Core/5+. With .NET Standard 2.0, a compatibility mode allows .NET Standard and .NET Core/5+ projects to reference .NET Framework libraries. For more information, see .
You need to use .NET Framework only in cases where the libraries or NuGet packages use technologies that aren’t available in .NET Standard or .NET Core/5+.
.NET Framework technologies not available for .NET Core/5+
Some .NET Framework technologies aren’t available in .NET Core/5+. The following list shows the most common technologies not found in .NET Core/5+:
-
ASP.NET Web Forms applications: ASP.NET Web Forms are only available in .NET Framework. ASP.NET Core cannot be used for ASP.NET Web Forms.
-
ASP.NET Web Pages applications: ASP.NET Web Pages aren’t included in ASP.NET Core.
-
WCF services implementation. Even when there’s a WCF client library to consume WCF services from .NET Core/5+, WCF server implementation is currently only available in .NET Framework.
-
Workflow-related services: Windows Workflow Foundation (WF), Workflow Services (WCF + WF in a single service), and WCF Data Services (formerly known as «ADO.NET Data Services») are only available in .NET Framework.
-
Language support: Visual Basic and F# are currently supported in .NET Core/5+, but not for all project types. For a list of supported project templates, see .
For more information, see .NET Framework technologies unavailable in .NET 5.
Platform doesn’t support .NET Core/5+
Some Microsoft or third-party platforms don’t support .NET Core/5+. Some Azure services provide an SDK not yet available for consumption on .NET Core/5+. In such cases, you can use the equivalent REST API instead of the client SDK.
To install language packs
Language packs are executable files that contain the localized resources (such as translated error messages and UI text) for supported languages. If you don’t install a language pack, .NET Framework error messages and other text are displayed in English. Note that the web installer automatically installs the language pack that matches your operating system, but you can download additional language packs to your computer. The offline installers don’t include any language packs.
Important
The language packs don’t contain the .NET Framework components that are required to run an app, so you must run the web or offline installer before you install a language pack. If you have already installed a language pack, uninstall it, install the .NET Framework, and then reinstall the language pack.
-
Open the language pack download page for the .NET Framework version you’ve installed:
- .NET Framework 4.8
- .NET Framework 4.7.2
- .NET Framework 4.7.1
- .NET Framework 4.7
- .NET Framework 4.6.2
- .NET Framework 4.6.1
- .NET Framework 4.6
- .NET Framework 4.5.2
- .NET Framework 4.5.1
- .NET Framework 4.5
-
In the language list, choose the language you want to download, and wait a few seconds for the page to reload in that language.
-
Choose Download.
The following table lists the supported languages.
Language | Culture |
---|---|
Arabic | ar |
Czech | cs |
Danish | da |
Dutch | nl |
Finnish | fi |
English (USA) | en-US |
French | fr |
German | de |
Greek | el |
Hebrew | he |
Hungarian | hu |
Italian | it |
Japanese | ja |
Korean | ko |
Norwegian | no |
Polish | pl |
Portuguese (Brazil) | pt-BR |
Portuguese (Portugal) | pt-PT |
Russian | ru |
Simplified Chinese | zh-CHS |
Spanish | es |
Swedish | sv |
Traditional Chinese | zh-CHT |
Turkish | tr |
В этом разделе
Данные и моделирование. Здесь приводится информация о способах доступа к данным с использованием ADO.NET, LINQ, служб данных WCF и XML.
Разработка клиентских приложений с использованием .NET Framework. Здесь поясняются способы создания приложений Windows с помощью Windows Presentation Foundation (WPF) и Windows Forms.
Разработка веб-приложений с помощью ASP.NET. Здесь приводятся ссылки на сведения об использовании ASP.NET для сборки веб-приложений корпоративного уровня с минимальным объемом кода.
Разработка сервисно ориентированных приложений с помощью WCF. Здесь приводится описание способов использования Windows Communication Foundation (WCF) для сборки безопасных и надежных сервисно ориентированных приложений.
Создание рабочих процессов с помощью Windows Workflow Foundation Здесь приводятся сведения о модели программирования и средствах Windows Workflow Foundation (WF), а также примеры.
Приложения служб Windows. Здесь поясняется, как можно использовать Visual Studio и .NET Framework для создания приложения, которое устанавливается в качестве службы, а также запускать его, останавливать и иными способами управлять его поведением.
Параллельная обработка, параллелизм и асинхронное программирование в .NET. Здесь приводятся сведения о шаблонах разработки с применением управляемых потоков, параллельного программирования и асинхронного программирования.
Сетевое программирование в .NET Framework. Здесь приводится описание многоуровневой, расширяемой и управляемой реализации служб Интернета, которую можно быстро и легко интегрировать в приложения.
Настройка приложений .NET Framework Здесь поясняется, как можно использовать файлы конфигурации для изменения параметров без необходимости повторной компиляции приложений .NET Framework.
Безопасность. Сведения о классах и службах .NET Framework, предназначенных для упрощения разработки безопасных приложений.
Отладка, трассировка и профилирование. Здесь приводится описание способов тестирования, оптимизации и профилирования приложений .NET Framework и среды приложения. Информация, содержащаяся в этом разделе, предназначена как для администраторов, так и для разработчиков.
Разработка для нескольких платформ. Здесь поясняется, как можно использовать платформу .NET Framework для создания сборок, которые могут совместно использоваться несколькими платформами и устройствами, такими как телефоны, настольные системы и интернет-устройства.
Развертывание. Здесь поясняется порядок упаковки и распространения приложения .NET Framework; сюда также включены руководства по развертыванию как для разработчиков, так и для администраторов.
Производительность. Здесь приводятся сведения о кэшировании, отложенной инициализации, надежности и событиях трассировки событий Windows.
Модели выполнения.
Приложения .NET запускают управляемый код в среде выполнения, известной как среда CLR.
CLR
.NET CLR — это кроссплатформенная среда выполнения, которая включает поддержку Windows, macOS и Linux. Среда CLR обрабатывает выделение памяти и управление ей. Среда CLR также является виртуальной машиной, которая не только выполняет приложения, но и создает, а также компилирует код с помощью JIT-компилятора.
Для получения дополнительной информации см. Common Language Runtime.
JIT-компилятор и промежуточный язык
Языки .NET более высокого уровня, например C#, компилируются до независимого от оборудования набора инструкций, который называется промежуточным языком (IL). При запуске приложений этот компилятор преобразует IL в машинный код, который понимает обработчик. JIT-компиляция происходит на том же компьютере, на котором будет выполняться код.
Так как JIT-компиляция происходит во время выполнения приложения, время компиляции является частью времени выполнения. Таким образом, JIT-компиляторы должны поддерживать баланс между временем оптимизации кода и экономии, к которой может привести результирующий код. Но JIT-компилятор знает фактическое оборудование и может освободить разработчиков от поставки различных реализаций для различных платформ.
JIT-компилятор .NET может выполнять многоуровневую компиляцию, что означает возможность перекомпиляции отдельных методов во время выполнения. Эта функция позволяет быстро компилировать, сохраняя при этом возможность создания высокоспециализированной версии кода для часто используемых методов.
Дополнительные сведения см. в статьях Управляемый процесс выполнения и .
Компилятор AOT
По умолчанию большинство рабочих нагрузок .NET являются JIT-компилятором, но .NET предлагает две формы компиляции на момент времени (AOT):
- Для некоторых сценариев требуется 100-процентная компиляция AOT. Примером может служить iOS.
- В других сценариях большая часть кода приложения компилируется с помощью AOT, но для некоторых частей используется JIT-компилятор. Некоторые шаблоны кода не распознаются AOT (например, универсальные шаблоны). Примером такой формы компиляции AOT является параметр публикации . Такая форма AOT позволяет использовать преимущества компиляции без ее недостатков.
Автоматическое управление памятью
Сборщик мусора (GC) управляет выделением и освобождением памяти для приложений. Каждый раз, когда код создает новый объект, среда CLR выделяет память для объекта из . Пока в управляемой куче есть доступное адресное пространство, среда выполнения продолжает выделять пространство для новых объектов. Когда остается недостаточное свободное пространство адресов, сборщик мусора проверяет наличие объектов в управляемой куче, которые больше не используются приложением. Затем эта память освобождается.
GC — это одна из служб CLR, которая помогает обеспечить безопасность памяти. Программа является безопасной по памяти, если она обращается только к выделенной памяти. Например, среда выполнения гарантирует, что приложение не обращается к невыделенной памяти за пределами границ массива.
Дополнительные сведения о сборке мусора см. в статьях Автоматическое управление памятью и Основы сборки мусора.
Работа с неуправляемыми ресурсами
Иногда код должен ссылаться на неуправляемые ресурсы. Неуправляемые ресурсы — это ресурсы, которые не обслуживаются средой выполнения .NET автоматически. Например, к неуправляемым ресурсам относятся дескрипторы файлов. Объект FileStream — управляемый, но он ссылается на дескриптор файла, который является неуправляемым ресурсом. После окончания работы с FileStream нужно явным образом освободить дескриптор файла.
В среде .NET объекты, которые ссылаются на неуправляемые ресурсы, реализуют интерфейс IDisposable. После окончания работы с объектом вызовите метод объекта, который отвечает за освобождение неуправляемых ресурсов. В языках .NET имеется удобная инструкция (C#, F#, VB), которая обеспечивает вызов метода .
Дополнительные сведения см. в разделе Очистка неуправляемых ресурсов.
.NET Framework FAQ
What is .NET Framework used for?
.NET Framework is used to create and run software applications. .NET apps can run on many operating systems, using different implementations of .NET. .NET Framework is used for running .NET apps on Windows.
Who uses .NET Framework?
Software developers and the users of their applications both use .NET Framework:
- Users of applications built with the .NET Framework need to have .NET Framework installed. In most cases, .NET Framework is already installed with Windows. If needed, you can download .NET Framework.
- Software developers use .NET Framework to build many different types of applications—websites, services, desktop apps, and more with Visual Studio. Visual Studio is an integrated development environment (IDE) that provides development productivity tools and debugging capabilities. See the .NET customer showcase for examples of what people are building with .NET.
Why do I need .NET Framework?
You need .NET Framework installed in order to run applications on Windows that were created using .NET Framework. It is already included in many versions of Windows. You only need to download and install .NET Framework if prompted to do so.
How does .NET Framework work?
.NET Framework applications are written in C#, F#, or Visual Basic and compiled to Common Intermediate Language (CIL). The Common Language Runtime (CLR) runs .NET applications on a given machine, converting the CIL to machine code. See for more info.
What are the main components/features of .NET Framework?
The two major components of .NET Framework are the Common Language Runtime (CLR) and the .NET Framework Class Library. The CLR is the execution engine that handles running applications. The Class Library provides a set of APIs and types for common functionality. See for more info.
What is the difference between .NET Core and .NET Framework?
.NET Core and .NET Framework share many of the same components and you can share code across the two. Some key differences include:
- .NET Core is cross-platform and runs on Linux, macOS, and Windows. .NET Framework only runs on Windows.
- .NET Core is open-source and accepts contributions from the community. The .NET Framework source code is available, but does not take direct contributions.
- The majority of .NET innovation happens in .NET Core.
- .NET Framework is included in Windows and automatically updated machine-wide by Windows Update. .NET Core is shipped independently.
See Choosing between .NET Core and .NET Framework for more details.
Can you have multiple .NET Frameworks installed?
Some versions of .NET Framework are installed side-by-side, while others will upgrade an existing version (known as an in-place update). In-place updates occur when two .NET Framework versions share the same CLR version.
For example, installing .NET Framework 4.8 on a machine with .NET Framework 4.7.2 and 3.5 installed will perform an in-place update of the 4.7.2 installation and leave 3.5 installed separately.
.NET Framework version | CLR version |
---|---|
.NET Framework 4.x | 4.0 |
.NET Framework 2.x and 3.x | 2.0 |
.NET Framework 1.1 | 1.1 |
.NET Framework 1.0 | 1.0 |
How much does .NET Framework cost?
.NET Framework is free, like the rest of the .NET platform. There are no fees or licensing costs, including for commercial use. See .NET is free for more details.
Which version of .NET Framework should I use?
In most cases, you should use the latest stable release. Currently, that’s .NET Framework 4.8 .
Applications that were created with any 4.x version of .NET Framework will run on .NET Framework 4.8 . To run an application that was created for an earlier version (for example, .NET Framework 3.5), you should install that version. See Download .NET Framework for a complete list.
What is the support policy for .NET Framework?
.NET Framework 4.8 is the latest version of .NET Framework and will continue to be distributed with future releases of Windows. As long as it is installed on a supported version of Windows, .NET Framework 4.8 will continue to also be supported.
Типы веб-фреймворков
Классифицировать фреймворки для веб-приложений можно по двум основаниям: задачам, которые они решают, и размеру.
Бэкенд-фреймворки
Это фреймворки веб-разработки, которые работают на серверной стороне. В основном они отвечают за отдельные, но критически важные части приложения, без которых оно не сможет нормально работать. Вот несколько самых популярных фреймворков, а также языки, с которыми они работают:
- Django — Python;
- Symfony, Laravel — PHP;
- Express.js — JavaScript;
- Ruby on Rails — Ruby.
Правила и архитектура серверных фреймворков не даёт возможности разработать веб-приложение с богатым интерфейсом. Они ограничены в своей функциональности, однако вы всё равно можете создавать простые страницы и разные формы. Также они могут формировать выходные данные и отвечать за безопасность в случае атак.
Фронтенд-фреймворки
Фронтенд-фреймворки отвечают за внешний вид веб-приложения. В отличие от серверных, они никак не связаны с логикой работы. Этот тип фреймворков работает в браузере. С их помощью можно улучшать и внедрять новые пользовательские интерфейсы, создавать разные анимации и одностраничные приложения. Вот некоторые из них:
- Angular;
- Vue.js;
- Svelte;
- React — формально это не фреймворк, а библиотека, но значение этого инструмента так велико, что его постоянно сравнивают с другими веб-фреймворками.
Все эти инструменты используют JavaScript.
Фуллстек-фреймворки
Если фреймворк решает задачи и на серверной, и на клиентской стороне, то он относится к категории фуллстек. В качестве примера можно назвать Meteor. Обе его стороны — серверная и клиентская — работают на JavaScript. Поэтому вы можете создавать и использовать для них один и тот же код. Следующая особенность — «режим реального времени». Когда вы что-то меняете в одном интерфейсе, изменения происходят и в остальных.
К фуллстек также относятся фреймворки Next.js и Nuxt. Первый создан поверх React.js, а второй работает на базе Vue.js. Такие веб-фреймворки могут быть сложными для начинающих.
Можно работать и с серверной, и с клиентской стороной веб-приложения
Фреймворки и микрофреймворки
Фреймворки веб-разработки отличаются по размеру. Существуют монструозные инструменты, которые предлагают решения для всего. Более легковесные варианты специализируются на решении конкретных задач. Такие фреймворки называются микрофреймворками. Их функциональность расширяется с помощью сторонних приложений. Вы можете создавать на их основе небольшие проекты или совместить микрофреймворк с большим фреймворком.
Front-end разработчик (Vue)
ООО «Держава-Платформа», Удалённо, От 120 000 до 180 000 ₽
tproger.ru
Вакансии на tproger.ru
Например, если ваше приложение основано на Django и вам нужны веб-сокеты, то вы можете воспользоваться микрофреймворком aiohttp. Другой пример: если ваше приложение не очень большое и вам нужна только простая маршрутизация URL и шаблоны с несложным контекстом, вы можете использовать Flask с Jinja2 (или другим шаблонизатором) вместо Django.
Случаи использования .NET Core/5+
В следующих разделах более детально описаны указанные ранее причины для выбора платформы .NET Core/5+.
Создание кроссплатформенных приложений
Если вам нужно создать приложение (веб-приложение или службу) с поддержкой разных платформ (Windows, Linux и macOS), рекомендуется использовать .NET Core/5+.
В среде .NET Core/5+ также можно использовать упомянутые ранее операционные системы в качестве рабочих станций для разработки. Visual Studio предоставляет интегрированную среду разработки (IDE) для Windows и macOS. Можно также использовать редактор Visual Studio Code, который выполняется на платформах macOS, Linux и Windows. Visual Studio Code поддерживает .NET Core/5+, включая технологию IntelliSense и отладку. С .NET Core/5+ работает большинство сторонних редакторов, например Sublime, Emacs и VI. Эти сторонние редакторы получают доступ к функциям в редакторе IntelliSense с помощью Omnisharp. Вы также можете использовать вместо редакторов кода непосредственно .NET CLI, доступный для всех поддерживаемых платформ.
Архитектура микрослужб
Архитектура микрослужб позволяет использовать сочетание технологий за пределами службы. Такое сочетание технологий позволяет постепенно добавлять новые микросолужбы в .NET Core/5+ для параллельного использования с другими микрослужбами и службами. Например, можно комбинировать микрослужбы или службы, созданные на основе .NET Framework, Java, Ruby или других монолитные технологий.
Пользователям на выбор предоставляется множество инфраструктурных платформ. Для больших и сложных систем микрослужб можно использовать Azure Service Fabric. Служба приложений Azure лучше всего подойдет для микрослужб без сохранения состояния. Альтернативы микрослужб на основе Docker поддерживают любые подходы, как описано в разделе . Все эти платформы поддерживают .NET Core/5+ и идеально подходят для размещения микрослужб.
Дополнительные сведения об архитектуре микрослужб см. в статье Микрослужбы .NET: архитектура контейнерных приложений .NET.
Контейнеры
Контейнеры обычно используются вместе с архитектурой микрослужб. Их также можно использовать, чтобы поместить в контейнер веб-приложения или службы на базе любого архитектурного шаблона. Среду .NET Framework можно использовать для контейнеров Windows, но упрощенные возможности и модульный принцип среды .NET Core/5+ делают ее оптимальной для контейнеров. При создании и развертывании контейнера размер его образа гораздо меньше в среде .NET Core/5+. Так как эта среда поддерживает разные платформы, серверные приложения можно развертывать, например, в контейнеры Docker в Linux.
Затем эти контейнеры можно размещать в собственной инфраструктуре Linux или Windows или в облачной службе,такой как Служба Azure Kubernetes. Служба Azure Kubernetes может выполнять оркестрацию и масштабировать приложения на основе контейнеров, а также управлять ими в облаке.
Масштабируемые системы с высокой производительностью
Если для вашей системы требуется максимальная производительность и возможности масштабирования, мы рекомендуем использовать среды .NET Core/5+ и ASP.NET Core. Высокопроизводительная серверная среда выполнения для Windows Server и Linux делает ASP.NET Core самой эффективной веб-платформой в .
Производительность и масштабируемость особенно важны для архитектур микрослужб, где могут выполняться сотни микрослужб. Среда ASP.NET Core позволяет уменьшить количество серверов и виртуальных машин, необходимых для системы. В конечном счете это способствует сокращению расходов на архитектуру и размещение.
Создание приложений с поддержкой разных версий .NET
Если требуется установить приложения с зависимостями в разных версиях платформ .NET, рекомендуется использовать среду .NET Core/5+. Такая реализация .NET поддерживает параллельную установку разных версий среды выполнения .NET Core/5+ на том же компьютере. За счет простой параллельной установки на одном сервере можно размещать несколько служб, каждая из которых устанавливается в собственной версии .NET Core/5+. Это позволяет устранить риски и сократить расходы на обновление приложений и ИТ-операции.
Параллельная установка невозможна при использовании .NET Framework. Это компонент Windows, и на компьютере может существовать только одна версия этого компонента. Каждая версия .NET Framework заменяет предыдущую версию. При установке нового приложения, предназначенного для более поздней версии .NET Framework, может быть нарушена работа существующих приложений, запущенных на компьютере, поскольку предыдущая версия была заменена.
Клиентский профиль .NET Framework 4
Клиентский профиль .NET Framework 4 — это некий поднабор компонентов .NET Framework 4, которые оптимизированы для клиентских приложений. Он включает в себя необходимый набор функций и компонентов, которых достаточно большинству клиентских приложений. Сюда входит Windows Presentation Foundation (WPF), Windows Forms, Windows Communication Foundation (WCF). Если говорить о том, что сюда не включено то это: ASP.NET, расширенный набор функций WCF, поставщик данных .NET Framework для Oracle и система MSBuild для компиляции, если Вам необходимы эти компоненты то нужно уже устанавливать полноценный .NET Framework 4. Как Вы, наверное, уже поняли клиентский профиль .NET Framework 4 это своего рода урезанная версия .NET Framework 4.
И теперь давайте перейдем к установке данных компонентов и начнем мы с Microsoft .NET Framework 4 Client Profile.
Примечание! Если Вы хотите сразу установить полноценный Microsoft .NET Framework 4.0, то клиентский профиль устанавливать не обязательно.
Установка Microsoft .NET Framework 4 Client Profile
И для того чтобы установить данный компонент необходимо, конечно же, его скачать, а это можно и лучше сделать с официального центра загрузки Microsoft.
Возможно два варианта установки это через веб установщик, т.е. мы, скачали небольшую по размеру программку и запустили ее, а она уже будет скачивать все необходимые компоненты и второй вариант так называемая автономная (классическая) установка при которой мы скачиваем полный пакет, а затем устанавливаем его. В принципе они ни чем не отличаются просто при первом варианте у нас на компьютере не останется своего рода дистрибутива, а при втором он у нас будет. При этом мы его сможем перенести и установить на компьютер, который не подключен к Интернету, в свою очередь веб установщик требует обязательного подключения к Интернету.
Я предлагаю клиентский профиль .NET Framework 4 установить с помощью веб установщика, а затем, когда мы будем рассматривать установку полноценного .NET Framework 4.0 использовать автономный установщик.
И так начнем.
Скачать клиентский профиль .NET Framework 4 (веб установщик) можно вот на этой странице.
Вы переходите на страницу и жмете «Скачать»
Затем Вам будет предложено отметить для загрузки дополнительные пакеты приложений, но так как в данном случае нам ничего больше не нужно мы просто жмем «Отказаться и продолжить» в правой части экрана
В итоге у Вас загрузится файл dotNetFx40_Client_setup.exe, который нужно запустить.
И сразу после запуска нам необходимо согласиться с лицензионным соглашением, т.е. поставить галочку напротив «Я прочитал и принимаю условия лицензионного соглашения» и нажать «Установить».
Затем нам больше ничего не нужно делать мы просто ждем окончания загрузки и установки.
Установка займет не много времени всего минуты 3, после чего установщик скажет, что «Установка завершена», и мы жмем «Готово».
Как видите в установке клиентского профиля .NET Framework 4 нет ничего сложного как впрочем, и в установке самой платформы Microsoft .NET Framework 4, но это Вы сейчас сами и увидите.
Следующие шаги
-
Если у вас отсутствует опыт работы с .NET Framework, ознакомьтесь с общими сведениями об этой платформе, основными понятиями и ключевыми функциями.
-
Сведения о новых функциях и улучшениях в .NET Framework 4.5 и ее доработанных выпусках см. в разделе Новые возможности в .NET Framework.
-
Сведения о миграции приложения на более новую версию платформы .NET Framework см. в руководстве по миграции.
-
Сведения об определении версий или обновлений, установленных на компьютере, см. в разделах Практическое руководство. Определение установленных версий .NET Framework и Практическое руководство. Определение установленных обновлений .NET Framework.
Как научиться пользоваться веб-фреймворками
Научиться пользоваться фреймворками можно самостоятельно. Чтобы найти руководство по веб-фреймворкам, изучите их документацию. Главный плюс официальных источников — актуальность. В таких обучающих материалах используются возможности последних версий фреймворков.
Если в документации нет простых гайдов, можно поискать их на других площадках. Например, на freeCodeCamp есть бесплатный курс по React, а на сайте Tutorialspoint — туториалы по разным языкам и технологиям.
Неплохой источник информации — YouTube. На видеохостинге выкладывают обзоры и пошаговые руководства. Просмотр таких роликов поможет выбрать подходящий фреймворк, если вы пока сомневаетесь. Не забывайте и про StackOverflow. Но туда нужно приходить уже с конкретными вопросами, которые возникли при изучении или использовании фреймворка.
По материалам поста Web Frameworks: How To Get Started