В чем разница между ними? Можем ли мы использовать их как взаимозаменяемые?
В чем разница между ними? Можем ли мы использовать их как взаимозаменяемые?
Ответы:
Библиотека базовых классов (BCL) буквально является базой. Он содержит базовые, фундаментальные типы, такие как System.String
и System.DateTime
.
Библиотека классов Framework (FCL) - это более широкая библиотека, которая содержит все: ASP.NET, WinForms, стек XML, ADO.NET и другие. Можно сказать, что FCL включает BCL.
Библиотека .NET Framework, BCL является стандартом для библиотеки времени выполнения C # и одной из стандартных библиотек Common Language Infrastructure (CLI). BCL предоставляет типы, представляющие встроенные типы данных CLI, базовый доступ к файлам, коллекции, настраиваемые атрибуты, форматирование, атрибуты безопасности, потоки ввода-вывода, операции со строками и многое другое.
Библиотека классов .NET Framework - это именно то, что следует из ее названия: библиотека классов и других типов, которые разработчики могут использовать для облегчения своей жизни. Хотя сами эти классы написаны на C #, их можно использовать с любого языка на основе CLR.
Вы будете использовать BCL с некоторыми частями FCL для каждого типа проекта. Итак, System.Windows.Forms (отдельная библиотека) или System.Web с BCL из mscorlib и System.dll
BCL означает библиотеку базовых классов, также известную как библиотека классов (CL). BCL - это подмножество библиотеки классов Framework (FCL). Библиотека классов - это набор многоразовых типов, которые тесно интегрированы с CLR. Библиотека базовых классов предоставляет классы и типы, которые полезны при выполнении повседневных операций, например, при работе со строковыми и примитивными типами, подключением к базе данных, операциями ввода-вывода.
в то время как библиотека классов Framework содержит тысячи классов, используемых для создания различных типов приложений, и предоставляет все основные функции и службы, которые необходимы приложению. FCL включает классы и службы для поддержки различных приложений, например
Настольное приложение,
Веб-приложение (ASP.Net, MVC, WCF),
Мобильное приложение,
Приложение Xbox,
службы Windows и т. д.
Более подробная информация о том, что такое BCL / CL в .Net?
Библиотека базовых классов (BCL) - это основной набор классов, которые служат в качестве базового API-интерфейса Common Language Runtime. Классы в mscorlib.dll и некоторые классы в System.dll и System.core.dll считаются частью BCL. Он включает классы в пространствах имен, таких как System, System.Diagnostics, System.Globalization, System.Resources, System.Text, System.Runtime.Serialization и System.Data и т. Д.
Библиотека классов Framework (FCL) является надмножеством классов BCL и относится ко всей библиотеке классов, поставляемой с .NET Framework. Он включает расширенный набор библиотек, в том числе Windows Forms, ADO.NET, ASP.NET, Language Integrated Query, Windows Presentation Foundation, Windows Communication Foundation и другие.
Итак, есть различия, и вы не должны использовать их как взаимозаменяемые.
BCL - это подмножество FCL. BCL соблюдает спецификацию ECMA для общей языковой инфраструктуры. Затем Microsoft добавила все свои достоинства, такие как данные и xml, и назвала это библиотекой классов Framework. В основном они взяли BCL и довели его до 11!
Следующее цитируется из книги «Руководство игрока на C #».
BCL содержит все встроенные типы, массивы, исключения, математические библиотеки, базовый ввод-вывод файлов, безопасность, коллекции, отражение, сеть, манипуляции со строками, многопоточность и многое другое. Хотя это и не идеальное руководство, общее правило состоит в том, что любое пространство имен, которое начинается с System, является частью BCL.
Помимо BCL, Microsoft поставляет с .NET Framework еще много классов. В общем, эти дополнительные вещи охватывают широкие функциональные области, такие как доступ к базе данных или графические пользовательские интерфейсы (Windows Forms или WPF). Вся эта коллекция, включая BCL, называется библиотекой классов Framework или FCL. В ходе случайного обсуждения иногда люди используют FCL и BCL как взаимозаменяемые, что не совсем правильно, но, возможно, этого достаточно для большинства вещей.