Orientação a Objetos em C# Conceitos e implementações em .NET
Everton Coimbra de AraújoConteúdo
Nas últimas décadas, o paradigma da Orientação a Objetos tem servido como alicerce para o desenvolvimento de uma ampla gama de linguagens de programação e de ambientes integrados para o desenvolvimento de sistemas informatizados. É necessária uma compreensão profunda dos conceitos inerentes a este moderno paradigma, bem como saber aplicá-los na prática, para que se consiga maximizar seus benefícios: produzir sistemas bem-estruturados, com boa manutenibilidade e alta produtividade.
Neste livro, Everton Coimbra aborda os elementos conceituais da Orientação a Objetos, demonstrando uma implementação prática na linguagem de programação C#, ilustrada passo a passo no Visual Studio. Você estudará os princípios da Orientação a Objetos com a linguagem C#, como associações, herança e polimorfismo, acesso ao banco de dados SQL Server por meio do ADO.NET e ainda terá introdução a Padrões de Projeto e ao desenvolvimento de aplicações desktop com uma solução em camadas, fazendo uso do Entity Framework Core.
Sumário
- 1 Introdução à Orientação a Objetos
- 1.1 Alguns componentes da Orientação a Objetos
- 1.2 Características da Orientação a Objetos
- 1.3 A escolha da plataforma e da linguagem
- 1.4 Conclusão sobre as atividades realizadas no capítulo
- 2 Iniciando a implementação em Orientação a Objetos
- 2.1 A primeira classe
- 2.2 Tipos de dados
- 2.3 Uma aplicação de teste e início com o Visual Studio
- 2.4 Execução da classe de teste
- 2.5 Outros exemplos de classes
- 2.6 Conclusão sobre as atividades realizadas no capítulo
- 3 Associações e inicialização de objetos
- 3.1 Identificação e implementação de associações
- 3.2 Teste das associações
- 3.3 A inicialização de objetos
- 3.4 Composição como associação
- 3.5 Outros exemplos de associações
- 3.6 Conclusão sobre as atividades realizadas no capítulo
- 4 Coleções, agregação, identidade e recuperação de objetos
- 4.1 O uso de coleções
- 4.2 A identidade de um objeto
- 4.3 Agregação como associação
- 4.4 Recuperação de objetos de uma coleção por meio do LINQ
- 4.5 Outros exemplos com coleções
- 4.6 Conclusão sobre as atividades realizadas no capítulo
- 5 Herança, polimorfismo e exceção
- 5.1 Herança por extensão
- 5.2 Herança por implementação, com interfaces e polimorfismo
- 5.3 Exceções
- 5.4 Sobrecarga e sobreposição de métodos
- 5.5 Outro exemplo com herança por extensão
- 5.6 Outro exemplo com herança por implementação
- 5.7 Comentários adicionais para polimorfismo, sobrecarga, sobreposição e exceções
- 5.8 Mas então? Herança ou composição?
- 5.9 Conclusão sobre as atividades realizadas no capítulo
- 6 Orientação a Objetos e Padrões de Projeto
- 6.1 O padrão comportamental Strategy
- 6.2 O padrão comportamental Chain of Responsibility
- 6.3 Conclusão sobre as atividades realizadas no capítulo
- 7 Solução dividida em camadas
- 7.1 Contextualização sobre as camadas
- 7.2 Os projetos que representarão as camadas
- 7.3 Implementação da interação com o usuário
- 7.4 Modificadores de acesso/escopo e encapsulamento
- 7.5 Conclusão sobre as atividades realizadas no capítulo
- 8 Acesso a banco de dados
- 8.1 Introdução ao ADO.NET e criação da base utilizando o Visual Studio
- 8.2 Realizando operações relacionadas ao CRUD em uma tabela de dados
- 8.3 Conclusão sobre as atividades realizadas no capítulo
- 9 O Entity Framework Core como ferramenta para mapeamento objeto-relacional na persistência
- 9.1 Criação do projeto para a aplicação do EF Core
- 9.2 Recuperando dados com o EF Core
- 9.3 Gravação na base de dados
- 9.4 Associações com o EF Core
- 9.5 Dados de teste para nossa base de dados
- 9.6 A interface com o usuário para a associação
- 9.7 Fechando as funcionalidades para um CRUD com associação
- 9.8 Conclusão sobre as atividades realizadas no capítulo
- 10 Conclusão e caminhos futuros
Autor
Everton Coimbra de Araújo
Everton Coimbra de Araújo atua na área de treinamento e desenvolvimento. É tecnólogo em processamento de dados pelo Centro de Ensino superior de Foz do Iguaçu, possui mestrado em Ciência da Computação pela UFSC e doutorado pela UNIOESTE em Engenharia Agrícola. É professor da Universidade Tecnológica Federal do Paraná (UTFPR), possui experiência na área de Ciência da Computação, com ênfase em Análise e Desenvolvimento de Sistemas, atuando principalmente nos seguintes temas: Desenvolvimento Web com Java e .NET, Persistência de Objetos e desenvolvimento de aplicativos para dispositivos móveis.
Dados do produto
- Número de páginas:
- 236
- ISBN:
- 978-65-86110-00-5
- Data publicação:
- 11/2017. Atualizado em 03/2020.