Introdução à Programação Um enfoque orientado a construção de modelos em programas baseados em objetos Gustavo Motta Departamento de Informática - UFPB
Programa Objetivos Introduzir os aspectos históricos e tecnológicos dos algoritmos e de sua programação Capacitar o aluno a resolver problemas computáveis utilizando metodologia para concepção de modelos em programas baseados em objetos numa linguagem de programação moderna (JAVA) Introduzir técnicas de programação, de verificação, de testes, de estilo de programas e de programação defensiva (C) 2006 Gustavo Motta
Programa Sumário Introdução O que é a linguagem? Estudo dos algoritmos Desenvolvimento das máquinas algorítmicas Histórico das linguagens de programação Evolução da ciência da computação A construção de modelos para resolução de problemas Aspectos éticos (C) 2006 Gustavo Motta
Programa Sumário Modelos orientados a objetos Conceitos-chave Conceito do modelo orientado a objetos Objetos Operações Interfaces Estado Interações Referência Classes Herança Abstração Encapsulação Ocultação da informação Comportamento Conceitos-chave (C) 2006 Gustavo Motta
Programa Sumário Algoritmos em modelos orientados a objetos O conceito de algoritmo Algoritmos e a estrutura de modelos orientados a objetos Representação de algoritmos Linguagem Sintaxe Semântica Processo de interpretação/compilação Metodologia para resolução de problemas com a concepção de modelos orientados a objetos Descrição do processo Exemplos (C) 2006 Gustavo Motta
Programa Sumário Classes, objetos, referências, operações e interações Plataforma de desenvolvimento Java 2 SE Estrutura básica de classes Declaração de operações Modificadores de acesso Declaração de referências e instanciação de objetos Interagindo com objetos Pacotes de classes Aulas práticas no laboratório (C) 2006 Gustavo Motta
Programa Sumário Tipos de valores primitivos, variáveis e expressões Definição de tipo Declaração de valores Tipos de valores primitivos em JAVA e seus operadores Variáveis Conceito e definição Declaração, inicialização e comando de atribuição Escopo e modificadores de acesso Tempo de vida (variáveis locais e globais) Referências Operações parametrizadas (C) 2006 Gustavo Motta
Programa Sumário Tipos de valores primitivos, variáveis e expressões Definição Avaliação e precedência de operadores Modalidades Aritméticas Condicionais Lógicas (booleanas) Aulas práticas no laboratório (C) 2006 Gustavo Motta
Programa Sumário Comandos condicionais Conceito e definição de comando condicional Comandos condicionais em JAVA if-else switch Técnicas de verificação e teste Estilo de programação Aulas práticas no laboratório (C) 2006 Gustavo Motta
Programa Sumário Comandos iterativos e recursão Conceito e definição de comando iterativo Comandos iterativos em JAVA Iteração indefinida while do-while Iteração definida for Recursão Definição do conceito Equivalência entre recursão e iteração Exemplos Técnicas de verificação, de teste e de otimização Estilo de programação Aulas práticas no laboratório (C) 2006 Gustavo Motta
Programa Sumário Arrays Definição Declaração e alocação de arrays unidimensionais Acesso a elementos Algoritmos de ordenação e pesquisa Noções de complexidade de algoritmos Exemplos Declaração e alocação de arrays multidimensionais Técnicas de verificação, de teste e de otimização Estilo de programação Aulas práticas no laboratório (C) 2006 Gustavo Motta
Programa Sumário Manipulação de strings Introdução A classe String Operações de manipulação A classe StringBuffer A classe StringTokenizer Técnicas de verificação e de teste Estilo de programação Aulas práticas no laboratório (C) 2006 Gustavo Motta
Programa Sumário Tipos abstratos de dados Definição Ocultação da informação e abstração Independência de implementação Classes abstratas e interfaces em JAVA Exemplos clássicos Pilha e fila Aulas práticas no laboratório (C) 2006 Gustavo Motta
Programa Avaliação Prova ao término do item 3 do conteúdo programático Prova ao término do item 6 do conteúdo programático – prática e teórica Prova ao término do item 10 do conteúdo programático – prática e teórica Listas de exercícios (C) 2006 Gustavo Motta
Programa Observações (C) 2006 Gustavo Motta
Programa Recursos bibliográficos Camarão, C.; Figueiredo, L. Programação de Computadores em JAVA. Campus/SBC. LTC, 2003 Santos, R. Introdução à programação orientada a objetos usando JAVA. Campus/SBC, 2003 Brookshear, J. G. Ciência da computação: uma visão abrangente. 5a edição. Bookman, 2001 Cursos e livros on-line na Sun Microsystems http://java.sun.com/learning/index.html Fonseca Filho, C. História da computação: teoria e tecnologia. LTr, 1999 Berlinsk, D. O advento do algoritmo: a idéia que governa o mundo. Globo, 2002 Material suplementar fornecido pelo professor. (C) 2006 Gustavo Motta