Programação Orientada por Objectos LEEC/MEEC - 2006/07 http://comp.ist.utl.pt/ec-po LEEC@IST Informação geral - 1/12 Docentes • Teóricas e Laboratórios Alexandra Carvalho email: [email protected] homepage: http://algos.inesc-id.pt/~asmc • Professor Responsável Rui Gustavo Crespo LEEC@IST Informação geral - 2/12 Objectivos • Obtenção de conhecimentos de modelação e análise centrada em objectos, com base no UML. • Prática de produção de software, usando a linguagem de programação Java. • Aquisição de conhecimentos de computação WWW orientada a objectos, nomeadamente linguagens de marcas (XML). • Programação em C++. LEEC@IST Informação geral - 3/12 Programa 1. História e enquadramento do paradigma OO. 2. Modelação em UML: classes, objectos, métodos, herança, associações, interfaces, pacotes e excepções. 3. Programação em Java: classes, objectos, métodos, herança, associações, interfaces, pacotes, excepções, contentores, comparadores, iteradores, entradas/saidas e programação gráfica com Swing. 4. Ferramentas SAX e DOM de análise de ficheiros em XML. 5. Programação em C++. LEEC@IST Informação geral - 4/12 Planeamento (1) • • • • • • • • • Aula 01: Apresentação da disciplina. Aula 02: História e introdução ao paradigma OO. Aula 03: UML. Aula 04: UML. Aula 05: Definição de classes e objectos em Java. Aula 06: Tipos primitivos de dados e classes utilitárias em Java. Aula 07: Métodos em Java. Aula 08: Relações de agregação e associação em Java. Aula 09: Herança e polimorfismo em Java. LEEC@IST Informação geral - 5/12 Planeamento (2) • • • • • • • • Aula 10: Interfaces em Java. Aula 11: Tipos genéricos em Java. Aula 12: Apoio ao projecto (simulação estocástica discreta). Aula 13: Classes utilitárias em Java. Aula 14: Classes utilitárias em Java. Aula 15: Pacotes, excepções e asserções em Java. Aula 16: Entradas/saídas em Java. Aula 17: Entradas/saídas e serealização em Java. LEEC@IST Informação geral - 6/12 Planeamento (3) • • • • • • • • • Aula 18: Interface gráfica Swing. Aula 19: Interface gráfica Swing. Aula 20: Apoio ao projecto (discussão UML). Aula 21: Introdução ao XML e DTD. Aula 22: Analisador sintáctico SAX. Aula 23: Programação em C++. Aula 24: Programação em C++. Aula 25: Programação em C++. Aula 26: Programação em C++. LEEC@IST Informação geral - 7/12 Avaliação • Teórica – 2 Testes ou 1 Exame [12 valores] • • Nota mínima de 4.2 valores (35%). Existe a possibilidade de repescar apenas um dos testes na data de exame. • Projecto em grupos 3 alunos [8 valores] – Projecto em UML/Java • • LEEC@IST Nota mínima de 2.8 valores (35%). Existe a possibilidade de utilizar para este ano lectivo a nota do projecto do ano lectivo 2005/06. Informação geral - 8/12 Datas importantes 02 Abr 07 04 Mai 07 14 Mai 07 06 Jun 07 11-19 Jun 07 22 Jun 07 Enunciado do projecto 1º teste Relatório intercalar do projecto Entrega do projecto Discussão do projecto 2º teste (1ª época de exames) 06 Jul 07 Exame (2ª época de exames) LEEC@IST Informação geral - 9/12 Bibliografia • Acetatos das aulas teóricas • Livros básicos: – Grady Booch, James Rumbaugh, Ivar Jacobson. The Unified Modeling Language User Guide. Addison-Wesley, 1999. – Ken Arnold, James Gosling. The Java Programming Language. Java Series, Addison-Wesley, 2000. – Bjarne Stroustrup. The C++ Programming Language. Addison Wesley, 2000. LEEC@IST Informação geral - 10/12 Ferramentas • J2SE JDK 5.0 http://java.sun.com/j2se/1.5.0/download.jsp • Eclipse 3.2 com os seguintes plugins: – Modelação UML com eUML2 (inclui eclipse 3.2) http://www.soyatec.com/euml2/ – Edição gráfica Swing com Jigloo http://www.cloudgarden.com/jigloo/index.html – Programação em C/C++ com CDT http://www.eclipse.org/cdt/ • Em alternativa ao eclipse 3.2, NetBeans http://www.netbeans.org LEEC@IST Informação geral - 11/12 Práticas de programação • Listagem de boas práticas de programação em Java acessível na página: http://www.javapractices.com LEEC@IST Informação geral - 12/12