Buscar

Programação procedural Wikipédia, a enciclopédia livre

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

Programação procedural
Origem: Wikipédia, a enciclopédia livre.
O termo Programação procedural (ou programação procedimental) é às vezes utilizado como
sinônimo de Programação imperativa (Paradigma de programação que especifica os passos que um
programa deve seguir para alcançar um estado desejado), mas pode se referir (como neste artigo) a
um paradigma de programação baseado no conceito de chamadas a procedimento (en: procedure
call). Os Procedimentos, também conhecidos como rotinas, subrotinas, métodos, ou funções (que não
devem ser confundidas com funções matemáticas, mas são similares àquelas usadas na programação
funcional) simplesmente contêm um conjunto de passos computacionais a serem executados. Um
dado procedimento pode ser chamado a qualquer hora durante a execução de um programa, inclusive
por outros procedimentos ou por si mesmo.
A programação procedural é geralmente uma escolha melhor que a programação sequencial e não
estruturada em muitas situações que envolvem uma complexidade média e requerem facilidade de
manutenção. Possíveis benefícios são:
A habilidade de reutilizar o mesmo código em diferentes lugares no programa sem copiá-lo
Uma forma mais fácil de organizar o fluxo do programa que uma coleção de comandos "goto
(programação)" ou "jump" (que podem transformar um programa grande e complicado no assim
chamado Código espaguete)
A habilidade de ser fortemente modular e estruturado
Procedimentos e modularidade
Comparação com a programação imperativa
Linguagens de programação procedural
Ver também
Ligações externas
A Modularidade é uma característica geralmente desejável, especialmente em programas grandes e
complicados. Ela pode ser alcançada com a utilização de procedimentos com canais de entrada e
saída estritamente definidos, usualmente acompanhados de regras claras sobre quais tipos de
entrada e saída são permitidos ou esperados. As entradas costumam ser especificadas sintaticamente
na forma de argumentos, e as saídas entregues na forma de valores de retorno.
O gerenciamento de escopo é outra técnica que ajuda a manter procedimentos fortemente modulares.
Ela impede que o procedimento acesse variáveis de outros procedimentos (e vice-versa), incluindo
instâncias anteriores de si mesmo, sem autorização explícita. Isto ajuda a impedir confusões entre
variáveis com o mesmo nome sendo utilizadas em locais diferentes, e também que os procedimentos
atrapalhem a execução um do outro.
Índice
Procedimentos e modularidade
https://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_imperativa
https://pt.wikipedia.org/wiki/Paradigma_de_programa%C3%A7%C3%A3o
https://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_funcional
https://pt.wikipedia.org/w/index.php?title=Programa%C3%A7%C3%A3o_sequencial&action=edit&redlink=1
https://pt.wikipedia.org/wiki/Goto_(programa%C3%A7%C3%A3o)
https://pt.wikipedia.org/w/index.php?title=Jump_(programa%C3%A7%C3%A3o)&action=edit&redlink=1
https://pt.wikipedia.org/wiki/C%C3%B3digo_espaguete
https://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_estruturada
https://pt.wikipedia.org/wiki/Modularidade
Procedimentos menos modulares, freqüentemente utilizados em programas pequenos ou escritos
rapidamente, tendem a interagir com um grande número de variáveis no ambiente de execução, que
também podem ser modificadas por outros procedimentos. O fato de que muitas variáveis agem
como pontos de contato entre as várias partes do programa é o que o torna menos modular.
Por causa da habilidade de especificar uma interface simples, de serem auto-contidos, e de serem
reutilizados, procedimentos facilitam a criação de programas ou bibliotecas de programação por
várias pessoas ou grupos diferentes.
(Ver Módulo (programação) e Pacote de Software.)
Todas (ou pelo menos a maioria) das linguagens procedurais também são linguagens imperativas,
pois fazem referências explícitas ao estado do ambiente de execução. Isto pode significar desde
variáveis (que podem corresponder aos registradores do processador) a algo como a posição da
"tartaruga" na linguagem de programação Logo (que por sua vez pode ser desde um cursor na tela a
um dispositivo físico que se move no chão de uma sala).
Algumas formas de programação imperativa, como a programação orientada a objetos não são
necessariamente procedurais.
Para ser considerada procedural, uma linguagem de programação deve suportar o conceito de
procedimentos, e possuir uma sintaxe para defini-los. Idealmente, ela deve suportar a especificação
de tipos de argumentos, variáveis locais, chamadas recursivas e o uso de procedimentos em módulos
distintos de um programa. Ela também pode suportar a distinção entre argumentos de entrada e de
saída.
O exemplo canônico de uma linguagem de programação procedural é ALGOL. Uma linguagem em
que a única forma de procedimento é um método é geralmente considerada orientada a objetos ao
invés de procedural, e não será incluída nesta lista. Isto se aplica a C# e Java, mas não a C++.
Ada
ALGOL
BASIC
C
ColdFusion
COBOL
Component Pascal
D
Delphi
ECMAScript (e.g., ActionScript, DMDScript, JavaScript, JScript)
Forth
Fortran
F
Go (Golang)
Lasso
Linoleum
Lua
Comparação com a programação imperativa
Linguagens de programação procedural
https://pt.wikipedia.org/wiki/Biblioteca_(Computa%C3%A7%C3%A3o)
https://pt.wikipedia.org/wiki/M%C3%B3dulo_(programa%C3%A7%C3%A3o)
https://pt.wikipedia.org/w/index.php?title=Pacote_de_Software&action=edit&redlink=1
https://pt.wikipedia.org/wiki/Orienta%C3%A7%C3%A3o_a_objetos
https://pt.wikipedia.org/wiki/ALGOL
https://pt.wikipedia.org/wiki/M%C3%A9todo_(programa%C3%A7%C3%A3o)
https://pt.wikipedia.org/wiki/C_Sharp
https://pt.wikipedia.org/wiki/Java_(linguagem_de_programa%C3%A7%C3%A3o)
https://pt.wikipedia.org/wiki/C%2B%2B
https://pt.wikipedia.org/wiki/Ada_(linguagem_de_programa%C3%A7%C3%A3o)
https://pt.wikipedia.org/wiki/ALGOL
https://pt.wikipedia.org/wiki/BASIC
https://pt.wikipedia.org/wiki/C_(linguagem_de_programa%C3%A7%C3%A3o)
https://pt.wikipedia.org/wiki/ColdFusion
https://pt.wikipedia.org/wiki/COBOL
https://pt.wikipedia.org/w/index.php?title=Component_Pascal&action=edit&redlink=1
https://pt.wikipedia.org/wiki/D_(linguagem_de_programa%C3%A7%C3%A3o)
https://pt.wikipedia.org/wiki/Delphi_(linguagem_de_programa%C3%A7%C3%A3o)
https://pt.wikipedia.org/wiki/ECMAScript
https://pt.wikipedia.org/wiki/ActionScript
https://pt.wikipedia.org/w/index.php?title=DMDScript&action=edit&redlink=1
https://pt.wikipedia.org/wiki/JavaScript
https://pt.wikipedia.org/wiki/JScript
https://pt.wikipedia.org/wiki/Forth
https://pt.wikipedia.org/wiki/Fortran
https://pt.wikipedia.org/w/index.php?title=F_(linguagem_de_programa%C3%A7%C3%A3o)&action=edit&redlink=1
https://pt.wikipedia.org/wiki/Go_(linguagem_de_programa%C3%A7%C3%A3o)
https://pt.wikipedia.org/w/index.php?title=Lasso_(linguagem_de_programa%C3%A7%C3%A3o)&action=edit&redlink=1
https://pt.wikipedia.org/w/index.php?title=Linoleum&action=edit&redlink=1
https://pt.wikipedia.org/wiki/Lua_(linguagem_de_programa%C3%A7%C3%A3o)
Maple
Mathematica
MATLAB
Modula-2
Oberon (Oberon-1 e Oberon-2)
occam
M
Pascal
Perl
PHP
PL/C
Python
PL/I
Rapira
VBScript
Visual Basic
Programação funcional
Programação imperativa
Programação orientada a objetos
Paradigma de programação
Linguagem de programação
Programação estruturada
Programação procedural (https://dmoztools.net/Computers/Programming/Languages/Procedural)
no DMOZ
Obtida de "https://pt.wikipedia.org/w/index.php?title=Programação_procedural&oldid=57257685"
Esta página foi editada pela última vez às 11h52min de 23 de janeiro de 2020.
Este texto é disponibilizado nos termos da licença Atribuição-CompartilhaIgual 3.0 Não Adaptada (CC BY-SA 3.0) da
Creative Commons; pode estar sujeito a condições adicionais. Para mais detalhes, consulte as condições de utilização.
Ver também
Ligações externas
https://pt.wikipedia.org/wiki/Maple
https://pt.wikipedia.org/wiki/Mathematica
https://pt.wikipedia.org/wiki/MATLAB
https://pt.wikipedia.org/wiki/Modula-2
https://pt.wikipedia.org/wiki/Oberon_(linguagem_de_programa%C3%A7%C3%A3o)
https://pt.wikipedia.org/wiki/Occam_(linguagem_de_programa%C3%A7%C3%A3o)https://pt.wikipedia.org/wiki/MUMPS
https://pt.wikipedia.org/wiki/Pascal_(linguagem_de_programa%C3%A7%C3%A3o)
https://pt.wikipedia.org/wiki/Perl
https://pt.wikipedia.org/wiki/PHP
https://pt.wikipedia.org/w/index.php?title=PL/C&action=edit&redlink=1
https://pt.wikipedia.org/wiki/Python
https://pt.wikipedia.org/wiki/PL/I
https://pt.wikipedia.org/w/index.php?title=Rapira&action=edit&redlink=1
https://pt.wikipedia.org/wiki/VBScript
https://pt.wikipedia.org/wiki/Visual_Basic
https://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_funcional
https://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_imperativa
https://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_orientada_a_objetos
https://pt.wikipedia.org/wiki/Paradigma_de_programa%C3%A7%C3%A3o
https://pt.wikipedia.org/wiki/Linguagem_de_programa%C3%A7%C3%A3o
https://pt.wikipedia.org/wiki/Programa%C3%A7%C3%A3o_estruturada
https://dmoztools.net/Computers/Programming/Languages/Procedural
https://pt.wikipedia.org/wiki/DMOZ
https://pt.wikipedia.org/w/index.php?title=Programa%C3%A7%C3%A3o_procedural&oldid=57257685
https://creativecommons.org/licenses/by-sa/3.0/deed.pt
https://foundation.wikimedia.org/wiki/Condi%C3%A7%C3%B5es_de_Uso

Continue navegando