Teaching - Paradigmas de Linguagem - 2019/II


Cronograma de Aulas e Conteúdo Programático
Paradigmas de Linguagem - 2019/II

Aulas as Sextas-Feiras a partir das 19h10
Metodologia
Cronograma Ementa Objetivos Contexto Conteúdo Programático Metodologia
Avaliação Bibliografia
Cronograma
Data da Aula Conteúdo Previsto Comentários
26-Jul-19 Aula 1
Introdução (capítulo 1 livro Sebesta)
Slides Aula 1
02-Ago-19 Aula 2
Introdução
09-Ago-19 Aula 3 Trabalho de Aula 1
16-Ago-19 Aula 4
Trabalho de Aula 2
23-Ago-19 Aula 5 Trabalho de Aula 3
30-Ago-19 Aula 6 Paradigma Orientado a Objetos
Slides (POO)
06-Set-19 Aula 7 Trabalho de Aula 4
13-Set-19 Aula 8 Paradigma Procedural-Imperativo
Trabalho de Aula 5
20-Set-19 Recesso Escolar - Feriado Não Haverá Aula!
27-Set-19 Aula 9 Vídeo de Referência
04-Out-19 Aula 10 Paradigma Orientado a Objetos
11-Out-19 Aula 11 Paradigma Orientado a Objetos
18-Out-19 Aula 12 Trabalho de Aula (revisão)
25-Out-19 Prova 1 Conteúdo: Aulas 1 a 11.
01-Nov-19 Aula 13 Paradigma Funcional
08-Nov-19 Aula 14 Paradigma Funcional
15-Nov-19 Recesso Escolar - Feriado Não Haverá Aula!
22-Nov-19 Aula 15 Trabalho de Aula 7
29-Nov-19 Aula 16 Paradigma Lógico
06-Dez-19 Trabalho Final Enunciado do Trabalho
13-Dez-19 EXAME! Conteúdo: toda matéria vista no semestre.
Ementa
Paradigmas de linguagens de programação: imperativas, funcionais, lógicas, orientadas a objetos, concorrentes. Comparação e análise das características das linguagens de programação sob o aspecto de seu projeto: valores e tipos de dados, variáveis e constantes, expressões e comandos, modularização. Avaliação de linguagens e suas propriedades. Seleção de linguagens para determinadas tarefas.
Objetivos
  • Proporcionar ao aluno uma compreensão sobre os diferentes paradigmas de linguagem e suas principais características.
  • Fornecer ao aluno as ferramentas necessárias para uma avaliação crítica das linguagens de programação e construções existentes, para que eles tenham condições de escolher as linguagens mais adequadas para cada projeto.
  • Facilitar aos alunos o aprendizado de novas linguagens a partir do conhecimento geral das suas peculiaridades.
Contexto
Paradigmas de programação estabelecem a estruturação e a forma de execução dos programas. Por isso, a contribuição da disciplina de Paradigmas de Linguagens de Programação é o aperfeiçoamento dos conhecimentos técnicos do aluno para a formação do Bacharel em Sistemas de Informação, deixando-o apto a participar de decisões sobre a escolha das melhores linguagens de programação para cada projeto e a adquirir facilmente o conhecimento sobre novas linguagens.
Conteúdo Programático
1. Introdução
1.1. Motivação
1.2. Conceito de Linguagem de Programação
1.3. Domínios de Programação
1.4. Critérios para Escolha da Linguagem
1.5. Sintaxe e Semântica
1.6. Abstração, Amarração e Modularização
1.7. Valores e Tipos de Dados
1.8. Controle de Fluxo de Execução
1.9. Exceções
2. Programação Imperativa
3. Programação Orientada a Objetos
4. Programação Concorrente
5. Programação Lógica
6. Programação Funcional
Metodologia
Aulas expositivas, com o uso de datashow; aulas práticas no laboratório para demonstração de exemplos práticos; realização de exercícios teóricos e práticos; trabalhos práticos extraclasse; avaliações escritas.
Avaliação
Relatórios de 1 a 6 – R1 a R6: implementação, testes e escrita de relatório técnico. Individual ou em duplas.
Prova 1 – P1: individual.
Prova 2 – P2: individual.
NF = ( (R1*5) + (R2*5) + (R3*10) + (R4*10) + (R5*15)+ (R6*15) + (P1*20) + (P2*20) ) / 100
Bibliografia
Básica:
  • SEBESTA, R. W. Conceitos de Linguagens de Programação. 5 ed. Editora: Bookman, 2003.
  • VAREJÃO, F. Linguagens de Programação: conceitos e técnicas. Rio de Janeiro: Elsevier, 2004.
  • ALBANO, Ricardo Sonaglio; ALBANO, Silvie Guedes. Programação em Linguagem C. Editora: Ciência Moderna 2010.
Complementar:
  • DEITEL, H. M.; DEITEL, P. J. Java: como programar. 6 ed. Person Prentice Hall, 2006.
  • MELO, A. C. V. de; SILVA, F. S. C. da. Princípios de Linguagens de Programação. 1ª Ed. São Paulo:Edgard Blucher, 2003.
  • SCHILDT, Herbert. C Completo e Total. 3 ed. Makron Books. 2008.
  • PUGA, Sandra; RISSETTI, Gerson. Lógica de programação e estruturas de dados: com aplicações em Java. Editora: Pearson, 2009. 2ªed.
  • TAMASSIA, R. GOODRICH, M. T. Estrutura de Dados e Algoritmos em Java. Editora: Bookman: 2007. 4ª ed.
Conteúdo Adicional

Recent Posts

Installing MPI on Ubuntu
19. Sep. 2013 Instalar o MPI no Ubuntu é fácil. Basta rodar o seguinte comando: sudo apt-get install libcr-dev mpich2 mpich2-doc...
Installing CUDA 5.0 on Kubuntu 11.10
25. Jan. 2013 A instalação do novo pacote da NVIDIA para o CUDA5.0 no Kubuntu (ou Ubuntu) 11.10 é fácil, basta atentar às seguintes observações...
nbody simulations
19. Nov. 2011 Here we have some very basic simulations I made using the C code I developed...

Contact

Filipo Novo Mór
PPGCC - PUCRS
Av. Ipiranga, 6681
Porto Alegre – RS – Brazil
CEP 90619-900
Phone +55 51 3320.3500
filipo.mor at gmail.com