3 Paradigmas e Linguagens de Programação

Slides:



Advertisements
Apresentações semelhantes
Paradigmas de Programação
Advertisements

Programação Funcional
AULA 5 PGC Sistemas de Banco de Dados Profa. Sandra de Amo
Introdução à Ciência da Computação Linguagens de Programação.
Lógica Matemática e Computacional 7 – Introdução à Programação Lógica
Paradigmas de Programação
Perspectivas baseadas em procedimentos e orientadas por objectos Conceitos principais: Encapsulamento, Herança, Polimorfismo (Encapsulation, Hierarchy,
Programação Orientada aos Objectos Paulo Marques Departamento de Eng. Informática Universidade de Coimbra Set/2005 Uma Introdução Usando.
O Essencial sobre Linguagens de Programação Luís Caires Maio 2005.
1 Introdução (Informal) à Programação DI/FCT/UNL 1º Semestre 2004/2005.
Linguagens de Programação
Lógica de Predicados Sintaxe. O que não é possível expressar em Lógica Prop. Todo tricolor é um campeão. Roberto é tricolor. Logo Roberto é um campeão.
Introdução à Programação Lógica
Cálculo Relacional Datalog não-recursivo
Técnicas de Representação de Conhecimento
Sistemas Baseados em Conhecimento
Agentes Baseados em Conhecimento
FACENS – Engenharia da Computação Inteligência Artificial
INTRODUÇÃO À PROGRAMAÇÃO
Curso Sistemas de Informação Disciplina: Arquitetura de Software
Introdução à Programação
Programação em Lógica Augusto Marks Batista Guilherme dos Santos Fujiyoshi Marlon Bill Santos.
Prof. Msc. Raul Paradeda Aula 3 Fundamentos
INF 1771 – Inteligência Artificial
Michel Pavan Macedo Introdução ao F# Michel Pavan Macedo
Universidade do Vale do Rio dos Sinos
Conceitos de Linguagens de Programação Apresentação da Disciplina Prof. Dr. Rogério Vargas UESC
Prolog Programação Lógica Ícaro A. Souza.
Conceitos de Linguagem de Programação
Paradigma Lógico.
Desenvolvimento de Sistemas Orientados a Aspectos
Análise e Projeto de Sistemas UNIVERSIDADE DE CRUZ ALTA Ciência da Computação 2010/1.
Introdução a Programação
Linguagens lógicas 2013 – Luiz Mauricio Nascimento Silva
Estudo dos Conceitos e Paradigmas de Programação
Paradigmas de Linguagens de Programação
Paradigmas de Linguagens de Programação Linguagem Imperativa 2
Semântica de Linguagens de Programação
Paradigmas de Linguagens de Programação Linguagem Imperativa 1
Lógica de Predicados Sintaxe.
Linguagem Funcional 2 Linguagem Funcional 2 - LF2 Estende LF1 com funções de alta ordem Uma função passa a ser um valor O contexto inclui um único componente:
Paradigma Funcional Apresentação de LF1.
Paradigmas de Programação
Augusto Sampaio e Paulo Borba Centro de Informática
Sistemas Especialistas
Classification in Object-Oriented Systems Peter Wegner Carlos Eduardo da Silva César Frederico dos Santos.
Paradigma funcional.
Paradigmas de Linguagens de Programação Aula 2
1 O  -Cálculo & Linguagens Funcionais Rafael Dueire Lins Departamento de Informática Universidade Federal de Pernambuco - Recife - Brasil.
Princípios da Programação em Prolog
INTRODUÇÃO À PROGRAMAÇÃO EM LÓGICA Profa. Joseluce de Farias Cunha
Lógica para Computação
METODOLOGIA, MÉTODOS E FERRAMENTAS
1 TEORIA DA COMPUTAÇÃO Motivação Licenciatura em Ciência e Tecnologia da Computação Licenciatura em Engenharia Informática e de Computadores (Prep.)
Aula 1 – Profª Danielle Costa
Programação de computadores Prof. Giovanni Castro.
Linguagens de Programação Introdução Prof. Renato Melo.
Programação Lógica com Prolog
A Linguagem Formal de Especificação VDM-SL
Inteligência Artificial: A Linguagem Prolog (Parte 1)
Sistemas de Informação – mais que tecnologia Profa. Reane Franco Goulart.
Noções de lisp Lisp: LISp Processing J.M.Barreto INE-CTC-UFSC.
1 IO em LF1 Paradigmas de Linguagens de Programação 2007 Diego Martins, Laís Xavier, Paulo Martinelli e Turah Xavier.
Paradigmas de Linguagens de Programação Conceitos da Linguagem Imperativa 1 Augusto Sampaio e Paulo Borba Centro de Informática Universidade Federal de.
ALGORITMOS.
Evolução das Principais Linguagens de Programação
Paradigmas de Programação
Módulo II Capítulo 1: Orientação a Objetos
SWNE Uma Linguagem Baseada em Predicados Alex Abate Biral Número USP Orientador: Marco Dimas Gubitoso.
1 Programação Multi-Paradigma Cristiano Bertolini – Ellison Siqueira – Guilherme Avelino –
Transcrição da apresentação:

3 Paradigmas e Linguagens de Programação

Paradigma de programação Um paradigma de programação é um estilo paradigmático de programar Um paradigma de programação (e determina) a visão que o programador tem da execução de um programa Exemplos Orientada a objetos Funcional

Paradigmas de Programação Imperativo Declarativo Funcional Baseado em Lógica Orientação a Objetos Multi-paradigma? Linguagens podem ser classificadas? Nenhum critério de classificação atende plenamente

Linguagem imperativa Uma linguagem que opera através de uma sequência de comandos que modificam o valor dos elementos de dados Características principais: Comandos de atribuição Comandos de iteração

Linguagem procedimental Uma linguagem que define como computar o resultado/solução para um dado problema Inclui linguagens imperativas e funcionais

Linguagem declarativa Uma linguagem que opera através de comandos descritivos sobre dados e relações entre dados O algoritmo fica escondido na semântica da linguagem Inclui linguagens aplicativas e lógicas

Linguagem aplicativa Uma linguagem que opera através da aplicação de funções a valores, sem efeitos colaterais. Inclui linguagens funcionais no sentido amplo.

Linguagem funcional Em um sentido estrito, uma linguagem funcional opera através do uso de funções de mais alta ordem (higher-order functions), construindo operadores que manipulam funções diretamente sem aparentar que manipulam dados.

Linguagem lógica Uma linguagem lógica lida com predicados ou relações p(X,Y). Um programa consiste em um conjunto de cláusulas de Horn: fatos - p(X,Y) é verdade regras - p é verdade se q1e q2 e ...qn for verdade consultas – É verdade que g1 e g2 e ...gn? (gi's são goals.) Cláusulas adicionais são inferidas através de resolução.

Exemplos de paradigmas de programação Imperative programming, compared to Functional programming Procedural programming, compared to Declarative programming Class-based programming, compared to Prototype-based programming (within the context of Object-oriented programming) Aspect-oriented programming (as in AspectJ) Symbolic programming (as in Mathematica) Post-object programming Subject-oriented programming ...