Diferença chave: Uma linguagem de programação procedural consiste em um conjunto de chamadas de procedimento e um conjunto de códigos para cada procedimento. Uma linguagem de programação estrutural enfatiza a separação dos dados de um programa de sua funcionalidade. Por outro lado, linguagens orientadas a objetos são baseadas em entidades conhecidas como objetos.
Uma linguagem de programação é uma linguagem que consiste em instruções projetadas para os computadores. Os processadores só entendem o código da máquina quando ele alcança duas séries de 0s e 1s, também conhecidas como dados binários. O código da máquina é difícil de entender e, portanto, várias linguagens de programação estão sendo usadas, o que é mais compreensível do que o código da máquina e também oferece maior portabilidade.
Existem vários padrões com base nos quais a classificação de linguagens de programação pode ser obtida. No entanto, com base no paradigma de programação, pode-se classificá-los em três categorias: Linguagens de Programação de Procedimentos, Linguagens de Programação Estruturadas e Linguagens Orientadas a Objetos.
Linguagens procedurais de programação: Estas linguagens codificam programas de tal maneira que o programa executa uma declaração por instrução, lendo e modificando uma memória compartilhada. Este estilo de programação pode estar intimamente associado aos processadores sequenciais convencionais ligados a uma memória de acesso aleatório (RAM). Ele contém todos os recursos da programação procedural, bem como alguns outros recursos adicionais.
Assim, podemos nos referir a ela como uma linguagem de programação que executa um conjunto de comandos em ordem. Essas linguagens são baseadas no conceito definido pelas chamadas de procedimento. Isso significa que as instruções são organizadas em procedimentos. Esses procedimentos também são conhecidos como sub-rotinas ou funções. A vantagem mais importante da formação de procedimentos é que os procedimentos são compactos e também são limitados pelo escopo. Está escrito de uma maneira passo a passo, assim é muito fácil seguir os programas menores.
Exemplos Pascal. Fortran, COBOL
Linguagens de programação estruturada: baseiam-se na metodologia top down, na qual um sistema é subdividido em subsistema de composição. O conceito de programação estruturada foi formalizado no ano de 1966 por Corrado Böhm e Giuseppe Jacopini. Eles mostraram o design teórico do programa de computador com o auxílio de loops, seqüências e decisões.
A programação estruturada não se limita apenas à abordagem de cima para baixo. Emprega métodos usando: -
1. Análise de cima para baixo para resolução de problemas: Ele se concentra em dividir o problema em sub partes e, portanto, simplifica a resolução de problemas.
2. Modularização para estrutura e organização de programas: Organiza grandes instruções dividindo-as em seções separadas e menores de módulos, sub-rotinas e subprogramas.
3. Código estruturado para os módulos individuais: As estruturas de controle são usadas para determinar a ordem exata na qual o conjunto de instruções deve ser executado. Portanto, um código estruturado não envolve a declaração GOTO, pois não representa uma determinada ordem de execução.
Exemplo ALGOL, Pascal, Pl / I, C, Ada
Linguagens Orientadas a Objetos: Linguagens de programação orientadas a objetos são baseadas em 'objetos' ao invés de 'ações'. Esta linguagem dá mais preferência aos dados do que à lógica. Um objeto pode ser definido como o pareamento de um pedaço de dados com as operações que podem ser executadas nele. É um dos tipos mais recentes e poderosos. Objetos são capazes de armazenar informações e também podem interagir com outros objetos.
Os três principais conceitos definidos por uma linguagem de programação de objeto são: -
- Encapsulamento de dados ou abstração de dados
- Herança ou Derivação
- Ligação dinâmica ou de tempo de execução
Exemplos C ++, C #, BETA, Capela
As vantagens desses idiomas estão listadas abaixo:
Procedural | Estrutural | Orientado a Objeto |
1.Simples, fácil implementação de compiladores e intérpretes 2. A capacidade de reutilizar o mesmo código em diferentes locais do programa sem copiá-lo. 3. Uma maneira mais fácil de acompanhar o fluxo do programa. 4. A capacidade de ser fortemente modular ou estruturada. 5. Precisa apenas de menos memória. | 1. Os programas são mais facilmente e mais rapidamente escritos 2. Os programas são confiáveis, pois ocorrem menos erros organizacionais e lógicos durante os estágios iniciais do desenvolvimento do programa. | 1. Melhor produtividade de desenvolvimento de software devido à modularidade, extensibilidade e reutilização. 2. Manutenção de Software Melhorada 3. Reutilização ajuda no desenvolvimento mais rápido de programas, como a linguagem vem valha biblioteca rica de objetos 4. Menor custo de desenvolvimento 5. Maior qualidade de software pode ser assegurada |