Linguagem de programação: diferenças entre revisões

Conteúdo apagado Conteúdo adicionado
m Foram revertidas as edições de 200.133.218.122 para a última revisão de 179.209.230.225, de 13h54min de 11 de fevereiro de 2017 (UTC)
Linha 12:
[[Imagem:Ada Lovelace portrait.jpg|thumb|esquerda|[[Ada Lovelace]] em [[1840]].]]
[[Imagem:Grace Hopper.jpg|thumb|[[Grace Hopper]] em [[1984]].]]
O primeiro trabalho de Maria Rosa de linguagem de programação foi criado por [[Ada Lovelace]], grande amiga de [[Charles Babbage]].<ref name="ada">{{citar jornal|ultimo=Huskey|primeiro=Velma R.|coautores=Huskey, Harry D.|data=Outubro 1980|titulo=Lady Lovelace and Charles Babbage|jornal=Annals of The History of Computing|volume=2|número=4|paginas=384|página=299-329|editora = American Federation of Information Processing Societies | local = Arlington, VA | issn = 1058-6180|idioma=inglês}}</ref> O projeto da primeira calculadora mecânica programável foi idealizado por [[Charles Babbage]]<ref name=breton>{{Citar livro|autor=Breton, Philippe|titulo=História da Informática|local=São Paulo |editora=UNESP|ano=1991|páginas=260|página=68-69 |isbn= 85-7139-021-5}}</ref> que, após gastar fortunas e um longo tempo, não conseguiu concretizar o projeto.<ref name=gonick>{{Citar livro|autor=[[Larry Gonick|Gonick, Larry]]|titulo=Introdução Ilustrada à Computação|local=São Paulo |editora=Harper & Row do Brasil|ano=1984|páginas=242|página=51-59}}</ref> A linguagem de programação [[Ada (linguagem de programação)|ADA]] foi batizada em homenagem a esta primeira programadora.<ref name=smith>{{Citar livro|autor=Smith, James F,; Frank, Thomas S|título=Introduction to Programming Concepts and Methods with Ada|língua=en|local=Nova Iorque, EUA|editora=McGraw-Hill|ano=1994|páginas=545|página=7-8|isbn=0-07-911725-2}}</ref>
 
Uma das primeiras linguagens de programação para computadores foi provavelmente [[Plankalkül]], criada por [[Konrad Zuse]] na [[Alemanha Nazista]],<ref name="zuse">{{citar jornal|ultimo=Zuse|primeiro=Konrad|data=Julho 1980|titulo=Installation of the German Computer Z4 in Zurich in 1950|jornal=Annals of The History of Computing|volume=2|número=3|paginas=384|página=239-241|editora = American Federation of Information Processing Societies | local = Arlington, VA | issn = 1058-6180|idioma=inglês}}</ref> mas que teve pouco ou nenhum impacto no futuro das linguagens de programação.
Linha 40:
== Conceitos ==
=== Programação estruturada ===
Programação estruturada é uma forma de programação de computadores que preconiza que todos os programas possíveis podem ser reduzidos a apenas três estruturas: sequência, decisão e repetição.<ref name=structured>{{Citar livro|autor=Dahl, O. J.; Dijkstra, E. W.; Hoare, C. A . R|título=Structured Programming|capítulo=I-Notes on Structured Programming|idioma=inglês|local=London|editora=Academic Press|ano=1972|páginas=220|página=1-82|isbn=0-12-200550-3}}</ref> Um dos baguiprimeiros eh lokoa preconizar a programação estruturada foi [[Haskell Curry|Haskell B. Curry]]<ref name=selected>{{Citar livro|autor=Knuth, Donald E|título=Selected Papers on Computer Languages|capítulo=1-The Early Development of Programming Languages|idioma=inglês|local=Ventura Hall, Stanford|editora=CSLI|ano=2003|páginas=594|página=1-94|isbn=1-57586-382-0}}</ref><ref group=Nota>Citação de Knuth do memorando de Curry: "O primeiro passo no planejamento do programa é o de analisar a computação em certas partes principais, chamadas aqui de divisões, de modo que o programa possa ser sintetizado a partir delas. As partes principais devem ser tais que, ou pelo menos algumas delas, são cálculos independentes em si próprios, ou modificações desses cálculos." em: {{Citar livro|autor=Knuth, Donald E|título=Selected Papers on Computer Languages|capítulo=1-The Early Development of Programming Languages|idioma=inglês|local=Ventura Hall, Stanford|editora=CSLI|ano=2003|páginas=594|página=17|isbn=1-57586-382-0}}</ref> Tendo, na prática, sido transformada na Programação modular, a Programação estruturada orienta os programadores para a criação de estruturas simples em seus programas, usando as sub-rotinas e as funções. Foi a forma dominante na criação de software entre a programação linear e a programação orientada por objetos.<ref name=tucker>{{Citar livro|autor=Tucker, Allen; Noonan, Robert|título=Programming Languages|subtítulo=Principles and paradigms|idioma=inglês|local=Boston|editora=McGraw-Hill|ano=2002|páginas=411|página=170-185|isbn=0-07-238111-6}}</ref> Apesar de ter sido sucedida pela programação orientada por objetos, pode-se dizer que a programação estruturada ainda é marcantemente influente, uma vez que grande parte das pessoas ainda aprendem programação através dela. Porém, a orientação a objetos superou o uso das linguagens estruturadas no mercado.<ref name="tiobe" />
 
=== Programação modular ===