GoConqr hat ein neues Design! Sag uns, wie es dir gefällt.

Mindmap

Paradigmas de Programação

Paulo Sérgio da Soledade Cerqueira Computação Portugiesisch

Mapa mental sobre paradigmas de programação: imperativo, funcional, lógico, orientado a objetos e estruturado

Mapa mental: Paradigmas de programação

Inhalt der Mindmap

Paradigmas de Programação

  1. Um paradigma é o que determina o ponto de vista da realidade e como se atua sobre ela

  2. Imperativo

    • Baseado na arquitetura de Von Neumann seguindo o conceito de um estado e de ações que manipulam esse estado. Podemos denominá-lo de procedural.
    • Ada; ALGOL; Assembler; Basic; C; Cobol; Fortran; Pascal; Python; Lua
    • Eficiente (porque embute o modelo de Von Neumann); modelagem “natural” de aplicações do mundo real; paradigma dominante e bem estabelecido e também muito flexível.
    • De difícil legibilidade; as instruções são centradas no como e não no o que.
  3. Funcional

    • Trata a computação como uma avaliação de funções matemáticas. funções podem ser parâmetros ou valores de entrada para outras funções e podem ser os valores de retorno ou saída de uma função.
    • Efeitos colaterais no cálculo da função são eliminados. A recursividade em programação funcional pode assumir várias formas e é em geral uma técnica mais poderosa que o uso de laços do paradigma imperativo.
    • Parecem faltar diversas construções freqüentemente consideradas essenciais em linguagens imperativas. Por exemplo, não há alocação explícita de memória nem de variáveis.
    • Lambda; LISP; Scheme; ML; Miranda; Haskell;
  4. Lógico

    • Programas são relações entre Entrada/Saída. Possui estilo declarativo, como o paradigma funcional. Inclui características imperativas, por questões de eficiência.
    • Variáveis de programa não possuem tipos, nem são de alta ordem.
    • Popler; Conniver; QLISP; Planner; Prolog; Mercury; Oz; Frill.
    • Possui a princípio todas as vantagens do paradigma funcional. E permite concepção da aplicação em um alto nível de abstração.
  5. Orientado a objetos

    • Possui todas as vantagens do paradigma imperativo entre outras: a alteração de um módulo não incorre na modificação de outros módulos; quanto mais um módulo for independente, maior a chance dele poder ser reutilizado em outra aplicação.
    • Baseada na composição e interação de diversas unidades de softwares denominados objetos.
    • Smalltalk; Python; Ruby; C++; Object Pascal; Java; C#; Oberon; Ada; Eiffel; Simula; .NET
    • Exige formas de pensar relativamente complexas.
  6. Estruturado

    • C; Basic; Pascal; Cobol;
    • Os problemas podem ser quebrados em vários subproblemas, boa legibilidade e boa compreensão da estrutura.
    • Preconiza que todos os programas possíveis podem ser reduzidos a apenas três estruturas: seqüência, decisão e iteração
    • Os dados são separados das funções; Mudanças na estrutura dos dados acarreta alteração em todas as funções relacionadas. Gera sistemas difíceis de serem mantidos;

Informationen

Beschreibung
Este mapa tem como objetivo esboçar os paradigmas das diferentes linguagens de programação de computadores.
Aufrufe
25
Bewertung

Feedback

Worum geht es?

Wie gefällt dir das neue Design?

Dein Eindruck