Linguagem de Programação

Processo: em edição

Procedimento: em edição

Unidade de Significado (Expressões primitivas): os elementos mais simples (atômico) da linguagem.

Meios de Abstração: os elementos compostos podem ser nomeados e manipulados como unidades.

Meios de Combinação: os elementos compostos são construídos a partir de elementos mais simples.

As partes importantes ao aprender uma nova linguagem de programação são:

  • Sintaxe (syntax): as regras de construção da linguagem.
  • Semântica (semantics): significado das características da linguagem, sendo o verificador de tipo (type-checker) em tempo de compilação (ambiente estático ou contexto - escopo léxico) para verificação (type checking) e/ou inferência (type inference) dos tipos; e a avaliação (evaluation) das expressões em tempo de execução (ambiente dinâmico ou ambiente - escopo dinâmico) para produção do valor.
  • Expressão Idiomática (idioms): padrões típicos de utilização das características da linguagem.
  • Bibliotecas (libraries): conjunto de código de apoio com o propósito de facilitar o desenvolvimento na linguagem. Aplicação -> Toolkits (Bibliotecas) -> Frameworks (Arcabouços).
  • Ferramentas (tools): programas de auxílio ao desenvolvimento na linguagem, tais como compiladores, interpretadores, depuradores e etc...

Interpretação

Etapas de interpretação de um programa de computador:

[Source Code] --- code ---> [Tokenizer] --- token ---> [Parser] --- data structure ---> [Evaluator]

O código fonte é separado em palavras na qual são analisadas e transformadas em estrutura de dados, assim sendo executadas uma por vez.

Paradigma

Os paradigmas das linguagens de programação são:

  • Declarativo
    • Funcional
    • Fluxo de Dados
    • Lógico
  • Imperativo
    • Von Neumann: visão de software sobre a arquitetura do computador, com estruturas de controle (decisão e repetição) e funções.
    • Orientada a Objetos: visão de abstração (antropomorfismo) do mundo real, com herança (inheritance), polimorfismo (polymorphism), abstração (abstraction) e encapsulamento (encapsulation).
    • Script: uma forma dinâmica de resolver problemas computacionais.
  • Programação Orientada a Linguagem

Muitas linguagens são multiparadigmas, principalmente com um balanço entre Orientada a Objetos/Script e Funcional, alguns casos com DSL em Fluxo de Dados.

Tipos

results matching ""

    No results matching ""