Successfully reported this slideshow.
We use your LinkedIn profile and activity data to personalize ads and to show you more relevant ads. You can change your ad preferences anytime.

Como Apresentar Codigo em Slides - Javou #7 - 2016

22,107 views

Published on

Todo programador cedo ou tarde deverá apresentar código em slides no trabalho, na faculdade ou em um evento. O problema é que apresentar código é bem diferente de escrevê-lo no seu editor preferido. Basta escolher o tamanho de fonte errada e você perde toda a atenção do seu público.

Para você não cair nessa armadilha, eu apresento 5 dicas matadoras para você apresentar código em slides de forma simples e eficiente. As dicas vão desde o tipo de fonte até tamanho e cores.

Esta palestra foi inspirada na palestra "How to present code in slides" do grande @myfear, https://twitter.com/myfear/status/727391833123336192

Perdeu a palestra? Segue resumo de cada uma das dicas: http://blog.triadworks.com.br/como-apresentar-codigo-em-slides

Published in: Technology

Como Apresentar Codigo em Slides - Javou #7 - 2016

  1. 1. Como Apresentar Código em Slides
  2. 2. Rafael Ponte
 @rponte
  3. 3. objetivo…
  4. 4. mapear uma classe com Hibernate
  5. 5. package br.com.triadworks.javace.modelo; import java.util.ArrayList; import java.util.List; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToMany; @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>(); public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getEndereco() { return endereco; } public void setEndereco(String endereco) { this.endereco = endereco; } public List<Dependente> getDependentes() { return dependentes; } public void setDependentes(List<Dependente> dependentes) { this.dependentes = dependentes; } }
  6. 6. o que eu fiz de errado?
  7. 7. tudo!
  8. 8. seus slides não são sua IDE
  9. 9. nem seu console
  10. 10. 5
  11. 11. tamanhoé documento #1
  12. 12. package br.com.triadworks.javace.modelo; import java.util.ArrayList; import java.util.List; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToMany; @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>(); public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getEndereco() { return endereco; } public void setEndereco(String endereco) { this.endereco = endereco; } public List<Dependente> getDependentes() { return dependentes; } public void setDependentes(List<Dependente> dependentes) { this.dependentes = dependentes; } } font 10pt
  13. 13. package br.com.triadworks.javace.modelo; import java.util.ArrayList; import java.util.List; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToMany; @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>(); public Integer getId() { return id; } public void setId(Integer id) { this.id = id; font 20pt
  14. 14. import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToMany; @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>(); font 30pt
  15. 15. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; font 50pt
  16. 16. public class Cliente { @Id private Integer font 100pt
  17. 17. Milfont
  18. 18. técnica Milfont <3
  19. 19. tá bom, tá bom…
  20. 20. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>(); font 40pt
  21. 21. MAIOR é melhor
  22. 22. use fonte 
 mono-espaçada #2
  23. 23. monospace proportional largura fixa largura fixa
  24. 24. @Entity public class Cliente { @Id private Integer id; } @Entity public class Cliente { @Id private Integer id; } monospace proportional
  25. 25. @Entity public class Cliente { @Id private Integer id; } @Entity public class Cliente { @Id private Integer id; } não monospace proportional
  26. 26. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>(); Arial
  27. 27. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>(); Monaco
  28. 28. use fontes mono-espaçadas para melhor legibilidade
  29. 29. cores fazem a diferença #3
  30. 30. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>();
  31. 31. não confie no projetor
  32. 32. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>();
  33. 33. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>();
  34. 34. use cores onde for necessário
  35. 35. mas por favor, não avacalha
  36. 36. não a-v-a-c-a-l-h-a!!
  37. 37. não é teu editor
  38. 38. foco no que importa #4
  39. 39. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>();
  40. 40. package br.com.triadworks.lanceunico.modelo; import java.util.ArrayList; import java.util.List; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToMany; @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>(); public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getEndereco() { return endereco; } public void setEndereco(String endereco) { this.endereco = endereco; } public List<Dependente> getDependentes() { return dependentes; } public void setDependentes(List<Dependente> dependentes) { this.dependentes = dependentes; } }
  41. 41. package br.com.triadworks.lanceunico.modelo; import java.util.ArrayList; import java.util.List; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToMany; @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>(); public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getEndereco() { return endereco; } public void setEndereco(String endereco) { this.endereco = endereco; } public List<Dependente> getDependentes() { return dependentes; } public void setDependentes(List<Dependente> dependentes) { this.dependentes = dependentes; } }
  42. 42. package br.com.triadworks.lanceunico.modelo; import java.util.ArrayList; import java.util.List; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToMany; @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>(); public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getEndereco() { return endereco; } public void setEndereco(String endereco) { this.endereco = endereco; } public List<Dependente> getDependentes() { return dependentes; } public void setDependentes(List<Dependente> dependentes) { this.dependentes = dependentes; } }
  43. 43. package br.com.triadworks.lanceunico.modelo; import java.util.ArrayList; import java.util.List; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToMany; @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>(); public Integer getId() { return id; } public void setId(Integer id) { this.id = id; } public String getNome() { return nome; } public void setNome(String nome) { this.nome = nome; } public String getEmail() { return email; } public void setEmail(String email) { this.email = email; } public String getEndereco() { return endereco; } public void setEndereco(String endereco) { this.endereco = endereco; } public List<Dependente> getDependentes() { return dependentes; } public void setDependentes(List<Dependente> dependentes) { this.dependentes = dependentes; } } removeoquenão importa
  44. 44. package br.com.triadworks.lanceunico.modelo; import java.util.ArrayList; import java.util.List; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToMany; @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>(); }
  45. 45. package br.com.triadworks.lanceunico.modelo; import java.util.ArrayList; import java.util.List; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToMany; @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>(); }
  46. 46. package br.com.triadworks.lanceunico.modelo; import java.util.ArrayList; import java.util.List; import javax.persistence.Entity; import javax.persistence.Id; import javax.persistence.OneToMany; @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>(); } NÃOimporta?REMOVE!
  47. 47. apagar código é gostoso
  48. 48. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes = new ArrayList<>(); }
  49. 49. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes; }
  50. 50. menos é mais
  51. 51. MENOS CÓDIGO MAIOR CLAREZA=
  52. 52. agora, podemos focar no que importa…
  53. 53. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes; }
  54. 54. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes; }
  55. 55. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes; }
  56. 56. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes; }
  57. 57. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes; }
  58. 58. @Entity public class Cliente { @Id private Integer id; // ... outros atributos }
  59. 59. existe N maneiras de enfatizar seu código
  60. 60. caneta laser não é uma delas .
  61. 61. caneta laser não é uma delas .
  62. 62. #5
  63. 63. dê a informação no… momento certo #5
  64. 64. dê a informação no… momento certo #5
  65. 65. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes; }
  66. 66. lembra do nosso objetivo?
  67. 67. mapear uma classe com Hibernate
  68. 68. mapear uma classe com Hibernate
  69. 69. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes; }
  70. 70. então vamos lá…
  71. 71. public class Cliente { private Integer id; private String nome; private String email; private String endereco; }
  72. 72. @Entity public class Cliente { private Integer id; private String nome; private String email; private String endereco; }
  73. 73. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; }
  74. 74. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; private List<Dependente> dependentes; }
  75. 75. @Entity public class Cliente { @Id private Integer id; private String nome; private String email; private String endereco; @OneToMany private List<Dependente> dependentes; }
  76. 76. @Entity public class Cliente { @Id private Integer id; }
  77. 77. guie seu público na sua solução
  78. 78. concluindo
  79. 79. lembre-se…
  80. 80. seus slides não são sua IDE
  81. 81. utilize 5 dicas
  82. 82. tamanho é documento foco no que importa cores fazem a diferença use fonte mono-espaçada informação no momento certo
  83. 83. apresentar código é difícil
  84. 84. coloque-se no lugar do carinha lá no final do auditório
  85. 85. @rponte http://triadworks.com.br/ @triadworks

×