recursos básicos ide na prática

Download Recursos Básicos IDE na prática

If you can't read please download the document

Upload: kaleu-caminha

Post on 26-Jun-2015

2.241 views

Category:

Education


3 download

DESCRIPTION

Esta apresentação guia o estudante por um roteiro no qual ele pode praticar os recursos básicos da IDE NetBeans como localização em projetos, navegação nos métodos de uma classe, dobramento de código, depuração, e mais.A apresentação acompanha um roteiro (http://www.slideshare.net/kaleu/roteiro-prtica-netbeans) para ser realizado ao final da aula teórica como forma de estimular o estudante a utilizar os recursos vistos na prática.É importante conhecimento de GitHub para baixar o projeto (caso não exista, basta fazer download do projeto na página do GitHub indicada nos slides) e conhecimentos básicos de OO.Não estou seguro para uso desta aula sem a guiança de um professor. Recomendo os slides para que um professor altere e o utilize para as suas aulas.Os Slides foram desenvolvidos com LibreOffice 3.5

TRANSCRIPT

  • 1. Orientao a Objetos 2 Carinhosamente chamada OO

2. Aula 4 - Objetivo

  • Compreender a necessidade do uso deAmbientes Integrados de Desenvolvimentoe utilizar com eficincia osrecursos bsicos do NetBeans .

3. Agenda

  • Parte 1 (terica)
    • Ambientes Integrados de Desenvolvimento (IDE) 4. NetBeans x Eclipse(alis, NetBeans x Eclipse x JBuilder x JCreator x IntelliJ x JDeveloper) 5. O Netbeans

6. Agenda

  • Parte 2 (terica e prtica)
    • O Projeto base (Chuck Tetris); 7. Janelas; 8. Atalhos; 9. Projetos; 10. To-do's 11. Edio de cdigo;

12. Agenda

  • Parte 3 (terica e prtica)
    • O Depurador; 13. E tem mais?(tende ao infinito, srio)

14. Agenda

  • Parte 4 (prtica)
    • Roteiro para que vocs experimentem novamente os recursos.

15. Parte 1 Compreendendo a importncia dosAmbientes Integrados de Desenvolvimento (Integrated Development Environment) . 16. IDE

  • AmbienteIntegradode Desenvolvimento; 17. DesenvolvimentoRpidode Aplicativos;

18. Ambiente Integrado(alguns recursos) Editor :escrita rpida de cdigo, auto-completar, gerao de cdigo, etc; Compilador: Gera cdigo de mquina a partir do fonte do projeto automaticamente; Deploy :Realiza a publicao da aplicao, gerao de executveis, etc; . Cdigo Limpo e Otimizado: facilita o entendimento do projeto por todos os envolvidos; Testes Automatizados: Execuo de cdigos para garantir integridade do software aps modificaes; Depurador: Facilta a busca por erros no cdigo atravs da anlise cuidadosa de cada passo executado pelo software; 19. Qual IDE escolher?

  • Cada linguagem de programao costuma tervrias opes de IDE , gratuitas, pagas, especficas, genricas, etc... 20. A escolha dever ser feita a partir dassuas necessidades ; 21. No possvel dizerqual a melhorde uma forma geral; 22. Entre as IDE's mais usadas profissionalmente para Java estoEclipse, NetBeans e IntelliJ ;

23. IntelliJA Mais Inteligente 24. EclipseProvavelmente a mais utilizada em ambiente profissional 25. NetBeansMil e uma utilidades (IDE Bombril ) 26. JDeveloperRecomendada para ambientes com Banco de Dados Oracle 27. JCreatorRpida, confivel e amigvel(porm, mais limitada) 28. JBuilderO caminho mais rpido para desenvolver aplicaes comerciais em Java 29. MakeWare Basil, sil, sil. 30. O NetBeans(Gros Conectados) 31. Referncias Parte 1

  • Wikipedia 32. Site Netbeans 33. Site Eclipse 34. Site IntelliJ 35. Site JBuilder 36. Site JCreator 37. Site JDeveloper 38. Site MakeWare 39. Frum GUJ, NetBeans ou Eclipse?

40. Parte 2 Recursos, atalhos e dicas que facilitam o dia-a-dia do desenvolvedor. 41. Agenda

  • Parte 2 (terica e prtica)
    • O Projeto base (Chuck Tetris); 42. Janelas; 43. Atalhos; 44. Projetos; 45. To-do's 46. Edio de cdigo.

47. ChuckTetris

  • S escutando aprendemos pouco; 48. Vamos utilizar um projeto para ir conhecendo os recursos da IDE na prtica; 49. Nosso objetivo conseguir navegar pelo projeto facilmente utilizando os recursos da IDE;

50. ChuckTetris no GitHub

  • Acesse a pgina do projeto no GitHub https://github.com/kaleucaminha/ChuckTetris 51. Faa umforkpara voc(lembra? o boto no alto e direita.) ; 52. Faa o clone do seu fork(para sua pasta de projetos no pen drive) git clone [email protected]: seufork 53. Abra o projetocom o NetBeans utilizando a opo "Abrir Projeto";

54. Are you ready? 55. Para saber quando executar alguma atividade... Quando voc ver este smbolo, pode realizar a atividade que ele descreve. 56. Janela Projeto

  • Exibe cdigose pacotes relativos aos projetos abertos; 57. Arquivos no importantespara o projeto no so exibidos; 58. O negritoidentifica o projeto principal; 59. Use as setas do tecladopara navegar entre os pacotes, use enter para abrir um arquivo, Ctrl+1 para voltar para a janela projeto e Ctrl+0 para ir para o editor;

60. Arquivos e Servios 61. Ferramentas Para Executar o Projeto Clique na seta verde para executar o projeto. 62. Atalhos Procure no carto, atalhos que paream teis para voc. 63. Atalhos Selecionados (18) Foco do Cursor Ctrl + 0 Editor de Cdigo Ctrl + 1 Janela Projetos Ctrl + 6 Navegao na Classe Ctrl + 7Janela de Tarefas Ctrl + Shift + 0 Resultados da Pesquisa Edio de Cdigo Ctrl + Shift + C Editor de Cdigo Ctrl + Shift + menos Janela Projetos Ctrl + Shift + baixo Navegao na Classe Alt + Shift + F Janela de Tarefas Ctrl + QVai para ltima edio de cdigo Geral F6 Executa proj. principal Ctrl + F12 Exibe janela para encontrar mtodos e atributos de uma classe Alt + Shift + Enter Tela Cheia Ctrl + Shift + F Busca em Projetos Edio Mgica de Cdigo Ctrl + R Refatorar / Renomear Alt + Insert Gerar cdigo Alt + F7 Encontra ocorrncias de uma determinada varivel ou classe. Ctrl + Espao Exibe auto-completar. 64. Navegando no Projeto Estrutura de Pastas no NetBeans Estrutura de pastas fora do netbeans Pacotes Bibliotecas Localizar em Projetos Substituir em Projetos 65. Estrutura de Pastas no NetBeans Verifique o contedo da pasta bibliotecas. Nos prximos projetossempre adicionaremos novas bibliotecas. 66. Estrutura de pastas do arquivo 67. Pacotes

  • para grandes aplicaes preciso organizar as classes de maneira a:
    • Evitar problemas com nomes duplicados de classes; 68. Localizar o cdigo da classe de forma eficiente;

69. Bibliotecas

  • Bibliotecas soconjuntos de classesque podemos utilizar me nossos projetos; 70. Bibliotecasagilizammuito o desenvolvimento; 71. Algumas bibliotecas que vocs j conhecem so osDrivers para banco de dados ; 72. Este semestre tambm utilizaremos outras duas, oJInpute ojavaPlay ; 73. Paraadicionar e/ou removerbibliotecas de um projeto, clique com o boto direito sobre a pasta "bibliotecas";

74. Adicionando Bibliotecas

  • A IDE j possui muitas bibliotecas registradas (e voc pode inclusive adicionar outras). Para us-as no seu projeto, basta acessar a opo "Adicionar Biblioteca". 75. Se quiser adicionar um .jar, basta usar "Adicionar jar/pasta". Lembre-se de deixar o jar dentro da pasta do projeto quando adicion-lo, assim, ele estar sempre com a sua aplicao.

76. Localizar em ProjetosCtrl + Shift + F

  • comum precisarmosbuscar um mtodo ou varivelem um projeto e termos esquecido em qual classe o colocamos. 77. Um recurso muito til este. Voclocaliza qualquer textono projeto initeiro;

78. 79. Localize todos os locais no projeto principal que utilizam o termo pontuacao, assim, voc saber todos os locais que lidam diretamente com a pontuao do jogador. 80. Substituir em ProjetosCtrl + Shift + H

  • Em algum momento voc pode querer substituir um determinado texto que tenha utilizado; 81. Por exemplo, recentemente traduzi "cidade" para "citie" em um projeto. Obviamente, tive de corrigir em diversos lugares alterando para "city". O substituir timo nestes casos.

82. Refatorar nomes de Classes

  • Refatorar tem dois sentidos em programao OO;
    • 1) Quando queremosreescrever um determinado trecho de cdigo porque ele ficou mal organizado.Assim, podemos dizer que vamos refatorar o mtodo XYZ. 83. 2) Quandoalteramos um nome de classe, mtodo ou atributo e queremos que este nome mude em todos os pontos do softwareonde ele usado. Por exemplo, digamos que voc no tenha gostado do nome "Cenario" e prefira "EspacoJogo", voc ir refatorar o nome da Classe "Cenario";

84. Refatorar nomes de Classes

  • 1)Reescrever cdigode uma maneira organizada uma tarefa artstica e complexa,de modo que as IDE's no podem fazer isso por ns; 85. 2)Alterar o nome de uma classeem todos os pontos possveis uma tarefa repetitiva e simples , portanto, as IDE's conseguem automatizar isto para ns.
    • Para refatorar o nome de uma classeclique com o boto direito em cima da classe, acesserefatorare depoisrenomear .

86. 87. Altere o nome de uma classe que voc no gostou da forma como foi chamada. Lembre-se, o Fork seu, o importante que voc o deixe o mais organizado que conseguir. 88. To-Do's 89. To-Do's

  • Muito frequentemente voc selembra no meio do desenvolvimentoque faltou verificar alguma coisa em outro algoritmo. 90. Por exemplo, enquanto eu refatorava o gameLooplembrei que uma hora precisaria adicionar controle pelo Teclado . Porm, no teria como fazer isso naquele momento. A forma normal de resolver esta questo anotar em algum lugar para fazer a tarefa mais tarde. As IDE's no so to usadas a toa, at estes recursos elas possuem. 91. Abra o seu editor e digiteCtrl + 6

92. Janela de Tarefas Realize o to-do iniciando com Prtica Aula. Com duplo clique voc direcionado para o trecho de cdigo do to-do. Aps faz-lo, apague o comentrio. No faa nenhum dos outros agora, teremos um bom tempo para isso na segunda parte da aula. 93. Edio de Cdigo Dobramento de Cdigo Localizar Cdigo Interao com a janela de navegao Barrinha da direita Lidando com erros Auto-completar Inserir Cdigo Renomear / Refatorar 94. Navegando dentro de uma classe

  • Classes com mais de 10 mtodos j comeam a ficar difceis de se trabalhar pela quantidade de Scroll necessrio para chegar a cada mtodo, sem falar no trabalho em ficar procurando o mtodo que queremos sem saber a ordem em que ele est. 95. Isso s piora quando no fomos ns que fizemos as classes. 96. Para nos ajudar, temos os recursos de dobramento de cdigo, localizao de contedo e janela de navegao.

97. Dobramento de Cdigo

  • Este recursominimiza todos os mtodos e comentrios . 98. Para visualiz-lo, acesse a classe Cenario e pressioneCtrl + Shift + menos 99. Utilize ocone +/-para maximizar/minimizar o cdigo; 100. Para maximizar tudo,Ctrl + Shift + mais

101. 102. Dobramento de Cdigo

  • Quando estiver em um mtodo especfico, utilizeCtrl + maiseCtrl + menospara maximizar e minimizar o mtodo;

103. Localizar Cdigo

  • Dentro de uma classe comum precisarmos pesquisar um texto especfico.Ctrl + F 104. Alm disso voc pode utilizarF3eShift + F3para navegar entre os resultados da busca; 105. Outra dica usarCtrl + F3quando estiver com um texto selecionado. O NetBeans ir procurar as outras ocorrncias dentro da classe;

106. Testando a localizao

  • Selecione o atributo gradeda classe cenrio e pressioneCtrl + F3 ; 107. Agora, pressioneF3para ver todos os lugares onde a matriz representando o cenrio utilizada;

108. Janela de Navegao

  • Atravs dele possvelvisualizar todos os atributos e mtodosde uma classe e acess-los rapidamente com duplo clique; 109. Experimente-o digitandoCtrl + 7e selecionando alguns dos mtodos da janela.

Aproveite e teste os cones na barra inferior da janela e descubra a utilidade de cada um deles. 110. Navegao Modo Ninja

  • PressioneCtrl + F12 ; 111. Utilize assetas do tecladopara chegar ao mtodo que deseja; 112. PressioneEntere siga o desenvolvimento.

113. Barrinha da Direita

  • Essa barrinha geralmente passa despercebida, porm, pode ser til em grandes classes, cada cor representa alguma coisa: 114. Amarelo:Aviso / Dica da IDE; 115. Vermelho:Erro; 116. Verde:Seleo de texto; 117. Linha:Cursor do texto; 118. Marrom:ocorrncias da varivel onde o cursor est; 119. Cinza:Favoritos (voc pode marcar uma linha como favorita usando Ctrl + Shift + M)

120. Auto Completar

  • raro lembrarmosexatamente os nomes dos mtodos que construmos; 121. As IDE's nos ajudam exibindo o auto-completar; 122. Este recurso busca todos os mtodos e atributosde uma classe quando utilizamos um objeto desta classe; 123. Ele tambmencontra nomes de variveise outras dicas; 124. Para test-lo, use um objeto e pressioneCtrl + Espao

125. Vendo o auto-completar em ao

  • V at o mtodogameLoopda classeControleTetris ; 126. digitecenario.(cenrio o nome do objeto da classe Cenario e . a forma de acessar os seus mtodos); 127. PressioneCtrl + espaoou espere alguns instantes, a IDE o exibe automaticamente se voc parar de digitar;

128. 129. Inserir Cdigo

  • Getters, Setters, construtores e outros mtodos so comuns e padronizados. Quando construirmos uma classe no necessrio gerar getters e setters manualmente, voc pode inser-los utilizandoAlt + Insert ; 130. Experimente criando um atributocidadeOrigempara o jogador que armazenar o nome da cidade do jogador. Use o gerador para gerar ogetter e setterdeste atributo;

131. 132. Refatorar variveis de uma classe

  • Mudar nomes de variveis muito comum e necessrio para escrever cdigos fceis de entender; 133. para mudar muito rapidamente diversas ocorrncia de uma determinada varivel em uma classe utilize o comandoCtrl + Rem umtexto selecionado; 134. Aps executar o atalhovoc poder alterar o nome da varivel que automaticamenteela ser alterada em todos os outros locais;

135. No mtodopodeMovimentarda classeCenario , refatore o nome da varivelproximaCasapara o nomevalorProximaCasa . 136. Parte 3 Recursos Avanados 137. Depurador

  • Depurador a ferramenta que nos permiteanalisar a execuo de um cdigo passo-a-passo para poder encontrar problemas ; 138. Na refatorao do ChuckTetris eu o utilizei para:
    • Descobrir porque o jogo dava gameOver na hora que uma pea era adicionada ao cenrio; 139. Descobrir porque quando eu movimentava peas na ltima linha, apenas a metade superior delas se movia; 140. Entender porque as benditas peas continuavam descendo ao chegar no final do cenrio; 141. Resolver o problema das peas se desmontarem quando eu as movia para esquerda e porque ficavam perfeitas quando as movia para a direita;

142. Pontos de Interrupo

  • Um depurador funciona a partir depontos de interrupo . Voc pode adicionar um a qualquer linha executvel do seu cdigo(no pode em um comentrio ) ; 143. Para adicionar, apenas clique no nmero da linha;

144. Depurador em Ao

  • Para ver o depurador em ao, execute o botoDepurar o Projeto Principal ; 145. Uma nova barra de botes de controle ser exibida. Deixe seu software ao lado do netbeans para poder acompanhar o andamento do depurador.

146.

  • Com as duas telas lado a lado, inicie um novo jogo. Aps colocar seu nome o projeto ser interrompido na linha marcada; 147. Pressione o botoPassar sobre (F8)para acompanhar o jogo; 148. Quando quiser entrar dentro de um mtodo pressione o botoPassar dentro (F7) ; 149. Explore os demais botes conforme achar necessrio.

150. Depurador: Variveis

  • A cada passo do jogo, as variveis assumem determinados valores. Voc pode visualiz-los pela janela variveis que ser exibida na barra inferior do netbeans;

151. Por fim,Use o Depurador sem moderao. 152. E tem mais?

  • Code Template; 153. Profile; 154. Atalhos personalizados; 155. Scripts de deploy automticos; 156. Integrao com Git, SVN e outros; 157. E o principal responsvel pelos recursos de uma IDE tenderem ao infinito, plugins.! 158. Voc pode encontrar plugins para muitas coisas, GameBuilder, Modelagem 3D, etc...

159. Mas fiquem tranquilos, assim como trabalhar com o Git, usar uma IDE um longo processo. Eu levei 4 anos para aprender a usar um depurador, para usar atalhos como o maravilhoso Ctrl + F12 e por a vai. O mais importante sempre dedicarem um breve tempo para estudar os recursos da IDE que forem utilizar, sem dvida ser um tempo muito bem gasto e que ir economizar muitas horas no futuro. 160. Parte 4 Roteiro prtico para exerccio das tcnicas aprendidas. 161. Prtica

  • Estes recursos ns s aprendemos quando precisamos deles; 162. Criei um roteiro paar que vocs coloquem em prtica o que vimos aqui ao mesmo tempo que revisam um pouco de cdigo java; 163. O Roteiro est no site da disciplina e utiliza o mesmo projeto ChuckTetris. 164. Divirtam-se.