Mind map
Paradigmas das linguagens de programação
Map content
Paradigmas das linguagens de programação
Programação Estruturada
- Geralmente são linguagens mais fáceis de aprender, uma vez que envolve um menor número de conceitos distintos do que aqueles apresentados por outros paradigmas.
- Apresentam maiores dificuldades na representação de soluções para certos “problemas do mundo real”, que geralmente são mais complexos.
- Na programação estruturada, o programador deve descrever todo o seu programa por meio de instruções, estruturas de dados e subrotinas e qualquer programa pode ser reduzido a três tipos de estruturas: sequência, decisão e interação. Algumas das linguagens de programação consideradas estruturadas são: Pascal, C, COBOL e Fortran.
Programação orientada a objetos
- Graças aos novos conceitos introduzidos por meio da orientação a objetos, conseguiu-se uma melhor organização do código, geralmente separado em classes e bibliotecas.
- A programação orientada a objetos apresenta um maior número de conceitos e abstrações necessárias, quando comparada à programação estruturada, o que pode tornar seu aprendizado um pouco mais complexo.
- Na programação orientada a objetos, compreende-se a necessidade de compreender o problema por meio da relação existente entre as diversas entidades que participam do mesmo, sendo assim, a solução para o problema deve ser implementada levando-se em consideração os objetos e suas interações que sejam pertinentes ao universo do problema. Alguns exemplos de linguagens orientadas a objetos são C++, Object Pascal e Java.
Programação concorrente
- Aumento do desempenho, na medida em que melhor se utiliza de todos os recursos computacionais disponíveis; possibilidade de melhor modelagem dos programas, pois determinados problemas computacionais são concorrentes por natureza.
- Programação mais complexa, com possíveis erros decorrentes da própria concorrência; difícil depuração devido ao aspecto não-determinístico que a solução pode tomar.
- A programação concorrente visa estudar e propor como melhor desenvolver programas visando esse cenário, onde processos executam simultaneamente e concorrem por recursos, como a memória e o próprio processamento. Várias linguagens oferecem suporte à programação concorrente, como Java, C#, C++, C e Object Pascal. Como se pode perceber, uma mesma linguagem pode oferecer suporte a mais de um subparadigma.
Programação funcional
- Há uma maior transparência referencial, uma vez que todo o programa é composto por funções, tornando-se mais fácil efetuar uma inspeção do código.
- Não oferece alocação explícita de memória ou declaração explícita de variáveis, necessários para a resolução de muitos problemas reais.
- O código-fonte de um programa escrito em linguagem funcional pode ser interpretado como um conjunto de funções que recebem zero ou mais argumentos como entrada e retornam sempre um valor em sua saída. Cada função, então, deve realizar um conjunto de operações sobre os parâmetros de entrada a fim de obter a saída. Algumas linguagens que se utilizam dessa abordagem são APL, Lisp, ML, Haskell, OCaml e F#.
Programação lógica
- Pode haver explosão combinatorial da base de conhecimento levando a grande desperdício de recursos computacionais.
- Muito úteis em problemas que possam ser resolvidos por meio de dedução ou inferência.
- Esta é a abordagem da programação que faz forte uso da lógica matemática para a resolução de problemas, geralmente por meio de valores ou objetos e relações entre os mesmos, formulando-se assim proposições e regras.
Linguagens de programação multiparadigma
- Programação Imperativa
- Há uma grande preocupação quanto ao detalhamento do funcionamento de programas.
- Programação declarativa
- Trata-se de uma abordagem focada em descrever o que o programa deve fazer e menos em como seus procedimentos devem funcionar.Na programação declarativa, não há a ideia de estado do programa, como ocorre na programação imperativa. Dentro do paradigma declarativo, podemos identificar a programação funcional, a programação lógica e a programação restritiva.
- Programação restritiva
- A programação restritiva nasceu da programação lógica (motivo pelo qual muitos autores apontam-na como parte da programação lógica). Ela se utiliza de restrições na definição de relações entre as variáveis.
- Programação Imperativa
Information
- Description
- Mind Map on Paradigmas das linguagens de programação, created by eduardo vinicius ben on 19/05/2015.
- Created by
- eduardo vinicius ben
- Views
- 0
- History
-
- Created by Kaue Storch · May 19, 2015
- Copied by eduardo vinicius ben · May 19, 2015
- Rating