SlideShare uma empresa Scribd logo
1 de 9
C# Limpo: poupando recursos importantes
devido a um código mal escrito!
Yan Justino, desenvolvedor sênior
Tec-Soft Informática LTDA
@yanjustino


Visual Studio Summit 2012
CLAREZA E SIMPLICIDADE
Qualquer um pode escrever código que um
computador possa entender. Bons
programadores escrevem código
que humanos podem entender Martin Fowler

Visual Studio Summit 2012
CUSTO DE TER UM                   PRODUTIVIDADE X TEMPO
                                          Série 1

CÓDIGO CONFUSO              100
                                   80
                                          60
                                                    20
                                                          0
                            1      2       3        4     5




Visual Studio Summit 2012
NÃO BASTA ESCREVER
UM CÓDIGO BOM
Ele precisa ser mantido sempre limpo.




Visual Studio Summit 2012
REGRA DOS ESCOTEIROS
Deixe a área do acampamento mais Limpa do que como
você a encontrou!




Visual Studio Summit 2012
VISUAL STUDIO!!!
Ferramenta para lhe auxiliar na
gestão do seu código




Visual Studio Summit 2012
FONTES:




Visual Studio Summit 2012
OBRIGADO!!!
yanjustino.com




Visual Studio Summit 2012
Visual Studio Summit 2012

Mais conteúdo relacionado

Destaque

Angular - Ruby Morning
Angular - Ruby MorningAngular - Ruby Morning
Angular - Ruby MorningYan Justino
 
Community webcast
Community webcastCommunity webcast
Community webcastYan Justino
 
Vssummit 2016 - DDD em cenários corporativos
Vssummit 2016 - DDD em cenários corporativosVssummit 2016 - DDD em cenários corporativos
Vssummit 2016 - DDD em cenários corporativosYan Justino
 
GDG NATAL - Dart Flight School
GDG NATAL - Dart Flight SchoolGDG NATAL - Dart Flight School
GDG NATAL - Dart Flight SchoolYan Justino
 
Si - Segurança da Informação
Si - Segurança da InformaçãoSi - Segurança da Informação
Si - Segurança da InformaçãoYan Justino
 
Introdução ao Aspnet Core
Introdução ao Aspnet CoreIntrodução ao Aspnet Core
Introdução ao Aspnet CoreYan Justino
 
ARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDO
ARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDOARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDO
ARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDOYan Justino
 
Padroes de projetos gof
Padroes de projetos gofPadroes de projetos gof
Padroes de projetos gofYan Justino
 
Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...
Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...
Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...Yan Justino
 
Bounded Context e CQRS na evolução de aplicações .NET legadas
Bounded Context e CQRS na evolução de aplicações .NET legadasBounded Context e CQRS na evolução de aplicações .NET legadas
Bounded Context e CQRS na evolução de aplicações .NET legadasYan Justino
 
Atacando as complexidades no coração do software
Atacando as complexidades no coração do softwareAtacando as complexidades no coração do software
Atacando as complexidades no coração do softwareYan Justino
 

Destaque (13)

Angular
AngularAngular
Angular
 
Angular - Ruby Morning
Angular - Ruby MorningAngular - Ruby Morning
Angular - Ruby Morning
 
Community webcast
Community webcastCommunity webcast
Community webcast
 
Vssummit 2016 - DDD em cenários corporativos
Vssummit 2016 - DDD em cenários corporativosVssummit 2016 - DDD em cenários corporativos
Vssummit 2016 - DDD em cenários corporativos
 
GDG NATAL - Dart Flight School
GDG NATAL - Dart Flight SchoolGDG NATAL - Dart Flight School
GDG NATAL - Dart Flight School
 
Si - Segurança da Informação
Si - Segurança da InformaçãoSi - Segurança da Informação
Si - Segurança da Informação
 
Apresentação
ApresentaçãoApresentação
Apresentação
 
Introdução ao Aspnet Core
Introdução ao Aspnet CoreIntrodução ao Aspnet Core
Introdução ao Aspnet Core
 
ARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDO
ARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDOARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDO
ARQUITETURAS PERFEITAS E O PORQUÊ SEU PROJETO NASCEU FALIDO
 
Padroes de projetos gof
Padroes de projetos gofPadroes de projetos gof
Padroes de projetos gof
 
Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...
Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...
Pense fora da caixa: Aplique Agilidade com Domain Driven Design. Você ainda u...
 
Bounded Context e CQRS na evolução de aplicações .NET legadas
Bounded Context e CQRS na evolução de aplicações .NET legadasBounded Context e CQRS na evolução de aplicações .NET legadas
Bounded Context e CQRS na evolução de aplicações .NET legadas
 
Atacando as complexidades no coração do software
Atacando as complexidades no coração do softwareAtacando as complexidades no coração do software
Atacando as complexidades no coração do software
 

Semelhante a C# limpo

TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...
TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...
TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...tdc-globalcode
 
Visual Studio Summit 2012 - Novidades do Visual Studio 2012 Express
Visual Studio Summit 2012 - Novidades do Visual Studio 2012 ExpressVisual Studio Summit 2012 - Novidades do Visual Studio 2012 Express
Visual Studio Summit 2012 - Novidades do Visual Studio 2012 ExpressRogério Rodrigues
 
Apresentacao IzCode Web
Apresentacao IzCode  WebApresentacao IzCode  Web
Apresentacao IzCode Webjoaopauloaos
 
Implantando Continuous Delivery com TFS
Implantando Continuous Delivery com TFSImplantando Continuous Delivery com TFS
Implantando Continuous Delivery com TFSAndré Dias
 
Visual Studio 2013 - Recursos da IDE
Visual Studio 2013 - Recursos da IDEVisual Studio 2013 - Recursos da IDE
Visual Studio 2013 - Recursos da IDEStefanini
 
TDC2018SP | Trilha Arq .Net - Clean Architecture com .NET Core 2.0
TDC2018SP | Trilha Arq .Net - Clean Architecture com .NET Core 2.0TDC2018SP | Trilha Arq .Net - Clean Architecture com .NET Core 2.0
TDC2018SP | Trilha Arq .Net - Clean Architecture com .NET Core 2.0tdc-globalcode
 
Android DevConference - Aumentando sua produtividade no Android Studio
Android DevConference - Aumentando sua produtividade no Android StudioAndroid DevConference - Aumentando sua produtividade no Android Studio
Android DevConference - Aumentando sua produtividade no Android StudioiMasters
 
A Importância do Código Limpo na Perspectiva dos Desenvolvedores e Empresas d...
A Importância do Código Limpo na Perspectiva dos Desenvolvedores e Empresas d...A Importância do Código Limpo na Perspectiva dos Desenvolvedores e Empresas d...
A Importância do Código Limpo na Perspectiva dos Desenvolvedores e Empresas d...Joberto Diniz
 
Visual Studio Summit 2012 - Team Foundation Server 2012 Express
Visual Studio Summit 2012 - Team Foundation Server 2012 ExpressVisual Studio Summit 2012 - Team Foundation Server 2012 Express
Visual Studio Summit 2012 - Team Foundation Server 2012 ExpressRogério Rodrigues
 
APLICATIVO EDITORIAL PARA EAD
APLICATIVO EDITORIAL PARA EADAPLICATIVO EDITORIAL PARA EAD
APLICATIVO EDITORIAL PARA EADdualpixel
 
Dicas e Truques para aumentar sua produtividade no Visual Studio
Dicas e Truques para aumentar sua produtividade no Visual StudioDicas e Truques para aumentar sua produtividade no Visual Studio
Dicas e Truques para aumentar sua produtividade no Visual StudioLetticia Nicoli
 
Visual Studio 2010
Visual Studio 2010Visual Studio 2010
Visual Studio 2010Waldyr Felix
 

Semelhante a C# limpo (20)

TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...
TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...
TDC2018FLN | Trilha Python - Do código à produção em projetos Python usando G...
 
Clean Architecture com .NET Core
Clean Architecture com .NET CoreClean Architecture com .NET Core
Clean Architecture com .NET Core
 
Visual Studio Summit 2012 - Novidades do Visual Studio 2012 Express
Visual Studio Summit 2012 - Novidades do Visual Studio 2012 ExpressVisual Studio Summit 2012 - Novidades do Visual Studio 2012 Express
Visual Studio Summit 2012 - Novidades do Visual Studio 2012 Express
 
Apresentacao IzCode Web
Apresentacao IzCode  WebApresentacao IzCode  Web
Apresentacao IzCode Web
 
Implantando Continuous Delivery com TFS
Implantando Continuous Delivery com TFSImplantando Continuous Delivery com TFS
Implantando Continuous Delivery com TFS
 
IzCode FactSheet
IzCode   FactSheetIzCode   FactSheet
IzCode FactSheet
 
Visual Studio 2013 - Recursos da IDE
Visual Studio 2013 - Recursos da IDEVisual Studio 2013 - Recursos da IDE
Visual Studio 2013 - Recursos da IDE
 
Arquitetura Limpa em .NET Core
Arquitetura Limpa em .NET CoreArquitetura Limpa em .NET Core
Arquitetura Limpa em .NET Core
 
TDC2018SP | Trilha Arq .Net - Clean Architecture com .NET Core 2.0
TDC2018SP | Trilha Arq .Net - Clean Architecture com .NET Core 2.0TDC2018SP | Trilha Arq .Net - Clean Architecture com .NET Core 2.0
TDC2018SP | Trilha Arq .Net - Clean Architecture com .NET Core 2.0
 
Msp workshop
Msp workshopMsp workshop
Msp workshop
 
Cs6+ccm+flas hbr2
Cs6+ccm+flas hbr2Cs6+ccm+flas hbr2
Cs6+ccm+flas hbr2
 
São Paulo MuleSoft Meetups - DevOps
São Paulo MuleSoft Meetups - DevOpsSão Paulo MuleSoft Meetups - DevOps
São Paulo MuleSoft Meetups - DevOps
 
Android DevConference - Aumentando sua produtividade no Android Studio
Android DevConference - Aumentando sua produtividade no Android StudioAndroid DevConference - Aumentando sua produtividade no Android Studio
Android DevConference - Aumentando sua produtividade no Android Studio
 
Iniciando com .NET no VS 2012
Iniciando com .NET no VS 2012Iniciando com .NET no VS 2012
Iniciando com .NET no VS 2012
 
A Importância do Código Limpo na Perspectiva dos Desenvolvedores e Empresas d...
A Importância do Código Limpo na Perspectiva dos Desenvolvedores e Empresas d...A Importância do Código Limpo na Perspectiva dos Desenvolvedores e Empresas d...
A Importância do Código Limpo na Perspectiva dos Desenvolvedores e Empresas d...
 
Visual Studio Summit 2012 - Team Foundation Server 2012 Express
Visual Studio Summit 2012 - Team Foundation Server 2012 ExpressVisual Studio Summit 2012 - Team Foundation Server 2012 Express
Visual Studio Summit 2012 - Team Foundation Server 2012 Express
 
APLICATIVO EDITORIAL PARA EAD
APLICATIVO EDITORIAL PARA EADAPLICATIVO EDITORIAL PARA EAD
APLICATIVO EDITORIAL PARA EAD
 
Cs6+ccm+flas hbr4
Cs6+ccm+flas hbr4Cs6+ccm+flas hbr4
Cs6+ccm+flas hbr4
 
Dicas e Truques para aumentar sua produtividade no Visual Studio
Dicas e Truques para aumentar sua produtividade no Visual StudioDicas e Truques para aumentar sua produtividade no Visual Studio
Dicas e Truques para aumentar sua produtividade no Visual Studio
 
Visual Studio 2010
Visual Studio 2010Visual Studio 2010
Visual Studio 2010
 

Mais de Yan Justino

TDC Future - comunidade XP - Abraçando a variedade de padrões de arquitetura...
TDC Future - comunidade XP -  Abraçando a variedade de padrões de arquitetura...TDC Future - comunidade XP -  Abraçando a variedade de padrões de arquitetura...
TDC Future - comunidade XP - Abraçando a variedade de padrões de arquitetura...Yan Justino
 
Criando multi-agent systems com .net Hosted Services
Criando multi-agent systems com .net Hosted ServicesCriando multi-agent systems com .net Hosted Services
Criando multi-agent systems com .net Hosted ServicesYan Justino
 
LIVE: BDD, GWTDO e Specification Matching no .NET
LIVE: BDD, GWTDO e Specification Matching no .NETLIVE: BDD, GWTDO e Specification Matching no .NET
LIVE: BDD, GWTDO e Specification Matching no .NETYan Justino
 
Evitando o declínio arquitetural de suas aplicações na velocidade de desenvol...
Evitando o declínio arquitetural de suas aplicações na velocidade de desenvol...Evitando o declínio arquitetural de suas aplicações na velocidade de desenvol...
Evitando o declínio arquitetural de suas aplicações na velocidade de desenvol...Yan Justino
 
Modernizando sistemas e-Gov legados: um relato sobre adoção de microservices ...
Modernizando sistemas e-Gov legados: um relato sobre adoção de microservices ...Modernizando sistemas e-Gov legados: um relato sobre adoção de microservices ...
Modernizando sistemas e-Gov legados: um relato sobre adoção de microservices ...Yan Justino
 
Palestra TDC POA 2018 - Reengenharia de aplicações asp.net legadas para arqui...
Palestra TDC POA 2018 - Reengenharia de aplicações asp.net legadas para arqui...Palestra TDC POA 2018 - Reengenharia de aplicações asp.net legadas para arqui...
Palestra TDC POA 2018 - Reengenharia de aplicações asp.net legadas para arqui...Yan Justino
 
Modernizando plataformas eGovernment: migração do sistema Uvt
Modernizando plataformas eGovernment: migração do sistema UvtModernizando plataformas eGovernment: migração do sistema Uvt
Modernizando plataformas eGovernment: migração do sistema UvtYan Justino
 
Modernizando plataformas e-Government : Lições e Método
Modernizando plataformas e-Government : Lições e MétodoModernizando plataformas e-Government : Lições e Método
Modernizando plataformas e-Government : Lições e MétodoYan Justino
 
DocumentDb: escalando sua aplicação
DocumentDb: escalando sua aplicaçãoDocumentDb: escalando sua aplicação
DocumentDb: escalando sua aplicaçãoYan Justino
 
Fundamentos ORM com entityframework
Fundamentos ORM com entityframeworkFundamentos ORM com entityframework
Fundamentos ORM com entityframeworkYan Justino
 

Mais de Yan Justino (10)

TDC Future - comunidade XP - Abraçando a variedade de padrões de arquitetura...
TDC Future - comunidade XP -  Abraçando a variedade de padrões de arquitetura...TDC Future - comunidade XP -  Abraçando a variedade de padrões de arquitetura...
TDC Future - comunidade XP - Abraçando a variedade de padrões de arquitetura...
 
Criando multi-agent systems com .net Hosted Services
Criando multi-agent systems com .net Hosted ServicesCriando multi-agent systems com .net Hosted Services
Criando multi-agent systems com .net Hosted Services
 
LIVE: BDD, GWTDO e Specification Matching no .NET
LIVE: BDD, GWTDO e Specification Matching no .NETLIVE: BDD, GWTDO e Specification Matching no .NET
LIVE: BDD, GWTDO e Specification Matching no .NET
 
Evitando o declínio arquitetural de suas aplicações na velocidade de desenvol...
Evitando o declínio arquitetural de suas aplicações na velocidade de desenvol...Evitando o declínio arquitetural de suas aplicações na velocidade de desenvol...
Evitando o declínio arquitetural de suas aplicações na velocidade de desenvol...
 
Modernizando sistemas e-Gov legados: um relato sobre adoção de microservices ...
Modernizando sistemas e-Gov legados: um relato sobre adoção de microservices ...Modernizando sistemas e-Gov legados: um relato sobre adoção de microservices ...
Modernizando sistemas e-Gov legados: um relato sobre adoção de microservices ...
 
Palestra TDC POA 2018 - Reengenharia de aplicações asp.net legadas para arqui...
Palestra TDC POA 2018 - Reengenharia de aplicações asp.net legadas para arqui...Palestra TDC POA 2018 - Reengenharia de aplicações asp.net legadas para arqui...
Palestra TDC POA 2018 - Reengenharia de aplicações asp.net legadas para arqui...
 
Modernizando plataformas eGovernment: migração do sistema Uvt
Modernizando plataformas eGovernment: migração do sistema UvtModernizando plataformas eGovernment: migração do sistema Uvt
Modernizando plataformas eGovernment: migração do sistema Uvt
 
Modernizando plataformas e-Government : Lições e Método
Modernizando plataformas e-Government : Lições e MétodoModernizando plataformas e-Government : Lições e Método
Modernizando plataformas e-Government : Lições e Método
 
DocumentDb: escalando sua aplicação
DocumentDb: escalando sua aplicaçãoDocumentDb: escalando sua aplicação
DocumentDb: escalando sua aplicação
 
Fundamentos ORM com entityframework
Fundamentos ORM com entityframeworkFundamentos ORM com entityframework
Fundamentos ORM com entityframework
 

C# limpo