Quer ter acesso a todos os cursos desse Guia?
Padrões de projeto e arquitetura em .NET
Neste guia de consulta você encontrará diversos conteúdos sobre padrões de projeto e arquitetura e como aplicá-los em suas aplicações .NET, tais como os padrões GoF e Domain-Driven Design.
Introdução
Padrões de Projeto são soluções catalogadas para problemas/situações comuns do desenvolvimento de software. Baseados em experiências prévias, os padrões definem como partes do software devem ser definidas a fim de resolver certos problemas ou de evitá-los.
O curso abaixo é um excelente ponto de partida para você que deseja aprender sobre os principais padrões empregados atualmente:

Ver grade completa
Já os artigos abaixo mostram como aplicar os padrões mais adequados em projetos ASP.NET e na camada de negócios das suas aplicações:
Primeiros passos com C#
C# é uma linguagem orientada a objeto com a qual podemos criar aplicações desktop, mobile e web. Para dar início ao seu aprendizado, trabalharemos em uma aplicação prática que será construída passo a passo, utilizando estruturas básicas do C#.

Ver grade completa

Ver grade completa
Padrões GoF
GoF, sigla de Gang of Four, é o nome dado ao conjunto de padrões especificados por um grupo de quatro engenheiros de software e publicados no livro Padrões de Projeto: Soluções Reutilizáveis de Software Orientado a Objetos. Ao todo são 23 padrões divididos em três categorias, que você pode conhecer melhor nos artigos abaixo:
Padrões criacionais
Os padrões criacionais, como o nome sugere, tratam da forma como os objetos são criados no software, o que pode envolver técnicas específicas para cada situação. Veja na prática como utilizá-los em C#:
-
ArtigoConheça o Design Pattern Singleton
Ver introdução
Quer ter acesso completo a todos os conteúdos?Saiba mais -
ArtigoAplicando os padrões Builder, Singleton e Prototype
Ver introdução
Quer ter acesso completo a todos os conteúdos?Saiba mais -
ArtigoUtilizando Abstract Factory e Factory Method
Ver introdução
Quer ter acesso completo a todos os conteúdos?Saiba mais
Padrões estruturais
Os padrões estruturais tratam da forma como os objetos se relacionam, promovendo o baixo acoplamento e flexibilidade na estrutura do projeto:
-
ArtigoAplicando os padrões Flyweight e Decorator
Ver introdução
Quer ter acesso completo a todos os conteúdos?Saiba mais -
ArtigoPadrão de Projeto Proxy em .NET
Ver introdução
free
Padrões comportamentais
Os padrões comportamentais organizam a forma como os objetos funcionam, suas responsabilidades e como eles se comunicam dentro de um contexto:
-
ArtigoComo implementar o Design Pattern Observer no .NET
Ver introdução
free -
DevCastPadrão de Projeto State na prática com .NETQuer ter acesso completo a todos os conteúdos?Saiba mais
-
ArtigoPadrões comportamentais no MVC
Ver introdução
Quer ter acesso completo a todos os conteúdos?Saiba mais -
ArtigoPadrões Command e outros Patterns na prática Novo!
Ver introdução
Quer ter acesso completo a todos os conteúdos?Saiba mais
Outros padrões
Os padrões de projeto não se resumem àqueles documentados no livro da GoF. Existem vários outros que se propõem a atender diferentes situações, mas sempre pensando na qualidade do código.
Abaixo você encontra artigos que lhe apresentarão alguns desses padrões:
-
ArtigoConhecendo o padrão Event Aggregator
Ver introdução
Quer ter acesso completo a todos os conteúdos?Saiba mais -
ArtigoDAL Design Patterns: Unit of Work e Repository
Ver introdução
Quer ter acesso completo a todos os conteúdos?Saiba mais -
ArtigoDesenvolvimento com qualidade com GRASP
Ver introdução
Quer ter acesso completo a todos os conteúdos?Saiba mais
Domain-Driven Design
Domain-Driven Design, ou DDD, é uma metodoogia/abordagem que guia o desenvolvimento da aplicação a partir do seu domínio. Ou seja, ao invés de partir das características dos frameworks ou banco de dados que serão utilizados, o DDD propõe que o desenvolvimento se concentre no domínio do problema que o software pretende resolver e, a partir disso, defina os próximos passos.
Documentado inicialmente no livro Domain-Driven Design: Atacando As Complexidades No Coração do Software de Eric Evans, o DDD define diversos termos e sugestões de arquitetura para a criação de aplicações com domínio complexo. Se você está tendo o primeiro contato com essa abordagem, consulte os links abaixo:
-
ArtigoIntrodução ao DDD em .NET
Ver introdução
free -
DevCastDomain-Driven Design: Desenvolva aplicações com qualidadeQuer ter acesso completo a todos os conteúdos?Saiba mais
Já os artigos a seguir trazem um contéudo mais prático sobre a aplicação do DDD em projetos .NET:
-
ArtigoDDD em ASP.NET: Criando um repositório de dados
Ver introdução
Quer ter acesso completo a todos os conteúdos?Saiba mais -
ArtigoDomain-Driven Design: Refatorando a arquitetura de aplicações
Ver introdução
Quer ter acesso completo a todos os conteúdos?Saiba mais -
ArtigoDDD com ASP.NET MVC e AngularJS: Criando Single Page Applications
Ver introdução
Quer ter acesso completo a todos os conteúdos?Saiba mais
E abaixo temos mais alguns conteúdos que abordam boas práticas e técnicas de testes usando o DDD:
-
ArtigoAplicando DDD e TDD em conjunto
Ver introdução
Quer ter acesso completo a todos os conteúdos?Saiba mais -
ArtigoComo criar aplicações com DDD, TDD e IoC
Ver introdução
Quer ter acesso completo a todos os conteúdos?Saiba mais -
ArtigoInjeção de Dependências com Microsoft Unity e DDD
Ver introdução
Quer ter acesso completo a todos os conteúdos?Saiba mais
Programação reativa
Programação reativa é um paradigma que lida com a contínua mudança de mensagens e suas notificações, permitindo que o desenvolvedor possa lidar com sistemas de mensageria de alta velocidade que manipulam diversos tipos de mensagens. No artigo a seguir você poderá conhecer seus principais conceitos, o manifesto reativo, bem como as formas como a Microsoft abraça o mundo reativo em suas soluções:

Ver introdução
Programação serverless
Computação serverless, em termos rápidos, é um modelo de execução de código onde a lógica do lado servidor se dá de forma stateless, isto é, sem estado, a partir de gatilhos (triggers), e via containers que são totalmente gerenciados por um terceiro. No artigo a seguir você poderá conhecer na prática como a computação serverless entraria em sua aplicação, dando uma olhada em uma arquitetura clássica de três camadas:

Ver introdução
Mais sobre .NET
Além dos cursos e exemplos sugeridos nesse guia, a DevMedia publica com frequência novos conteúdos sobre .NET, os quais você pode conferir nos Guias de Consulta abaixo:
-
Guia de carreiraProgramador .NET Guiafree
-
Guia de consultaLinguagem C# Guiafree
-
Guia de consultaAcesso a bancos de dados em .NET Guiafree
-
Guia de consultaAplicações web com ASP.NET MVC Guiafree
-
Guia de consultaWeb services RESTful com ASP.NET Web API Guiafree
Além disso, você pode conferir todo o conteúdo de .NET clicando aqui.
<Perguntas frequentes>