Paradigmas De programação. Por que Estudar ?
Quando o assunto é programação podemos afirmar que todo nosso esforço em desenvolver programas, de uma forma geral, é com o objetivo de resolver problemas e/ou otimizar processos. A ferramenta que usamos na construção de softwares são as linguagens de programação e, cada linguagem, por sua vez, tem suas vantagens e desvantagens. Podemos utilizar varias linguagens diferentes para resolver o mesmo problema e, é a partir desse ponto que surge a importância de se estudar os paradigmas nos quais essas linguagens são baseadas. Estudando os paradigmas de programação podemos entender melhor os processos por trás das LP's e descobrir quais linguagens podem ser mais adequadas para resolver determinados problemas.
Paradigma Imperativo
A programação imperativa é baseada em comandos que gerenciam, basicamente, a maneira com que os dados serão armazenados e usados no decorrer do programa. O nome vem do latim "imperare" que significa "Comandar". As linguagens imperativas estão intimamente relacionadas ao design ou a arquitetura dos computadores(A maquina de Von Neuman). A CPU ( Unidade central de processamento) é responsável por todo processamento de dados em um computador e, é baseado na forma como as CPU'S funcionam que foram desenvolvidas linguagens tais Como C e ADA.
http://www.instrutorkleber.blogger.com.br/TEORIA_DE_VON_NEWMAN.jpg
Então como podemos ver muitas coisas são possíveis na programação imperativa devido a sua relação com a arquitetura de Von Neumann(mais informações). As linguagens imperativas tem algumas importantes características : Variáveis, comandos de atribuição e sequência (ordem).
Neste exemplo temos uma variável "a" do tipo inteiro e atribuímos a ela o valor que ela tinha anteriormente mais cinco. Existem ainda o que chamamos de "laços" e que também é muito útil quando se quer acumular determinados valores em uma variável ou quando queremos que o programa execute um determinado número de vezes e etc. Exemplo:
http://www.instrutorkleber.blogger.com.br/TEORIA_DE_VON_NEWMAN.jpg
Então como podemos ver muitas coisas são possíveis na programação imperativa devido a sua relação com a arquitetura de Von Neumann(mais informações). As linguagens imperativas tem algumas importantes características : Variáveis, comandos de atribuição e sequência (ordem).
- Variáveis : As variáveis estão ligadas a um endereço de memória,ou seja, todo valor atribuído a uma variável é armazenada nesses endereços de memória e quando precisa-se usar o valor armazenado na variável a CPU vai naquele determinado endereço e pega o valor para, a partir daí, processá-lo.
- Comandos de atribuição: Tais comandos permitem que possamos alterar o estado de variáveis e, consequentemente, do programa. Com isso as variáveis mudam com o tempo.Veja o exemplo abaixo:
Neste exemplo temos uma variável "a" do tipo inteiro e atribuímos a ela o valor que ela tinha anteriormente mais cinco. Existem ainda o que chamamos de "laços" e que também é muito útil quando se quer acumular determinados valores em uma variável ou quando queremos que o programa execute um determinado número de vezes e etc. Exemplo:
- Sequência : Por ultimo e não menos importante é a ordem do programa. O computador Executa as instruções que fornecemos como uma sequência de comandos, portanto, devemos especificar o que queremos que ele faça primeiro no programa. É como se no programa existisse uma hierarquia. Por exemplo se vamos fazer uma vitamina e ligamos o liquidificador primeiro para só depois colocar os ingredientes isso vai dar M...(hahahaha).
Então é isso Ai Pessoal espero que tenham entendido algum conceitos que são utilizados na programação imperativa.
Referências : Watt, David A., Findlay,William. (2004) Programing Language Design Concepts, John Wiley&Sons. Ltd,the Atrium,Southern Gate, Chichester, England.
http://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_imperativa
http://informacaocomdiversao.blogspot.com.br/2006/01/programao-imperativa-versus-programao.html
http://www.codingunit.com/c-tutorial-for-loop-while-loop-break-and-continue


