Técnicas de Programação Aplicada III - Apresentação da Disciplina

664 views

Published on

Apresentação da Disciplina de Técnicas de Programação Aplicada III

Published in: Education

Técnicas de Programação Aplicada III - Apresentação da Disciplina

  1. 1. Universidade Presbiteriana Mackenzie Aula 1: Apresentação da Disciplina Prof. Ms. Daniel Arndt Alves Faculdade de Computação e Informática Técnicas de Programação Aplicada III Apresentação da Disciplina 1Daniel Arndt Alves
  2. 2. Tópicos da Aula • Professor • Objetivos • Conteúdo Programático • Referências Bibliográficas • Regras • Notas • Comunicados & Avisos • Datas Importantes Apresentação da Disciplina 2Daniel Arndt Alves
  3. 3. Tópicos da Aula • Padrões de Nomenclatura • Um Mau Layout • Um Bom Layout Apresentação da Disciplina 3Daniel Arndt Alves
  4. 4. Professor • Daniel Arndt Alves – Bacharel em Ciência da Computação – Mestre em Engenharia Elétrica • http://www.progdan.pro.br/ Apresentação da Disciplina 4Daniel Arndt Alves
  5. 5. Professor • Mackenzie – Professor PPI da Faculdade de Computação e Informática – Administrador do Mackenzie Virtual (Moodle) – http://ead.mackenzie.br/moodle/ – Administrador do Cluster de Pesquisa em Computação Evolutiva e Autômatos Celulares – http://ecca.mackenzie.br/ Apresentação da Disciplina 5Daniel Arndt Alves
  6. 6. Objetivos • Cognitivos – Aprender fundamentos teóricos e práticos gerais necessários ao projeto e desenvolvimento de aplicações baseada em componentes – Conhecer e compreender os conceitos de reusabilidade e testabilidade – Estudar e distinguir as diversas fases do processo de desenvolvimento de aplicações baseadas em componentes Daniel Arndt Alves Apresentação da Disciplina 6
  7. 7. Objetivos • Habilidades – Ser capaz de identificar as tarefas inerentes a cada fase do processo de desenvolvimento de aplicações baseadas em componentes. – Ser capaz de escolher metodologias adequadas para projeto e desenvolvimento de aplicações baseadas em componentes. – Ser capaz de avaliar e utilizar funcionalidades de servidores de aplicação e fraweworks para a implementação de funcionalidades típicas de uma aplicação baseadas em componentes. Daniel Arndt Alves Apresentação da Disciplina 7
  8. 8. Objetivos • Atitudes – Ter consciência da necessidade de busca de inovações tecnológicas, principalmente na área de aplicações baseadas em componentes – Valorizar trabalho cooperativo para desenvolvimento de tarefas complexas Daniel Arndt Alves Apresentação da Disciplina 8
  9. 9. Conteúdo Programático • Conceitos Básicos de Objetos Distribuídos – Remote Procedure Calls – Serialização – Proxies e Adapters (stubs) – Middlewares – Prática em RPC Daniel Arndt Alves Apresentação da Disciplina 9
  10. 10. Conteúdo Programático • Java EE – Visão geral da plataforma – Comparação com demais alternativas de mercado – Classes e pacotes – APIs, IDEs e servidores de suporte – Prática em Java EE Daniel Arndt Alves Apresentação da Disciplina 10
  11. 11. Conteúdo Programático • Java RMI – Conceitos introdutórios – Classes e pacotes – RMI sobre JRMP e sobre IIOP – Prática em RMI • EJB – Conceitos básicos em EJB – Tipos de EJB (session, messagen-driven, entity) – Prática em EJB Daniel Arndt Alves Apresentação da Disciplina 11
  12. 12. Conteúdo Programático • JMS – Modelos de trocas de mensagens – Elementos da API JMS – Prática em JMS • Persistência com JPA – Conceitos de ORM e POJOs – Frameworks de persistência – Prática em JPA com Hibernate Daniel Arndt Alves Apresentação da Disciplina 12
  13. 13. Conteúdo Programático • Java Web Services – Conceitos básicos em Web Services – Prática em Java Web Services Daniel Arndt Alves Apresentação da Disciplina 13
  14. 14. 14Daniel Arndt Alves Apresentação da Disciplina Referências Bibliográficas • RUBINGER, A. L. E BURKE, B. Enterprise Javabeans 3.1. 2. ed. O'Reilly, 2010. • YANG, D. Java Persistence with JPA. Outskirts Press, 2010.
  15. 15. 15Daniel Arndt Alves Apresentação da Disciplina Referências Bibliográficas • JENDROCK, E. EVANS, I. GOLLAPUDI, D. E HASSE, K. The Java EE 6 Tutorial: Basic Concepts. 4. ed. Prentice-Hall, 2010.
  16. 16. Software de Apoio Daniel Arndt Alves Apresentação da Disciplina 16
  17. 17. Regras • Pontualidade – O Professor dará o melhor de si para se apresentar no horário de início das aulas. – Os Alunos darão o melhor de si para se apresentarem no horário de início das aulas. Daniel Arndt Alves Apresentação da Disciplina 17
  18. 18. Regras • Presença – A chamada será realizada no início de cada aula. – Eventualmente, a chamada poderá ser realizada mais tarde, sem que isto deva ser entendido como alteração desta regra. Daniel Arndt Alves Apresentação da Disciplina 18
  19. 19. Regras • Presença – Os Alunos deverão gerenciar a sua cota de faltas adequadamente, levando em conta o tráfego da cidade, as responsabilidades em seu trabalho, feriados, possíveis problemas de saúde, distrações durante a chamada, etc. Daniel Arndt Alves Apresentação da Disciplina 19
  20. 20. Regras • Presença – O Professor não dará presença a um aluno ausente, qualquer que seja a razão. Abonos de faltas deverão ser discutidos diretamente com a Secretaria Geral da Universidade. Daniel Arndt Alves Apresentação da Disciplina 20
  21. 21. Regras • Entrega de Trabalhos – Os trabalhos devem ser entregues na data determinada pelo Professor. – As atividades práticas serão dimensionadas para sua realização no período da aula de Laboratório. – Não serão aceitos trabalhos após este prazo! Daniel Arndt Alves Apresentação da Disciplina 21
  22. 22. Regras • Entrega de Trabalhos – Atrasos poderão eventualmente ser considerados em casos de doença, sempre fundamentada em atestado médico e requerimento apresentado à Secretaria da FCI, no dia subsequente à alta médica Daniel Arndt Alves Apresentação da Disciplina 22
  23. 23. Regras • Datas das Provas – As datas definidas para as provas desde o início do curso pela Coordenação do curso de Sistema de Informação, não serão alteradas em hipótese alguma. Daniel Arndt Alves Apresentação da Disciplina 23
  24. 24. Regras • Datas das Provas – O Aluno poderá, eventualmente, efetuar a prova em outro dia, a ser determinado pelo professor, nas seguintes situações: • Doença – fundamentada por atestado médico e requerimento apresentado à Secretaria da FCI. Daniel Arndt Alves Apresentação da Disciplina 24
  25. 25. Regras • Datas das Provas – O Aluno poderá, eventualmente, efetuar a prova em outro dia, a ser determinado pelo professor, nas seguintes situações: • Atividade no Trabalho – fundamentada por correspondência da empresa, em papel timbrado, esclarecendo o motivo e declarando ter sido informada pelo aluno sobre a realização da prova, e requerimento apresentado à Secretaria da FCI. Daniel Arndt Alves Apresentação da Disciplina 25
  26. 26. Regras • Datas das Provas – O requerimento deve ser apresentado à Secretaria da FCI no dia subsequente à ocorrência. Daniel Arndt Alves Apresentação da Disciplina 26
  27. 27. Notas • Haverá 1 prova parcial (P1), Listas de Exercícios e Micro-Avaliações (Ex), mais participação em aula, e a nota de Laboratório (Lab), com os pesos: • N1 = (30 P1 + 20 PROCOMP + 10 Ex + 40 Lab)/100 + Participação • MF = (N1 + PF)/2 Daniel Arndt Alves Apresentação da Disciplina 27
  28. 28. Notas • A nota de Participação será composta pelos seguintes critérios: – 60% pelos Exercícios Complementares submetidos no ambiente Moodle – 40% do tempo gasto na interação com os recursos disponíveis no ambiente Moodle Daniel Arndt Alves Apresentação da Disciplina 28
  29. 29. Notas • É considerado um fator extremamente negativo a prática de plágio. • Quaisquer cópias de trabalhos ou exercícios detectados, sejam de outros colegas, ou a partir de websites na Internet serão atribuídas nota 0 (zero) a todos os envolvidos! Daniel Arndt Alves Apresentação da Disciplina 29
  30. 30. Notas • O desempenho nas aulas será registrado no Ambiente Moodle, no espaço dedicado à disciplina de Laboratório. • O aluno poderá consultar a qualquer momento suas notas parciais através do link “notas” no ambiente Moodle. Daniel Arndt Alves Apresentação da Disciplina 30
  31. 31. Notas • Durante o semestre será ministrado um trabalho em grupo, sendo a entrega feita através do Ambiente Moodle (Mackenzie Virtual). • Não serão aceitos trabalhos entregues fora do prazo estipulado, ou entregues por outros meios. Daniel Arndt Alves Apresentação da Disciplina 31
  32. 32. Comunicados & Avisos • Todos os comunicados e avisos referentes à disciplina serão postados através do Ambiente Moodle (Mackenzie Virtual). • O Aluno deve acompanhar regularmente seu e-mail @mackenzista.com.br ou redirecioná-lo ao provedor de sua preferência. Daniel Arndt Alves Apresentação da Disciplina 32
  33. 33. Comunicados & Avisos • Todas as atividades estarão disponíveis no Ambiente Moodle (Mackenzie Virtual). • O Aluno deverá postar seus exercícios e trabalhos somente no Ambiente Moodle (Mackenzie Virtual) • Não serão aceitos trabalhos entregues fora do prazo estipulado, ou entregues por outros meios Daniel Arndt Alves Apresentação da Disciplina 33
  34. 34. 34 Datas Importantes • 11 a 24/Set./2013 – Provas Parciais • 23/Out./2013 – PROCOMP • 25/Nov. – 15/Dez./2013 – Provas Finais e Vistas Daniel Arndt Alves Apresentação da Disciplina 25
  35. 35. Padrões de Nomenclatura Daniel Arndt Alves Apresentação da Disciplina 35 “Programming is best regarded as the process of creating works of literature, which are meant to be read.” Donald E. Knuth, Literate Programming
  36. 36. Padrões de Nomenclatura Daniel Arndt Alves Apresentação da Disciplina 36 “Any fool can write code that a computer can understand. Good programmers write code that humans can understand.” Martin Fowler, Refactoring, Improving the Design of Existing Code
  37. 37. Padrões de Nomenclatura • Variáveis – int umaVariavel; – int uma_Variavel; • Funções – public void umaFuncao (int umParametro); – public void umaFuncao (int um_Parametro); Daniel Arndt Alves Apresentação da Disciplina 37
  38. 38. Padrões de Nomenclatura • Classes – public class umaClasse; – public class uma_Classe; • Constantes – static final String ERROR = "Erro!”; Daniel Arndt Alves Apresentação da Disciplina 38
  39. 39. Um Mau Layout // Atribuindo n dividido por 2 em r r = n / 2; // Loop while r-(n/r) enquanto for maior que t while(abs(r - (n / r)) > t){ // Atribuindo a metade de r+(n/r) em r r = 0.5 * (r + (n / r)); } Daniel Arndt Alves Apresentação da Disciplina 39
  40. 40. Um Bom Layout /* * Raiz quadrada de n com * aproximação de * Newton-Raphson */ r = n / 2; while(abs(r - (n / r)) > t){ r = 0.5 * (r + (n / r)); } Daniel Arndt Alves Apresentação da Disciplina 40
  41. 41. Apresentação da Disciplina 41Daniel Arndt Alves
  42. 42. Apresentação da Disciplina 42Daniel Arndt Alves
  43. 43. Imagens • http://www.digitalprank.org/wp-content/uploads/2008/03/ejb.png • http://sandersconsulting.com/Portals/58319/images/checklist.jpg • http://www.showmesavings.com/images/target.gif • http://docs.oracle.com/cd/E19148-01/819-4470/images/to_RPC_MOM.gif • http://www.asert.com.au/images/AsertPlatformSmall.jpg • http://www.javacoffeebreak.com/articles/javarmi/rmidiagr.gif • http://docs.oracle.com/javaee/5/tutorial/doc/figures/jms-programmingModel.gif • http://java.sun.com/developer/technicalArticles/WebServices/WSPack/webservices_model.gif • http://freeebooksearch.net/pics/aff9e_1432755854_41RK8GGsweL.jpg • http://picoolio.com/photos/original/19909-dmjak.jpg • http://www.onlineprogrammingbooks.com/images/javaee6tutorial.jpg • http://www.x25.com.br/blog/wp-content/uploads/2010/11/java_logo.gif • http://www.javahotchocolate.com/tutorials/tut-images/java-ee-6-logo.gif • http://www.flexsolucoes.com.br/ajuda/images/e/ed/Netbeans-logo.jpg • http://ostatic.com/files/GlassFish-Logo-140_92.jpg • http://upload.wikimedia.org/wikipedia/commons/2/22/Hibernate_logo_a.png • http://3.bp.blogspot.com/-8dm8EWYMqPI/TjCUB4WFXuI/AAAAAAAAC1g/sJ7KXj9vQEk/s1600/mysql_logo.png • http://d.yimg.com/gg/u/7a62d58d03887ad0ea7e52fa078e0c0de7b19db6.jpeg • http://www.computertrainingpattaya.com/images/big-tick.jpg • http://lake.k12.fl.us/moe/lib/moe/test.jpg • http://acccbuzz.files.wordpress.com/2010/12/grade.jpg • http://www.allea.org/Content/ALLEA/SC%20Science%20Ethics/Plagiarism/copyplagiarism.jpg • http://www.vshandw.com/images/icon.information.gif • http://cs.bloomington.k12.mn.us/modules/groups/homepagefiles/cms/1597624/Image/Icons/calendar+icon3.png • http://www.goldb.org/goldblog/cmg_images/real_programmers_binary.jpg Daniel Arndt Alves Apresentação da Disciplina 43
  44. 44. Obrigado Daniel Arndt Alves daniel.alves@mackenzie.br Apresentação da Disciplina 44Daniel Arndt Alves

×