Disciplinas Obrigatórias
5° período
Código:
BiSuCOM.535
Nome da disciplina:
Paradigmas de Programação
Carga horária total:
30 h
Abordagem metodológica:
Teórico-Prática
Natureza:
Obrigatória
Carga horária teórica:
15 h
Carga horária prática:
15 h
Ementa:
Evolução das principais linguagens de programação. Conceitos em gramáticas livres de contexto, sintaxe e semântica. Principais paradigmas de programação. Nomes, vinculações e escopos. Tipos de dados. Expressões e sentenças de atribuição. Estruturas de controle. Linguagem de programação funcional. Linguagem de programação orientada à restrições. Linguagem de programação lógica.

Objetivo(s):

Objetivo Geral:

Avaliar as características fundamentais dos principais paradigmas de programação e aplicar o paradigma mais adequado de acordo com o problema ser resolvido.

Objetivos Específicos:

Explicar a evolução das principais linguagens de programação e sua relação com os paradigmas. Utilizar os conceitos relacionados as gramáticas livre de contexto para idear como as linguagens de programação são classificadas em cada paradigma. Explicar como cada paradigma de programação é representando no contexto de nomes, vinculações, escopos, tipos de dados, expressões, sentenças de atribuição e estruturas de controle nas principais linguagens de programação. Elaborar programas em linguagens de paradigmas funcional, orientado à restrições e lógico.

Bibliografia básica:

SEBESTA, Robert W.. Conceitos de Linguagens de Programação. 9. ed. Porto Alegre: Bookman, 2011. 792 p. ISBN 9788577807918. Acervo: 005.13 S443c.

MELO, Ana Cristina Vieira. Princípios de linguagens de programação. 1. ed. São Paulo: Blucher, 2003. 211 p. ISBN 9788521203223. Acervo: 005.13 M528p.

SILVEIRA, Sidnei; VIT, Antônio; BERTOLINI, Cristiano; PARREIRA, Fábio; CUNHA, Guilherme; BIGOLIN, Nara. Paradigmas de programação: Uma introdução. 1. ed. Belo Horizonte: Synapse, 2021. 95 p. DOI 10.36599/editpa-2021_ppui. Disponível em <https://www.editorasynapse.org/wp-content/uploads/2021/03/paradigmas_programacao_uma_introducao_V0.pdf>. Acesso em: 23 de Agosto de 2024.

Bibliografia complementar:

MANZANO, José Augusto. Algoritmos: Lógica para desenvolvimento de programação de computadores. 26. ed. São Paulo: Érica, 2012. 328 p. ISBN 9788536502212. Acervo: 005.1 M296a.

CORMEN, Thomas H.; LEISERSON, Charles E.; RIVEST, Ronald L.; STEIN, Clifford; MARQUES, Arlete Simile. Algoritmos: Teoria e prática. 1. ed. Rio de Janeiro: Elsevier, 2012. 926 p. ISBN 9788535236996. Acervo: 005.1 A394.

SANTOS, Rafael. Introdução à programação orientada a objetos usando Java. 1. ed. Rio de Janeiro: Elsevier, 2003. 319 p. ISBN 9788535212068. Acervo: 005.13 S237i.

FOROUZAN, Behrouz A.. Fundamentos para ciência da computação. 2. ed. São Paulo: Cengage Learning, 2012. 560 p. ISBN 9788522110537. Acervo: 004 F727f.

AHO, Alfred V.; VIEIRA, Daniel; BIGONHA, Mariza A. da S.. Compiladores: Princípios, técnicas e ferramentas. 2. ed. São Paulo: Pearson Addison Wesley, 2008. 634 p. ISBN 9788588639249. Acervo: 005.453 C736.