• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Boas praticas em_desenvolvimento_de_software
 

Boas praticas em_desenvolvimento_de_software

on

  • 788 views

Apresentação sobre importância de um código bem escrito

Apresentação sobre importância de um código bem escrito

Statistics

Views

Total Views
788
Views on SlideShare
788
Embed Views
0

Actions

Likes
1
Downloads
18
Comments
0

0 Embeds 0

No embeds

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Boas praticas em_desenvolvimento_de_software Boas praticas em_desenvolvimento_de_software Presentation Transcript

    • Boas práticas  em desenvolvimento de software Escrevendo um Código Limpo por Ivan de Assis Leal Palestra
        • Você já perdeu horas tentando entender um código escrito por outra pessoa?
        • Você já presenciou o que deveria ser uma alteração unica e direta, mas que em vez disso teve de ser feita em vários módulos?
      Você se preocupa com seu o código?
    • Se você respondeu "Sim" as estas perguntas então... .... você já teve a má experiência de trabalhar em um código ruim Você se preocupa com o seu código?
    • Você se preocupa com o seu código?
      • Mas hoje temos tantas ferramentas como IDE sofisticadas, Framework fantásticos e tanta tecnologia nova...
      Porque se preocupar em como escrever um código? Basicamente porque.....
    • Você se preocupa com o seu código?
      • Um código mal escrito faz com que...
        • Cada alteração em uma parte gera uma cascata de erros.
        • Cada nova alteração exige que o código seja entendido.
        • O tempo de produtividade de uma equipe seja reduzido ao máximo.
    • Você se preocupa com o seu código?
      • Mas para você ver realmente a importância disto. Veja o que alguns "profissionais" da sua área dizem sobre esta assunto....
      Se você quer ser um programador, entenda a importância de escrever um bom código.
      • Robert C. Martin  
      • Eu sou um distinto professor e titular da Faculdade de Engenharia Presidente em Ciência da Computação na Universidade Texas A & M; Projetei e implementou a linguagem C + + de programação.
      Você se preocupa com o seu código? O que é um bom código para ele? "Deve ser elegante e eficiente....as dependências mínimas para facilitar a manutenção, o tratamento de erro deve ser completo.....O código limpo faz bem apenas uma coisa."
      • Dave Thomas
      • Dave Thomas tem uma vasta experiência na indústria de software, como engenheiro,consultor, arquiteto executivos e investidores.  Ele foi o principal arquiteto visionário e para a  IBM VisualAgeSmalltalk e Java e ferramentas de máquinas virtuais, incluindo o popular open-source, multi-linguagem IDE Eclipse.org. 
      Você se preocupa com  o código? O que ele diz sobre a importância um bom código? "Além de seu criador, um desenvolvedor pode ler e melhorar um código limpo...O código deve ser inteligível..."
      • Ward Cunningham
      •   Criador do conceito "WikiWiki", criado do Fit, co-criador da Programação Extrema (eXtreme Programming) . Líder da Smalltalk e da OO. Pai de todos aqueles que se importam com código.
      Você se preocupa com o seu código? O que ele diz sobre a importância um bom código? "Você sabe que esta criando um código limpo quando cada rotina que você leia se mostra como o que você esperava"
      • Robert C. Martin  
      • Robert C. Martin tem sido um software profissional desde 1970. Nos últimos 35 anos,trabalhou em várias capacidades em literalmente centenas de projetos de software.Ele é autor de "marco" livros sobre Agile Programming, Extreme Programming, UML,Programação Orientada a Objetos e Programação C + +.  Publicou dezenas deartigos em revistas comerciais diversos. Hoje, ele é uma das maiores autoridades da indústria de software no desenvolvimento ágil de software .
      Você se preocupa com o seu código? O que ele diz sobre a importância um bom código? Bem, para Robert apenas cito que ele é autor de um dos livros mais conhecidos sobre o assunto : Código Limpo - Habilidades práticas do Agile Software.
    • Bom, acredito que depois desses depoimentos sobre profissionais com grande experiência sobre o assunto...
      • Você deve estar mais interessado sobre a importância de se preocupar com a escrita de seu código..
      Você se preocupa com o seu código?
    • Você se preocupa com o seu código? Como escrever um bom código (Código Limpo) ? Veja apenas 3 técnicas a seguir..
    • Você se preocupa com o seu código? 1. Nomes Significativos – Utilizando nomes que tenham um significado. Muitos desenvolvedores acham desnecessário pensar em nomes, adequados e significativos sejam para suas variáveis , métodos, classes, tabelas etc.. Porem a utilização de nomes significativos para os membros de nosso sistema são de grande importância para o entendimento do código, principalmente em casos de manutenção. Veja um exemplo:
    • Você se preocupa com o seu código? double Mov = 70.00; double Desc = 8.00; double J = 5.00; double Tot = 0.0; DateTime DTPag = Convert.ToDateTime("15/12/2009");               Responda rápido, o que será que armazenam as variáveis abaixo: Ah! Com alguns minutos de seu tempo é um pouco de esforço pelo menos algumas delas ficam fáceis de ser entendidas.   Mas esse esforço não precisaria existir se elas tivessem esses nomes....
      • double valorMovimento =  70.00;
      • double valorDesconto = 8.00;
      • double porcentagemJuro = 5.00;
      • double valorTotalMovimento = 0.0;                            
      • DateTime dataPagamentoMovimento = Convert.ToDateTime("15/12/2009");
      • bool isPagementoAtrasado = false;
      • string mensagem = "";
      Você se preocupa com o seu código? Acredito que agora ficou mais fácil saber o que cada variável trata, por apenas utilizar  Nomes Significativos – Utilizando nomes que tenham um significado.
    • Você se preocupa com o seu código? 2. Nomes significativos – Nomes Pronunciáveis A utilização de nomes que podem ser facilmente pronunciáveis é um regra bastante útil principalmente ao trabalhar em equipe. Certamente precisamos em determinado ponto da codificação trocar idéias com outros desenvolvedores. Imagine a conversa entre 2 desenvolvedores sobre um algoritmo que possua as 3 variáveis abaixo. DateTime dtUltCompProd; DateTime dtLimPagImpSJr; decimal valMedCompUltSeisMs; 
      • Seria algo como:
      • “ Fulano como você faz para pegar o valor de dêtê-Ultê-Compê-Próde , você por acaso usa a dêtê-Lim-Pague-Impe-S-JotaR para chegar nesse valor ?. 
      • Outra coisa percebi tambem a variável val-Médi-Compê-Ultê-Seis-Ms o para que serve ela?”
      Você se preocupa com o seu código?
      • Complicado não, poderíamos tornar a conversa um pouco mais inteligente alterando os nomes das variáveis.
      • DateTime dataDaUltimaCompraDoProduto;
      • DateTime dataLimiteDoPagamentoSemJuros;
      • decimal valorMedioDaCompraDosUltimoSeisMeses;
      • Agora essa conversa ficaria bem melhor, algo como....
      Você se preocupa com o seu código?
      • “ Fulano como você faz para pegar o valor da dataDaUltimaCompraDoProduto , você por acaso usa a dataLimiteDePagamentoSemJuros para chegar nesse valor ?
      • Outra coisa percebi tambem a variável valorMedioDaCompraNosUltimoSeisMeses para que serve ela?”
      • Bem mais fácil de entender. Por isso use  Nomes significativos – Nomes Pronunciáveis
      Você se preocupa com o seu código?
      • Vamos a terceira técnica.
      • 3. Nomes Significativos – Uma palavra por conceito
      • Procure utilizar a regra de uma “palavra por conceito” e se apegue a essa palavra, evite usar palavras diferentes para o mesmo conceito como pegar,recuperar e obter. Por exemplo veja o código das classes a seguir.....
      Você se preocupa com o seu código?
      • public class Banco
      • { public bool Salvar() { // Código para Persistir um Banco return false; } }
      Você se preocupa com o seu código? p ublic class Endereco { public bool Gravar() { // Código para Persistir um Endereco return false; } } No exemplo acima possuímos 2 classes com métodos em comum – persistir um objeto no banco de dados – mas observe que para cada classes foi utilizado um nome diferente para o método equivalente. Assim ao definir uma palavra para um conceito abstrato, se apegue a esta palavra e utilize em todo o código.
      • Bem considerei apenas 3 técnicas para tornar seus código limpo e  conseqüentemente  um melhor programador.....
      • Mas existem muitas outras técnicas que você pode aprender e colocar em prática.. 
      • Sugiro que você pesquisa mais sobre os assuntos a seguir....
      Você se preocupa com o seu código?
      • Pesquise sobre....
        • Como escreve comentários significativos.
        • Formatação de Código.
        • Não uso de notações Húngara.
        • Refactoring 
      • Para seu estudo como excelente programador sugiro os livros a seguir....
      Você se preocupa com o seu código?
    • Você se preocupa com o seu código?
    • Você se preocupa com o seu código?
      • Se a grana está curta, você estudar com o conteúdo dos sites abaixo:
        • http://www.refactoring.com/catalog/index.html
        • http://sourcemaking.com/
        • http://blog.setforcode.com/  :)
    • Obrigado!
      • Ivan de Assis Leal
      • Dúvidas ou críticas : ivanassisleal@gmail.com
      http://twitter.com/lealivan http://www.linkedin.com/pub/ivan-assis-leal/20/716/17 http://blog.setforcode.com/ Esta apresentação teve como base o livro já cidtado, Código Limpo - Habilidades práticas do Agile Software.