Artesanato de  Software   Edson Yanaga   @edsonyanaga
Software é uma arte
Ou não é?
É linha de produção?
Deus?
O que você sabe/aprendeu sobre      OO?
Herança
HerançaPolimorfismo
Herança PolimorfismoEncapsulamento
Encapsulamento Polimorfismo   Herança
Encapsulamento    Polimorfismo      Herança
Encapsulamento    Polimorfismo        Herança
public class Pessoa {	   private String nome;		   private String cpf;		   private String telefone;		   private Date nascim...
public class Pessoa {	   private String nome;		   private Cpf cpf;		   private Telefone telefone;		   private Date nascime...
public class Conta {	 private BigDecimal saldo = new BigDecimal("0.00");	 public BigDecimal getSaldo() {	 	 return saldo;	...
public class ContaService {	   public void somar(Conta conta, BigDecimal valor) {	   	 if (conta == null) {	   	 	 throw n...
public class Conta {	 private BigDecimal saldo = new BigDecimal("0.00");	   public BigDecimal getSaldo() {	   	 return sal...
public class ContaService {	   public void somarValorNaConta(Conta conta, BigDecimal valor) {	   	 checkNotNull(conta);	  ...
Software melhor, mundo melhor
Edson Yanaga edson@yanaga.com.br    @edsonyanaga  www.yanaga.com.br
Artesanato de software
Artesanato de software
Artesanato de software
Upcoming SlideShare
Loading in...5
×

Artesanato de software

489

Published on

Uma pequena introdução sobre alguns conceitos de

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total Views
489
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
3
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Artesanato de software

  1. 1. Artesanato de Software Edson Yanaga @edsonyanaga
  2. 2. Software é uma arte
  3. 3. Ou não é?
  4. 4. É linha de produção?
  5. 5. Deus?
  6. 6. O que você sabe/aprendeu sobre OO?
  7. 7. Herança
  8. 8. HerançaPolimorfismo
  9. 9. Herança PolimorfismoEncapsulamento
  10. 10. Encapsulamento Polimorfismo Herança
  11. 11. Encapsulamento Polimorfismo Herança
  12. 12. Encapsulamento Polimorfismo Herança
  13. 13. public class Pessoa { private String nome; private String cpf; private String telefone; private Date nascimento;}
  14. 14. public class Pessoa { private String nome; private Cpf cpf; private Telefone telefone; private Date nascimento;}
  15. 15. public class Conta { private BigDecimal saldo = new BigDecimal("0.00"); public BigDecimal getSaldo() { return saldo; } public void setSaldo(BigDecimal saldo) { this.saldo = saldo; }}
  16. 16. public class ContaService { public void somar(Conta conta, BigDecimal valor) { if (conta == null) { throw new IllegalArgumentException("Conta não pode ser nula!"); } if (valor == null) { throw new IllegalArgumentException("Valor não pode ser nulo!"); } BigDecimal saldo = conta.getSaldo(); if (saldo == null) { saldo = new BigDecimal("0.00"); } saldo = saldo.add(valor); conta.setSaldo(saldo); } }
  17. 17. public class Conta { private BigDecimal saldo = new BigDecimal("0.00"); public BigDecimal getSaldo() { return saldo; } public Conta somar(BigDecimal valor) { checkNotNull(valor); saldo = saldo.add(valor); return this; }}
  18. 18. public class ContaService { public void somarValorNaConta(Conta conta, BigDecimal valor) { checkNotNull(conta); conta.somar(valor); } }
  19. 19. Software melhor, mundo melhor
  20. 20. Edson Yanaga edson@yanaga.com.br @edsonyanaga www.yanaga.com.br
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×