UNIVERSIDADE FEDERAL DO PARÁ Centro de Ciências Exatas e

Propaganda
UNIVERSIDADE FEDERAL DO PARÁ
Centro de Ciências Exatas e Naturais
Pós-Graduação em Ciência da Computação – PPGCC
Inscrição e Seleção – Mestrado em Ciência da Computação
Programa da Prova de Seleção e Bibliografia sugerida
Programa
Bibliografia Sugerida
Fundamentos Teóricos (Matemática Discreta, Teoria da Computação e Linguagens Formais)
9 questões
Lógica Formal. Conjuntos e Combinatória.
Funções parciais e totais. Grafos e Árvores.
Álgebra booleana e lógica de computadores.
Programas. Máquinas e computações. Máquinas
universais e máquina de Turing. Tese de
Church. Funções recursivas. Computabilidade.
Gramáticas e linguagens. Linguagens regulares.
Autômatos finitos. Linguagens livres de contexto
e autômatos com pilha. Linguagens sensíveis ao
contexto.
DIVERIO, T. A; MENEZES, P.B. Teoria da Computação: Máquinas
Universais e Computabilidade. Porto Alegre: Sagra-Luzatto, 1999.
GERSTING, J. L. Fundamentos Matemáticos para Ciência da Computação.
Rio de Janeiro: LTC, 3ª ed., 1995.
HOPCROFT, J. E., ULLMAN, J. D. Introdução a Teoria dos Autômatos,
Linguagens e Computação. Editora Campus, 2002
LEWIS, H.; PAPADIMITRIOU, C. Elementos de Teoria da Computação, 2ª
edição. Bookman, 2004.
MENEZES, P. F. B. Linguagens Formais e Autômatos. Porto Alegre: SagraLuzzatto, 5ª. Edição, 2005.
MENEZES, P.B. Matemática Discreta para Computação e Informática. Ed.
Sagra Luzzatto (Série Livros Didáticos n. 16), 2004.
Programação de Computadores e Estruturas de Dados
9 questões
Tipos de dados e operações primitivas.
Variáveis, constantes e expressões. Operadores
e suas prioridades. Estruturas de controle.
Programação modular. Ponteiros em linguagens
de programação de alto nível. Agregados
homogêneos (arrays) uni- e multidimensionais.
Agregados heterogêneos (registros). Cadeias de
caracteres. Listas (realização por contiguidade e
encadeamento). Pilhas e filas. Árvores: tipos,
algoritmos de percurso e aplicações. Grafos:
terminologia básica, técnicas de percurso e
aplicações. Técnicas básicas de pesquisa e
ordenação.
Conceitos de programação orientada a objetos:
encapsulamento, polimorfismo, agregação e
herança.
Implementação
em
linguagens
orientadas a objetos. Uso de frameworks para
auxílio ao desenvolvimento.
CORNELL, G., Horstmann, C. S. Core Java Volume I. Makron Books, São
Paulo, 1998.
CORNELL, G., Horstmann, C. S. Core Java Volume II. Makron Books, São
Paulo, 2003.
GOODRICH, M.; TAMASSIA, R. Estruturas de Dados e Algoritmos em Java.
2ª. Edição Bookman, 2002.
HOROWITZ, E., SAHNI, S. Fundamentos de estruturas de dados. Rio de
Janeiro: Campus, 1984.
JONES, M. O que todo Programador deveria saber sobre Projeto OO.
Makron, 1997.
SZWARCFITER, J. L.; MARKENZON, L. Estruturas de Dados e seus
Algoritmos. LTC - Livros Técnicos e Científicos S.A., 1994.
VELOSO, Paulo; SANTOS, Clesio; AZEREDO, Paulo; FURTADO, Antonio.
Estruturas de Dados. Editora Campus, 1996.
VILLAS, M.; FERREIRA, A., et al. Estruturas de dados: conceitos e técnicas
de implementação. Rio de Janeiro: Campus, 1993.
WIRTH, N. Algoritmos e estruturas de dados. Rio de Janeiro: LTC, 1999.
Sistemas Operacionais, Redes de Computadores e Sistemas Distribuídos
6 questões
Introdução e conceitos básicos de sistemas operacionais: visão
conceitual e prática do desenvolvimento dos seus componentes.
Arquitetura de sistemas operacionais. Gerenciamento de memória.
Memória virtual. Conceito de Processos, Monoprocessamento e
Multiprocessamento. Concorrência e sincronização de processos
COMER, D. Interligação de Redes com TCP/IP. Vol. I. Rio
de Janeiro: Campus, 1998.
COULOURIS, George; DOLLIMORE, Jean; KINDBERG, Tim.
Distributed Systems: Concepts and Design. Edition 3,
e threads. Alocação de recursos e deadlocks. Gerência de
Entrada/Saída. Sistemas de Arquivos. Análise de Desempenho.
Tendências no desenvolvimento de sistemas operacionais
modernos e especializados.
2001.
Camada de Aplicação; princípios dos protocolos da camada de
aplicação; principais protocolos de aplicação. Camada de
transporte: serviços oferecidos na camada de transporte;
principais protocolos. Camada de rede e roteamento: serviços
oferecidos na camada de rede; princípios de roteamento;
roteamento hierárquico; principais protocolos de camada de rede.
Camada de enlace: serviços oferecidos pela camada de enlace;
protocolos de acesso ao meio e redes locais (LANs);
endereçamento em LANs e o protocolo ARP; principais
tecnologias adotadas na camada de enlace.
SILBERSCHATZ, A.; GALVIN, P.; GAGNE, G. Sistemas
Operacionais: Conceitos e Apliações, Ed. Campus, 2001.
Caracterização de sistemas distribuídos. Metas de projeto de
sistemas distribuídos. Comunicação em sistemas distribuídos.
Sincronização em sistemas distribuídos. Middleware (CORBA,
RMI, XML). Sistemas de arquivamento distribuído. Sistemas
operacionais distribuídos. Desafios dos sistemas distribuídos
(heterogeneidade, interoperabilidade, segurança, mobilidade,
etc.).
TANENBAUM, A. S., STEEN, M.V. Distributed systems:
Principles and Paradigms, Prentice-Hall, 2001.
KUROSE, J.; ROSS, K. Redes de Computadores e a
Internet. Ed. Pearson Brasil. 1ª edição. 2003.
SOARES, L. F. G. Das LANs, MANs e WANs às Redes ATM.
Campus, 2a edição, 1995.
TANENBAUM, A. Redes de computadores. Rio de Janeiro:
Campus, tradução da 4ª ed., 2003.
TANENBAUM, A. Sistemas Operacionais
Segunda Edição, Pearson Brasil, 2003.
Modernos,
Banco de dados e Engenharia de Software
6 questões
Sistemas de Gerência de Banco de Dados (SGBD). Modelos
conceituais de banco de dados. Diagrama de Entidades e
Relacionamentos. Modelo Relacional: integridade, álgebra
relacional, normalização. Projeto de Banco de Dados. Linguagem
SQL. Visões.
BEZERRA, E. Princípios de Análise e Projeto de Sistemas
com UML. Rio de Janeiro: Campus, 2003.
Arquiteturas de Sistemas de Banco de Dados. Catálogo do
sistema. Otimização e Processamento de Consultas. Bancos de
Dados Distribuídos. Transações. Controle de Concorrência.
Recuperação. Segurança. Integridade. Desempenho. Bancos de
Dados Orientados a Objetos. Bancos de Dados ObjetoRelacionais.
GAMMA, H.; JOHNSON; V. Padrões de Projeto: Soluções
Reutilizáveis de Software Orientado a Objetos. Porto
Alegre: Bookman, 2000.
Fundamentos de Engenharia de Software. Métodos e
Metodologias para desenvolvimento de software. Paradigmas de
Engenharia de Software. Engenharia de Requisitos. Projeto de
Software: aspectos fundamentais, projeto modular, projeto de
dados, projeto arquitetural. Documentação de software.
Verificação, Validação e Teste. Manutenção de Software.
Gerenciamento de Configuração de Software. Aspectos gerenciais
da Engenharia de Software: Métricas, Estimativas, Planejamento.
ELMASRI, R.; NAVATHE, S. B. Sistemas de Banco de
Dados: Fundamentos e Aplicações. 3ª edição, LTC, 2002.
HEUSER, C. A. Projeto de Banco de Dados. 4ª edição. Porto
Alegre: Sagra-Luzzato, 2001.
JACOBSON, I.; BOOCH, G.; RUMBAUGH, J. The unified
software development process. Reading, Mass. AddisonWesley, 1999.
PRESMAN, R. S. Engenharia de Software. 5ª. ed, Ed.
McGraw Hill, 2001.
SILBERSCHATZ, A.; KORTH, H.; SUDARSHAN, S. Sistema
de Banco de Dados. 3ª edição. São Paulo: Markon Books,
1999.
Engenharia de software auxiliada por computador: ferramentas
CASE, ambientes de desenvolvimento de software. Reutilização
de software. Engenharia reversa e reengenharia de software.
Tecnologias de processo de desenvolvimento de software.
Garantia de qualidade de software. Desenvolvimento de software
orientado a objetos: metodologias de análise e projeto orientado a
objetos. UML.
Programação em Lógica e Inteligência Artificial
6 questões
Histórico e quadro atual da inteligência artificial. Sistemas de
produção, procura e espaço de procura, informação heurística.
Métodos de resolução de problemas e de representação de
conhecimento. Sistemas especialistas. Programação em Lógica e
a Linguagem PROLOG. Inteligência Computacional Aplicada;
Redes Neurais.
BRAKTO, I. Prolog Programming for Artificial Intelligence,
Second Edition, Addison-Wesley Publishing Company. 1990.
CLOCKSIN, W. F.; MELLISH, C. S., Programming in Prolog.
Springer-Verlag, 4th edition, 1994.
HAYKIN, Simon. Redes Neurais, Princípios e Prática. 2a.
Edição, Bookman, 2001.
LUGER, G. Inteligência Artificial: Estruturas e estratégias
para a solução de problemas complexos. Bookman, 2004.
Rezende, Solange. Sistemas Inteligentes.
Ed. Manole, 2002
RUSSEL, S.; NORVIG, P. Inteligência Artificial. Tradução da
2ª. Edição. Campus, 2004.
Download