--- title: C# localeTitle: C # --- ## C # C Sharp, mais comumente chamado de "C #", é uma linguagem de programação orientada a objetos e de uso geral. O C # foi desenvolvido por Anders Hejlsberg e sua equipe de desenvolvimento na Microsoft e atualmente está na versão 7.0. C # tem suas raízes na família de linguagens C. Ele herda a maioria de seus recursos de C, C ++ e Java. Por esse motivo, os programadores familiarizados com esses idiomas podem ser capazes de obter velocidade com o C # em um período de tempo menor. C # é uma linguagem orientada a objetos que fornece suporte para programação funcional e orientada a componentes. #### Classes e Objetos As aulas nos permitem modelar objetos do cotidiano no mundo que nos rodeia em software. Você pode criar classes personalizadas para representar praticamente qualquer coisa. Assim como um substantivo é uma pessoa, lugar ou coisa na linguagem, também uma classe representa objetos. Quando você escreve código C #, normalmente é porque você precisa de um programa que faz algo útil. No caso de uma necessidade comercial, você segue os requisitos que a empresa precisa. Digamos que seu negócio chega até você pede-lhe um banco de dados eletrônico de livros. Eles precisam armazenar títulos de livros, autores, estatísticas de computação, como o número de checkouts em um determinado mês ou uma média mensal. Os requisitos descrevem o programa que precisa ser desenvolvido. Como você escreve um programa para os requisitos dados? Geralmente, usamos classes para criar abstrações para os diferentes substantivos com os quais precisamos trabalhar. Um substantivo como um livro, autor ou título. Um conceito importante em C # é que a definição de classe é usada para criar instâncias de objetos. Você pode pensar nisso como um modelo para criar instâncias de objetos. A definição de classe permite a criação de objetos que armazenam uma referência a esse objeto. Por exemplo, digamos que queremos criar um novo objeto de livro. A linha de código é assim: `Book book = new Book();` Isso cria um novo objeto de livro que podemos usar para manipular dados e armazená-los em um banco de dados. A variável book é, na verdade, um tipo de referência do Book (com um B maiúsculo). Podemos usar métodos disponíveis na definição de classe com essa variável, livro, como AddTitle () ou AddAuthor () etc. #### Recursos do C # incluem: 1. Coleta de lixo automática 2. Manipulação de exceção 3. Segurança de tipo 4. Versão 5. Delegados 6. Propriedades 7. LINQ (consulta integrada de idioma) e expressões lambda 8. Genéricos 9. Indexadores 10. Multithreading #### Novos recursos adicionados no C # 7.0: 1. Desconstrutores 2. Nova sintaxe para trabalhar com tuplas 3. Correspondência de Padrões com Expressões É 4. Funções locais 5. Retornar por referência 6. Variáveis ​​de saída 7. Melhorias literais 8. Tipos de retorno assíncronos generalizados 9. Mais Membros com Expressão Corporal 10. Jogue Expressões 11. Tipo de registro 12. Minimizando OUT 13. Tipo de referência não 'NULL' Você pode usar o C # para criar aplicativos clientes do Windows, serviços da Web em XML, componentes distribuídos, aplicativos cliente-servidor, aplicativos de banco de dados e muito mais. #### Aplicativos ASP.NET e .NET A linguagem C # também é usada com a estrutura ASP.NET, desenvolvida pela Microsoft Corp., especificamente para criar aplicativos da Web independentes de máquina e navegador. A estrutura .NET mais ampla, também desenvolvida pela Microsoft, é usada para criar outros tipos de aplicativos, como aplicativos de desktop, móveis, servidor e de rede. A estrutura .NET inclui as bibliotecas .NET Base Class Libraries (BCL), ASP.NET, ADO.NET, Windows Forms, Windows Presentation Foundation (WPF) e eXtensible Markup Language (XML). Para obter mais informações sobre ASP.NET, consulte o tópico ASPNET no [guia freeCodeCamp](https://guide.freecodecamp.org/) #### Mais Informações: * [Introdução ao C #](https://docs.microsoft.com/en-us/dotnet/csharp/getting-started/introduction-to-the-csharp-language-and-the-net-framework) * [C # Tutoriais](https://www.microsoft.com/net/tutorials/csharp/getting-started) * [Documentação Oficial do C #](https://docs.microsoft.com/en-us/dotnet/csharp/) * [Novos recursos no c # 7.0](https://msdn.microsoft.com/en-us/magazine/mt790184.aspx)