Jaka jest różnica między nimi? Czy możemy ich używać zamiennie?
Jaka jest różnica między nimi? Czy możemy ich używać zamiennie?
Odpowiedzi:
Biblioteka klas bazowych (BCL) jest dosłownie podstawą. Zawiera podstawowe, podstawowe typy, takie jak System.String
i System.DateTime
.
Framework Class Library (FCL) to szersza biblioteka zawierająca całość: ASP.NET, WinForms, stos XML, ADO.NET i inne. Można powiedzieć, że FCL obejmuje BCL.
Biblioteka .NET Framework, BCL, jest standardem dla biblioteki środowiska wykonawczego C # i jedną ze standardowych bibliotek Common Language Infrastructure (CLI). BCL zapewnia typy reprezentujące wbudowane typy danych CLI, podstawowy dostęp do plików, kolekcje, atrybuty niestandardowe, formatowanie, atrybuty zabezpieczeń, strumienie we / wy, operacje na ciągach i inne.
Biblioteka klas .NET Framework jest dokładnie tym, co sugeruje jej nazwa: biblioteką klas i innych typów, których programiści mogą używać, aby ułatwić sobie życie. Chociaż te klasy są napisane w języku C #, mogą być używane z dowolnego języka opartego na CLR
Będziesz używać BCL z niektórymi częściami FCL w każdym typie projektu. Czyli System.Windows.Forms (oddzielna biblioteka) lub System.Web, z BCL z mscorlib i System.dll
BCL oznacza bibliotekę klas bazowych, znaną również jako biblioteka klas (CL). BCL jest podzbiorem biblioteki klas Framework (FCL). Biblioteka klas to kolekcja typów wielokrotnego użytku, które są ściśle zintegrowane z CLR. Biblioteka klas bazowych zawiera klasy i typy, które są pomocne w wykonywaniu codziennych operacji, np. Zajmowanie się ciągami i typami pierwotnymi, połączenie z bazą danych, operacje IO.
podczas gdy biblioteka klas Framework zawiera tysiące klas używanych do tworzenia różnych typów aplikacji i zapewnia wszystkie podstawowe funkcje i usługi, których potrzebuje aplikacja. FCL obejmuje klasy i usługi obsługujące różne rodzaje aplikacji, np
Aplikacja pulpitu,
Aplikacja internetowa (ASP.Net, MVC, WCF),
Mobilna aplikacja,
Aplikacja Xbox,
usługi Windows itp.
Więcej szczegółów na stronie Co to jest BCL / CL w .Net?
Biblioteka klas podstawowych (BCL) to podstawowy zestaw klas, które służą jako podstawowy interfejs API środowiska uruchomieniowego języka wspólnego. Klasy w mscorlib.dll i niektóre z klas w System.dll i System.core.dll są uważane za część BCL. Obejmuje klasy w przestrzeniach nazw, takich jak System, System.Diagnostics, System.Globalization, System.Resources, System.Text, System.Runtime.Serialization i System.Data itp.
Biblioteka klas Framework (FCL) to nadzbiór klas BCL i odnosi się do całej biblioteki klas dostarczanej z .NET Framework. Obejmuje rozszerzony zestaw bibliotek, w tym między innymi Windows Forms, ADO.NET, ASP.NET, Language Integrated Query, Windows Presentation Foundation, Windows Communication Foundation.
Są więc różnice i nie wolno ich używać zamiennie.
BCL jest podzbiorem FCL. BCL honoruje specyfikację ECMA dotyczącą infrastruktury wspólnego języka. Następnie Microsoft dodał wszystkie ich zalety, takie jak dane i XML i nazwał je biblioteką klas Framework. Zasadniczo wzięli BCL i osiągnęli 11!
Poniższe cytaty pochodzą z książki „The C # Player's Guide”.
BCL zawiera wszystkie wbudowane typy, tablice, wyjątki, biblioteki matematyczne, podstawowe operacje we / wy plików, zabezpieczenia, kolekcje, odbicia, sieci, manipulację ciągami, wątki i inne. Chociaż nie jest to doskonały przewodnik, ogólna zasada mówi, że każda przestrzeń nazw, która zaczyna się od System, jest częścią BCL.
Poza BCL istnieje wiele innych klas, które firma Microsoft dostarcza wraz z .NET Framework. Ogólnie te dodatkowe rzeczy obejmują szerokie obszary funkcjonalne, takie jak dostęp do bazy danych lub graficzne interfejsy użytkownika (Windows Forms lub WPF). Cała kolekcja, w tym BCL, nosi nazwę Framework Class Library lub FCL. W swobodnej dyskusji czasami ludzie używają zamiennie FCL i BCL, co nie jest do końca poprawne, ale być może wystarcza do większości rzeczy.