af Luis Ricardo 3 år siden
1123
Mere som dette
https://docs.microsoft.com/pt-br/dotnet/csharp/language-reference/builtin-types/struct1
https://andrielleazevedo.wordpress.com/2011/12/10/estrutura-de-um-programa-em-c/#:~:text=A%20estrutura%20de%20um%20programa,arquivos%20contendo%20os%20seguintes%20elementos%3A&text=Tipos%20(classes%2C%20estruturas%2C%20interfaces,declarações%2C%20comentários%2C%20instruções).
Apesar de ser um editor de textos para desenvolvedores, o Visual Studio Code (ou vscode), é tão completo que é frequentemente confundido como uma IDE. Criada pela Microsoft, o vscode é um editor open source multiplataforma e com diversos recursos para o desenvolvimento C#.
Possui suporte nativo ao JavaScript, TypeScript, JSON, HTML, CSS e outras tecnologias, além disso, é possível instalar plugins para melhorar o suporte para outras tecnologias, como o próprio C#.
Muito utilizado na comunidade, o VScode, apesar de não ser uma IDE, é tão poderosa quanto.Para instalar o vscode, é só acessar sua página oficial e realizar seu download.
Lançada em 2017 pela Jetbrains, o Rider é uma IDE para desenvolvimento em C# e toda o seu ecossistema, permitindo a criação de aplicações .NET, jogos com Unity, aplicativos móveis com Xamarin e aplicações web com ASP .NET e ASP .NET Core. Multiplataforma, é possível realizar seu download em diferentes sistemas operacionais como windows, linux e macOS.
Um dos principais concorrentes do Visual Studio, o Rider possui inúmeros recursos, o que facilita a adoção e o uso da IDE em projetos C#. Alguns desses recursos podem ser vistos abaixo:
O Rider é uma excelente IDE, muito utilizada no mercado. Seu uso facilita a criação de aplicações C#. O download do Rider poderá ser realizado em seu próprio site.
Lançado em 1997 pela Microsoft, o Visual Studio é a principal IDE para desenvolvimento C# e todos os seus frameworks, como o .NET e ASP.NET. Além disso, o Visual Studio possui suporte nativo a outras linguagens, como Visual Basic, C, C++ e F#, o tornando ainda mais completo.
Suportado pelo Windows e macOS, é uma das IDEs para desenvolvimento C# rica de funcionalidades que facilitam a implementação de aplicações. Além disso, o Visual Studio provê diversos recursos para ajudar o desenvolvedor, como podemos ver abaixo:
https://docs.microsoft.com/pt-https://docs.microsoft.com/pt-https://www.blogson.com.br/exemplo-de-uma-aplicacao-de-console-usando-c-sharp/
https://docs.microsoft.com/pt-br/xamarin/get-started/what-is-xamarin
https://www.devmedia.com.br/artigo-easy-net-magazine-1-aplicacoes-desktop-no-net/16590
https://docs.microsoft.com/pt-br/visualstudio/ide/quickstart-aspnet-core?view=vs-2019
http://desenvolvimentodejogos.wikidot.com/csharp
O C# usa o conceito de máquina virtual (como o Java).
Em linguagens de programação anteriores (como o C++) o código fonte (o que você escreve) é convertido através do compilador em código binário (o que a máquina entende) sob medida para determinada arquitetura de hardware e sistema operacional.
Caso você precise que este mesmo programa seja executado em outra plataforma, é necessário reescrever parte dele para que ele fique compatível com este novo ambiente.
No C# existe uma camada intermediária entre o sistema operacional e a sua aplicação. Essa máquina virtual deixa o sistema operacional “transparente” para você. Ou seja, você não precisa se preocupar com o ambiente onde seu programa rodará, já que a máquina virtual fará isso por você. Esta máquina virtual é conhecida como CLR (Common Language Runtime).
O compilador C# transforma seu código em uma linguagem intermediária (que é comum a todas as linguagens da plataforma .NET), a CIL (Common Intermediate Language).
Polimorfismo vem do grego e significa “muitas formas”.
Neste conceito, objetos filhos do mesmo objeto pai podem ter comportamentos diferentes para uma mesma mensagem.
Voltando ao nosso exemplo anterior, os objetos PessoaFisica e PessoaJuridica possuem um atributo chamado ValidarDocumento. Como o tipo de documento é diferente de acordo com o tipo de Pessoa, este atributo (apesar do mesmo nome) se comporta de maneira diferente dependendo do documento (CPF ou CNPJ).
Na herança um objeto pode estender todas as características de um outro objeto e ainda possuir suas próprias características.
Como exemplo podemos utilizar os objetos PessoaFisica e PessoaJuridica. Eles possuem características em comum, como nome e endereço. Para evitar a duplicação de código, criamos um objeto chamado Pessoa com nome e endereço. Daí os objetos PessoaFisica e PessoaJuridica podem ser herdeiras do objeto Pessoa.
Assim, os objetos PessoaFisica e PessoaJuridica possuem os atributos nome e endereço (por conta da herança) mas podem possuir características próprias. PessoaFisica tem o atributo CPF e o PessoaJuridica tem o CNPJ.
Encapsulamento, como o nome já diz, consiste em proteger parte do código. Fazer este isolamento facilita a manutenção e torna o software mais flexível. Assim, detalhes internos do funcionamento do objeto ficam ocultos dos demais.
Exemplificando: imagine um objeto chamado Conta que possui uma propriedade saldo. Quando eu quiser mostrar o saldo na tela, eu não preciso saber que tipo de operações ele executa para chegar neste valor. Eu simplesmente peço o saldo e mostro.
É o conceito de, a partir de um objeto real, traduzir suas principais características dentro da aplicação, sem se preocupar com pontos acidentais.
Ou seja, traspor um objeto do mundo real para o mundo virtual através de aspectos relevantes do problema a ser resolvido.
Por exemplo, considere o objeto Cliente. Um cliente no mundo real tem um atributo chamado peso.
Numa aplicação de um banco (tipo conta corrente) meu objeto Cliente não precisa desta propriedade, pois é irrelevante para este tipo de sistema. Mas se estiver desenvolvendo um aplicativo de acompanhamento de dieta? Neste caso o peso é uma propriedade essencial.
A Programação Orientada a Objetos (POO) é um padrão de desenvolvimento. O termo foi criado por Alan Kay, mas as ideias foram utilizadas primeiramente na linguagem Simula 67, de Ole Johan Dahl e Kristen Nygaard, em 1967.
Ela foi criada para tentar representar o mundo real dentro de um programa de computador. A ideia básica é utilizar objetos virtuais para representar objetos reais. Por exemplo: cliente, pedido, país, etc.