Introdução ao C#
O C# é uma linguagem de programação moderna, orientada a objetos, desenvolvida pela Microsoft como a principal linguagem para a plataforma .NET. Ela foi lançada em 2002 e desde então se tornou uma das linguagens mais populares do mundo, especialmente para desenvolvimento em ambientes Microsoft.
Principais características do C#:
- Orientação a objetos: permite criar classes, objetos, interfaces e aplicar conceitos como herança, polimorfismo e encapsulamento.
- Sintaxe simples e moderna: inspirada em linguagens como C, C++ e Java, facilitando a aprendizagem para quem já conhece essas linguagens.
- Fortemente tipificada: cada variável tem seu tipo definido em tempo de compilação, o que reduz erros e aumenta a segurança do código.
- Gerenciamento automático de memória: o coletor de lixo (garbage collector) liberta automaticamente a memória de objetos não utilizados.
- Tratamento de exceções: oferece mecanismos robustos para capturar e tratar erros durante a execução do programa.
- Multiplataforma: com o .NET moderno, programas em C# podem rodar em Windows, Linux, macOS, dispositivos móveis e até na nuvem.
C# é usada para criar diversos tipos de aplicações:
- Aplicativos desktop (Windows)
- Aplicativos web
- Aplicativos móveis
- Jogos (com Unity)
- Serviços de backend, APIs, IoT e muito mais.
.NET Framework
O .NET Framework é uma plataforma de desenvolvimento criada pela Microsoft para facilitar a criação e execução de aplicativos, principalmente no sistema operativoWindows.
Componentes principais:
- CLR (Common Language Runtime): é o ambiente de execução que gere a execução das aplicações .NET, oferecendo serviços como gestão de memória, coleta de lixo, tratamento de exceções, segurança e interoperabilidade entre linguagens.
- Biblioteca de Classes do .NET (Framework Class Library – FCL): um conjunto abrangente de APIs e componentes reutilizáveis para tarefas comuns como acesso a dados, manipulação de ficheiros, interface gráfica, comunicação em rede, criptografia, etc.
Características do .NET Framework:
- Ambiente gerido: as aplicações correm num ambiente controlado, o que aumenta a segurança e a estabilidade.
- Interoperabilidade entre linguagens: permite que diferentes linguagens (C#, VB.NET, F#, etc.) sejam usadas juntas, compartilhando bibliotecas e componentes.
- Compilação em duas etapas: o código-fonte é compilado para um código intermediário (CIL), que depois é convertido em código de máquina específico aquando da execução (JIT – Just-In-Time).
- Foco em Windows: o .NET Framework foi projetado originalmente para executar apenas em Windows, mas versões mais recentes da plataforma .NET (como .NET Core e .NET 5/6/7/8) são multiplataforma.
Evolução
Hoje, o .NET Framework é considerado legado, sendo recomendado o uso das versões mais modernas e multiplataforma do .NET (como .NET 8). No entanto, ele ainda é amplamente utilizado para manter aplicações existentes que dependem de recursos específicos do Windows.
Em resumo, C# é a principal linguagem de programação da plataforma .NET, enquanto o .NET Framework é a implementação original dessa plataforma, fornecendo o ambiente necessário para o desenvolvimento e execução de aplicações, principalmente no Windows.