Índice:
- Definição - O que significa o Framework Class Library (FCL)?
- Techopedia explica Framework Class Library (FCL)
Definição - O que significa o Framework Class Library (FCL)?
A FCL (Framework Class Library) é uma coleção abrangente de tipos reutilizáveis, incluindo classes, interfaces e tipos de dados incluídos no .NET Framework para fornecer acesso à funcionalidade do sistema.
O .NET FCL forma a base na qual aplicativos, controles e componentes são criados no .NET. Ele pode ser usado para desenvolver aplicativos como aplicativos de console, aplicativos da GUI do Windows, aplicativos ASP.NET, serviços Windows e Web, aplicativos habilitados para fluxo de trabalho, aplicativos orientados a serviços usando a Comunicação do Windows, serviços Web XML, etc.
Os tipos reutilizáveis de FCL fornecem uma interface simples para os desenvolvedores devido a:
- Sua natureza de auto-documentação
- Menor curva de aprendizado para entender a estrutura, que agiliza e otimiza o processo de desenvolvimento
- Integração perfeita de componentes de terceiros com classes na FCL
O FCL atua como uma biblioteca padrão, que pode ser usada de maneira consistente por todos os idiomas .NET e compiladores compatíveis com o idioma comum (compatíveis com CLC).
Techopedia explica Framework Class Library (FCL)
O .NET FCL é o componente principal do .NET framework. Ele fornece as principais funcionalidades da arquitetura .NET, que incluem:
- Tipos de dados base
- Tipo de objeto
- Implementação de estruturas de dados
- Coleta de lixo
- Segurança, acesso a dados e conectividade de banco de dados
- Comunicações de rede
- Suporte para implementar a GUI do rich client para aplicativos baseados no Windows e na Web
O FCL foi projetado para fornecer serviços semelhantes à API (interface de programação de aplicativos) do Windows, usada antes da criação do .NET. O FCL tem sua base de código como gerenciada, orientada a objetos e fácil de usar, enquanto a API do Windows é não gerenciada, modular e complicada de usar.
O .NET FCL é integrado ao Common Language Runtime (CLR) do Framework, que gerencia a execução do código. Suas classes seguem o modelo de objeto usado pela Linguagem Intermediária (IL) e são baseadas em herança única. As classes e interfaces são agrupadas em espaços para nome, para que possam ser acessados facilmente.
Os espaços para nome representam uma hierarquia dos tipos definidos, formados por um grupo lógico de classes e interfaces relacionadas, que podem ser usados por qualquer idioma direcionado à estrutura .NET. Eles residem em montagens, que são unidades implantáveis que contêm detalhes sobre classes, interfaces e estruturas. A primeira parte até o último ponto do nome completo de um tipo indica o espaço para nome, enquanto a última parte especifica o nome do tipo. Essa maneira de usar espaços para nome evita um conflito de nomes, que pode surgir se dois nomes de classe forem iguais. Enquanto "Sistema" é o espaço de nomes raiz para tipos fundamentais no .NET framework, "Objeto" forma a raiz de todos os objetos.
As classes e interfaces fornecem uma opção para usar a funcionalidade através da implementação (em uma classe concreta, considerando-a como base) ou apenas as assinaturas de métodos definidos nas interfaces ou classes abstratas. Ao usar o Visual Studio para o desenvolvimento de um aplicativo, as classes base mais comuns já são referenciadas no projeto, enquanto os tipos não definidos, como tipos definidos pelo usuário em uma biblioteca de vínculo dinâmico separada, precisam ser adicionados explicitamente para que possam ser usava. A classe que atende à funcionalidade necessária pode ser usada no código, incluindo uma diretiva de importação para o espaço para nome que contém a classe.
A Microsoft também forneceu diretrizes necessárias a serem adotadas para o desenvolvimento de bibliotecas, que estendem e interagem com o .NET Framework. Essas diretrizes abrangem tipos de nomes e membros em bibliotecas de classes, usando classes estáticas e abstratas, interfaces, membros de tipos, exceções etc. O uso inadequado da biblioteca FCL pode afetar adversamente a produtividade do desenvolvedor e desencorajar seu uso.
FCL é semelhante ao Java Foundation Classes. O principal desafio no uso da FCL é conhecer a classe específica que pode fornecer a funcionalidade necessária.