Linguagem de Programação Web

3.827 visualizações

Publicada em

Material de apoio para o componente de linguagem de programação web do SenacTI.

Publicada em: Tecnologia
0 comentários
0 gostaram
Estatísticas
Notas
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Sem downloads
Visualizações
Visualizações totais
3.827
No SlideShare
0
A partir de incorporações
0
Número de incorporações
5
Ações
Compartilhamentos
0
Downloads
64
Comentários
0
Gostaram
0
Incorporações 0
Nenhuma incorporação

Nenhuma nota no slide
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • \n
  • Linguagem de Programação Web

    1. 1. some rights reserved
    2. 2. @fnmunhozhttp://about.me/munhoz
    3. 3. Plano de ensino
    4. 4. Componente: Linguagem deProgramação WEB
    5. 5. Competência• Implementar algoritmos em linguagem de programação estruturada, a partir dos princípios de lógica, abstração e programação estruturada, utilizando as características de sintaxe da linguagem, com organização e raciocínio lógico, representando soluções computacionais com linguagem de programação específica a partir de problemas do mundo real.
    6. 6. Conhecimentos• Princípios de lógica, abstração e programação estruturada• Características de sintaxe da linguagem: tipos e variáveis, operadores e atribuições, funções/ métodos, escopo, estrutura de dados, estruturas de controle, entre outros
    7. 7. Habilidades• Utilizar recursos da linguagem na implementação de algoritmos• Testar algoritmos
    8. 8. Indicadores• Utiliza recursos da linguagem na implementação de algoritmos com paciência, de acordo com suas características.• Testa algoritmo utilizando ferramentas para teste de algoritmos, de acordo com os princípios de lógica, abstração e programação estruturada.
    9. 9. Valores e atitudes• Paciência• Organização• Raciocínio lógico
    10. 10. Cronograma
    11. 11. Cronograma• 56 horas/aula
    12. 12. Cronograma• 56 horas/aula• 16 encontros
    13. 13. Cronograma• 56 horas/aula• 16 encontros• Frequência mínima de 12 encontros
    14. 14. Cronograma• 56 horas/aula• 16 encontros• Frequência mínima de 12 encontros• Avaliações em média a cada 5 encontros
    15. 15. Cronograma• 56 horas/aula• 16 encontros• Frequência mínima de 12 encontros• Avaliações em média a cada 5 encontros• Datas prováveis
    16. 16. Cronograma• 56 horas/aula• 16 encontros• Frequência mínima de 12 encontros• Avaliações em média a cada 5 encontros• Datas prováveis 1. 28 de setembro (dupla para entregar)
    17. 17. Cronograma• 56 horas/aula• 16 encontros• Frequência mínima de 12 encontros• Avaliações em média a cada 5 encontros• Datas prováveis 1. 28 de setembro (dupla para entregar) 2. 19 de outubro (dupla em aula)
    18. 18. Cronograma• 56 horas/aula• 16 encontros• Frequência mínima de 12 encontros• Avaliações em média a cada 5 encontros• Datas prováveis 1. 28 de setembro (dupla para entregar) 2. 19 de outubro (dupla em aula) 3. 09 de novembro (individual em aula)
    19. 19. Cronograma• 56 horas/aula• 16 encontros• Frequência mínima de 12 encontros• Avaliações em média a cada 5 encontros• Datas prováveis 1. 28 de setembro (dupla para entregar) 2. 19 de outubro (dupla em aula) 3. 09 de novembro (individual em aula) 4. 14 de novembro (recuperação individual em aula)
    20. 20. BoasPráticas
    21. 21. Kent Beck
    22. 22. “Não sou um grande programador; Sou apenas um bom programador com ótimos hábitos. Refatorar me ajuda a ser muito mais efetivo na escrita de código robusto” Kent Beck
    23. 23. TDDTest Driven Development
    24. 24. Pair Programming
    25. 25. Baby steps
    26. 26. Abrace Mudanças
    27. 27. Mas fuja da política!
    28. 28. Controle de Versão
    29. 29. Controle de Versão
    30. 30. Por que GIT?
    31. 31. Por que GIT?•Social
    32. 32. Por que GIT?•Social•Robusto
    33. 33. Por que GIT?•Social•Robusto•Rápido
    34. 34. Por que GIT?•Social•Robusto•Rápido•Tudo é local
    35. 35. Por que GIT?•Social•Robusto•Rápido•Tudo é local•Distribuído
    36. 36. git clone
    37. 37. git clone
    38. 38. Crie, edite, apague, mova,arquivos ediretórios
    39. 39. Crie, edite, apague, mova,arquivos ediretórios
    40. 40. git add
    41. 41. git add
    42. 42. git commit
    43. 43. git commitNão esqueçada mensagem!
    44. 44. Fluxo
    45. 45. git push
    46. 46. git push
    47. 47. git pullTrabalho em equipe
    48. 48. Vamos à prática
    49. 49. Vamos à prática• Criar um repositório no Github
    50. 50. Vamos à prática• Criar um repositório no Github• Clonar o repositório criado para um diretório
    51. 51. Vamos à prática• Criar um repositório no Github• Clonar o repositório criado para um diretório• Adicionar e editar arquivos no diretório
    52. 52. Vamos à prática• Criar um repositório no Github• Clonar o repositório criado para um diretório• Adicionar e editar arquivos no diretório• Adicionar os arquivos ao repositório
    53. 53. Vamos à prática• Criar um repositório no Github• Clonar o repositório criado para um diretório• Adicionar e editar arquivos no diretório• Adicionar os arquivos ao repositório• Fazer commit no repositório
    54. 54. Vamos à prática• Criar um repositório no Github• Clonar o repositório criado para um diretório• Adicionar e editar arquivos no diretório• Adicionar os arquivos ao repositório• Fazer commit no repositório• Fazer push para o Github
    55. 55. Java é uma linguagem
    56. 56. Java é uma plataforma
    57. 57. Java é portável
    58. 58. Java é orientado a objetos
    59. 59. Java deve ser compilado
    60. 60. Java Runtine Environment
    61. 61. Java Development Kit
    62. 62. Java é robusto... e as vezes burocrático
    63. 63. public class HelloWorld { public static void main (String[] args) { System.out.println("Hello World!"); }}
    64. 64. Versões
    65. 65. Versões• JDK 1.0 (1996)
    66. 66. Versões• JDK 1.0 (1996)• JDK 1.1 (1997)
    67. 67. Versões• JDK 1.0 (1996)• JDK 1.1 (1997)• J2SE 1.2 (1998)
    68. 68. Versões• JDK 1.0 (1996)• JDK 1.1 (1997)• J2SE 1.2 (1998)• J2SE 1.3 (2000)
    69. 69. Versões• JDK 1.0 (1996)• JDK 1.1 (1997)• J2SE 1.2 (1998)• J2SE 1.3 (2000)• J2SE 1.4 (2002)
    70. 70. Versões• JDK 1.0 (1996)• JDK 1.1 (1997)• J2SE 1.2 (1998)• J2SE 1.3 (2000)• J2SE 1.4 (2002)• J2SE 5 (2004)
    71. 71. Versões• JDK 1.0 (1996)• JDK 1.1 (1997)• J2SE 1.2 (1998)• J2SE 1.3 (2000)• J2SE 1.4 (2002)• J2SE 5 (2004)• Java SE 6 (2006)
    72. 72. Versões• JDK 1.0 (1996)• JDK 1.1 (1997)• J2SE 1.2 (1998)• J2SE 1.3 (2000)• J2SE 1.4 (2002)• J2SE 5 (2004)• Java SE 6 (2006)• Java SE 7 (2011)
    73. 73. Ferramentas
    74. 74. Ferramentas• javac
    75. 75. Ferramentas• javac• java
    76. 76. Ferramentas• javac• java• jar
    77. 77. Ferramentas• javac• java• jar• javadoc
    78. 78. Java é fortemente tipada
    79. 79. Tipos primitivos
    80. 80. Tipos primitivos• boolean
    81. 81. Tipos primitivos• boolean• char
    82. 82. Tipos primitivos• boolean• char• byte
    83. 83. Tipos primitivos• boolean• char• byte• short
    84. 84. Tipos primitivos• boolean• char• byte• short• int
    85. 85. Tipos primitivos• boolean• char• byte• short• int• long
    86. 86. Tipos primitivos• boolean• char• byte• short• int• long• float
    87. 87. Tipos primitivos• boolean• char• byte• short• int• long• float• double
    88. 88. Operadores
    89. 89. Operadores•+-*/
    90. 90. Operadores•+-*/• == != <= > >= !
    91. 91. Estruturas de controle
    92. 92. public class HelloWorld { public static void main (String[] args) { if(true) { System.out.println("Do something"); } else if (false) { System.out.println("Do either"); } else { System.out.println("Do other"); } }}
    93. 93. Estruturas de repetição
    94. 94. public class HelloWorld { public static void main (String[] args) { while(5 != 6) { System.out.println("Forever"); } for(int i = 0; i < 10; i++) { System.out.println(i); } }}
    95. 95. Testes
    96. 96. import static org.junit.Assert.*;import org.junit.Test;public class EstatisticasTest { @Test public void deveCalcular() { double valores[] = {9,5}; double calculado = Estatisticas.calcula(valores); assertEquals(5, calculado, 0); }}
    97. 97. ort static org.junit.Assert.*;ort org.junit.Test;lic class EstatisticasTest {@Testpublic void deveCalcular() { double valores[] = {9,5}; double calculado = Estatisticas.calcula(val assertEquals(5, calculado, 0);}
    98. 98. Algoritmos
    99. 99. Um algoritmo é uma sequência finita de instruçõesbem definidas e não ambíguas, cada uma das quaispode ser executada mecanicamente num período detempo finito e com uma quantidade de esforço finita.
    100. 100. Um algoritmo é uma sequência finita de instruçõesbem definidas e não ambíguas, cada uma das quaispode ser executada mecanicamente num período detempo finito e com uma quantidade de esforço finita.
    101. 101. Um algoritmo é uma sequência finita de instruçõesbem definidas e não ambíguas, cada uma das quaispode ser executada mecanicamente num período detempo finito e com uma quantidade de esforço finita.
    102. 102. Um algoritmo é uma sequência finita de instruçõesbem definidas e não ambíguas, cada uma das quaispode ser executada mecanicamente num período detempo finito e com uma quantidade de esforço finita.
    103. 103. Qual o mais alto da fila?
    104. 104. Comece guardando a altura da primeira pessoa
    105. 105. Percorra cada uma das próximas pessoas e faça o seguinte
    106. 106. • Pegue a altura da nova pessoa. Esta é a altura atual;
    107. 107. • Pegue a altura da nova pessoa. Esta é a altura atual;• Compare com a mais alta até o momento;
    108. 108. • Pegue a altura da nova pessoa. Esta é a altura atual;• Compare com a mais alta até o momento;• Se for maior atualize como a mais alta;
    109. 109. • Pegue a altura da nova pessoa. Esta é a altura atual;• Compare com a mais alta até o momento;• Se for maior atualize como a mais alta;• Senão mantenha a pessoa atual;
    110. 110. • Pegue a altura da nova pessoa. Esta é a altura atual;• Compare com a mais alta até o momento;• Se for maior atualize como a mais alta;• Senão mantenha a pessoa atual;• Faça isso até o fim da fila;
    111. 111. Será que esta é a melhor forma de descobrir o mais alto da fila?
    112. 112. SHOW METHE CODE!

    ×