Paradigmas de programação – CI1062 (PaP) 

Primeiro Semestre de 2020

Página com informações gerais da disciplina: ementa, datas das provas, bibliografia, exercícios, etc.

Avisos

================================

=> Especificação do trabalho 1 disponível. Data de entrega : 01/03/2021
=>
Publicado um conjunto de Notebooks Haskell com código ilustrando conceitos de programação funcionalista.
=>
Publicado um conjunto de Notebooks Java com código ilustrando conceitos de programação orientada a objetos.

================================

Material de aula

Programação OO

=> Exercicio das formas geométricas
=> Conta em banco
=> Calculadora
=> Notebooks Java com exemplos ilustrativos
=> Lista de exercícios 01
=> Extrato do modelo de sistema acadêmico
=> Sistema de controle de pós graduação – contém o sistema completo:  o modelo completo, interfaces, acesso aos dados, etc.
Sites externos
=> Tutorial sobre reflexão em Java
=> Outro Tutorial sobre reflexão em Java
=> Java Reflextion API
=> Material da Oracle sobre tipos genéricos
=> ‘Resumão’ sobre design patterns no Wikipedia
=> Anti-patterns: anti-padrões de desenvolvimento…

 

Programação funcionalista

=> Exercicios funcionalista

Outros recursos (sites externos)
=> Funcões como entidades de primeira ordem
=> Curso online – introdução à programação funcional
=> Curso de programação funcional usando Haskell – Univ. de Edinburgo
=> Apostila de Haskell

Programação funcionalista e Apache Spark

=> Tutorial em português http://www.inf.ufpr.br/erlfilho/tutorials/spark/
=> Página com Quick Start da Apache
Execução nas máquinas locais : /home/soft/linux/eclipsemodeling/spark-2.1.1-bin-hadoop2.7/bin/spark-shell

 

Horário

Quartas: 17:30h
Sextas: 17:30h

Ensalamento
https://ensalamento.c3sl.ufpr.br/public/subjects/3580

Datas

=> Trabalho : 12.junho.2020
=> Prova 1 : 15.abril.2020
=> Prova 2 : 26.junho.2020

=> Final : 08.julho.2020
=> Segunda chamada (alunos ausentes) e reaproveitamento: 08.julho.2020 (vale a nota da final – é necessário uma justificativa)

  •  

Avaliação

Duas provas e um trabalho (ver datas acima).

Cálculo da Média Parcial: trabalho*0.35 + prova1*0.30 + prova2*0.35
Cálculo da média final:
– igual à média parcial, se esta é igual ou superior a 7.0 ou inferior a 4.0
– média aritmética entre a média parcial e a nota no exame final, caso contrário.

Será aprovado o aluno que apresentar freqüência mínima igual ou superior a 75% das aulas e obtiver média final igual ou superior a 5.0.

Bibliografia

Programção orientada a objetos: os 4 primeiros livros serão os mais usados
1 => Boratti, Isaias Camilo, Programação orientada a objetos em JAVA, Ano 2007, ISBN: 9788575021996 Florianopolis : Visual Books, 2007
2 => Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides. Padrões de Projeto: Soluções Reutilizáveis de Software Orientado a objetos. Bookman
3 => (o mesmo livro acima em inglês) Erich Gamma, Richard Helm, Ralph Johnson, John M. Vlissides. Elements of Reusable Object-Oriented Software. Addison-Wesley Professional;
4 => Bruce Eckel, Thinking in Java, 4th Edition, Prentice Hall, 1150 pages (English) ISBN: 0131872486
5 => Cox, Brad J, Programaçao orientada para objeto, Rio de Janeiro : Makron : MacGraw-Hill, 1991
6 => PREISS, Bruno R. Estruturas de dados e algoritmos: padroes de projetos orientados a objetos com Java. Rio de Janeiro: Campus, c2001. xvi, 566. Inclui bibliografia e índice. ISBN 8535206930 (broch.).
7 => Sidnei Wazlawick. Análise e Projeto de Sistemas de Informaçao Orientados a Objetos. Editora Campus, 1994.
8 => JANDL JUNIOR, Peter. Java: guia do programador : atualizado para Java 8. 3. ed São Paulo: Novatec, c2015. 704 p., il. Inclui referências e índice. ISBN 9788575224441 (broch.).
9 => BOENTE, Alfredo. Aprendendo a programar em Java 2: orientado a objetos. Rio de Janeiro: Brasport, 2003. 216 p., il. Inclui bibliografia e índice. ISBN 857452140X (broch.).
10 => ANSELMO, Fernando. Aplicando lógica orientada a objetos em Java. 2. ed. atual. e ampl Florianópolis: Visual Books, 2005. 178 p., il. ISBN 8575021621 (broch.).

——————————-

Programação funcionalista

Os 4 primeiros itens serão os mais utilizados no curso.
1 => Wiki da linguagem Haskell. https://wiki.haskell.org/, https://wiki.haskell.org/A_brief_introduction_to_Haskell
2 => A Gentle Introduction to Haskell – Version 98 (June 2000) https://www.haskell.org/tutorial/
3 => A general introduction to Functional Programming using Haskell. Matteo Rossi. Dipartimento di Elettronica e Informazione. Politecnico di Milano. https://cazzola.di.unimi.it/ps/haskell-p1.pdf
4 => Bird. Introduction to Functional Programming using Haskell. Prentice Hall, New York, 1998.
A.Davie. Introduction to Functional Programming System Using Haskell. Cambridge University Press, 1992.
5 => P. Hudak. Conception, evolution, and application of functional programming languages. ACM Computing Surveys, 21(3):359–411, 1989.

6 => Introduction to Funcional Programming. E.P. Wentworth http://citeseerx.ist.psu.edu/viewdoc/download?doi=10.1.1.57.4846&rep=rep1&type=pdf
7 => Haskel: Uma abordagem Prática. De Sá, C. C.; Ferreira da Silva, M. Novatec. São Paulo, 2006