Continuando os artigos sobre os paradigmas de programação, vamos falar sobre o Paradigma Declarativo.
Contextualizando...
Diferente do Paradigma Imperativo, o Paradigma Declarativo tem como o foco principal o que fazer e não o como fazer.
Imagine que agora você vai pedir um sanduba com aquele combo caprichado, e para isso basta, você pegar o celular, abrir um desses aplicativos de delivery e de forma declarativa fazer o pedido e aguardar chegar, correto? E provavelmente você não se importa como o sanduíche foi feito e chegou, o importante é o resultado, ou seja, o pedido ter chegado de acordo com o que foi escolhido.
Se fossemos escrever um algoritmo, as instruções seriam passadas tudo de forma declarativa, ou seja, iriamos passar uma sequência de funções a serem executadas sem nos preocupar em como essas funções foram implementadas. De forma que o resultado esperado será sempre o mesmo, o pedido ter chegado de acordo com o que foi escolhido.
Ao nível computacional, estaríamos escrevendo um algoritmo de forma declarativa, onde passaríamos um passo a passo do que fazer para que o computador possa executar, porém, com um nível maior de abstração.
Dessa forma, o programador deve preocupar com o resultado esperado e não necessariamente em como o resultado deve ser computado.
Linguagens de programação
Algumas linguagens baseiam-se no modelo declarativo, dentre elas: Elixir, Erlang, Haskell, Lisp, SQL.
Outras linguagens possibilitam um mix entre os paradigmas imperativo e declarativo, conhecidas como linguagens multi-paradigmas (veja este artigo que escrevi sobre linguagens multi-paradigmas).
Exemplos de linguagens de programação multi-paradigma são: C++, Groovy, Scala, Swift, Ruby, Lua e Python.
Top comments (0)