Escolar Documentos
Profissional Documentos
Cultura Documentos
Linguagens de Programao.
Ana Paula Simiqueli Borges Alegre, Novembro de 2011.
Sumrio
Introduo ....................................................................................................................................................3 2. Tipologia de Linguagens .........................................................................................................................4 2.1 Por nveis ...........................................................................................................................................4 2.2 Por Geraes ......................................................................................................................................4 2.3 Por reas de Aplicao ...................................................................................................................5 3. Tipos de Linguagens ................................................................................................................................6 3.1 Programaes Imperativas .................................................................................................................6 3.2 Programao Funcional .....................................................................................................................6 3.3 Programao baseada em lgica ........................................................................................................7 3.4 Programao Orientada por Objetos.............................................................................................7 4. Evoluo das Linguagens de Programao..............................................................................................8 5. Cdigo Fonte e Cdigo Mquina ...........................................................................................................13 6. Compilador e Interpretador ....................................................................................................................14 7. Linguagens .............................................................................................................................................15 7.1 JAVA ...............................................................................................................................................15 7.2 Assembly .........................................................................................................................................15 7.3 C......................................................................................................................................................16 7.4 COBOL ...........................................................................................................................................16 7.5 Python .............................................................................................................................................17 8. Concluso ..........................................................................................................................................18 9. Referencias Bibliogrficas. ...............................................................................................................19
Lista de Figuras
Figura 1 - Exemplo de Programao Imperativa.........................................................................................6 Figura 2- John Backus...................................................................................................................................8 Figura 3 Trecho de um cdigo em COBOL. ...............................................................................................9 Figura 4- John Kemeny e Thomas Kurtz. ......................................................................................................9 Figura 5 - Niklaus Wirth .............................................................................................................................10 Figura 6 Dennis Ritchie. ...........................................................................................................................10 Figura 7- Logotipo de Apresentao da linguagem de Programao JAVA. ..............................................12 Figura 8 Cdigo em Java.........................................................................................................................15 Figura 9 - Exemplo de cdigo de montagem. ...........................................................................................16 Figura 10 - Codigo em C .............................................................................................................................16 Figura 11 - Codigo em COBOL que monta o formato de data. ..................................................................17 Figura 12 - Codigo em Python ....................................................................................................................17
Introduo
A partir da necessidade de interao maquina-ser humano, sendo a linguagem da maquina de baixo nvel (Os e 1s) e a do ser humano de alto nvel (nmeros, textos,etc.) surgiram as linguagens de programao, que tem como objetivo promover a comunicao entre ambos. Elas diferem na sintaxe e recursos, mas tem um ponto em comum, que a existncia de um compilador. que interpretar os comandos inclusos no programa e os transformar em binrios, as instrues que so entendidas pelo processador.
2. Tipologia de Linguagens
As linguagens de programao podem ser representadas de vrias maneiras como:
3 Gerao PL/1, PASCAL, FORTRAN 8X, APL, C, SIMULA, BLISS, linguagens para procedimentos. 4 Gerao ADA, linguagem que produz programas noutras linguagens (Gerador de programas); SQL, QBE, utilizadas para bases de dados. 5 Gerao LISP, PROLOG, linguagens para especificar problemas.
4
Gerais ALGOL 68, PASCAL, SIMULA 67 Inteligncia Artificial PROLOG Programao de sistemas C
3. Tipos de Linguagens
Linguagem orientada por aes tendo como fundador o FORTRAN (FORmula TRANslator) criado pela IBM para o IBM 704 por um grupo liderado por John Backus. Criada para processar ficheiros de registros (RECORDS) surgiu a linguagem COBOL. Nos anos 60, foi elaborada a ALGOL, linguagem que deu origem mais tarde a outras duas linguagens, o PASCAL e o C. Para simplificar e para ser utilizada por qualquer utilizador sem ter de ser programador criou-se o BASIC. PL/1 foi uma linguagem que tentou juntar os conceitos das linguagens FORTRAN, ALGOL e COBOL sendo a primeira linguagem generalista. Criado com origem no ALGOL, surgiu o PASCAL sendo denominada como a linguagem didtica dos anos 70 e 80. A linguagem C hoje em dia utilizada para vrias aplicaes, mas quando foi criada era reservada para programao de sistemas. O MODULA, outra linguagem derivada, esta derivada do PASCAL, criada para o suporte de mdulos (ADT) e programao de sistemas.
- Surge o FORTRAN I com aplicaes para computao cientfica. 1958 - Criado o ALGOL 58 com o objetivo de facilitar a descrio de algoritmos; - Desenvolvido o FORTRAN II que corrigiu diversos erros do FORTRAN I; - Surgiu o FORTRAN III que nunca chegou a ter grande distribuio.
1959 - John McCarthy concebe o LISP que a primeira linguagem funcional e que s trabalhava com dois tipos de dados: tomos e listas (listas simples e listas aninhadas.)
1960 - Ano da criao do FORTRAN IV, sendo considerado como norma nas aplicaes de clculo cientifico; - Desenvolvimento do COBOL que veio permitir tratar grandes quantidades de informao comercial;
- Numa reunio que durou 6 dias em Paris surgiu o ALGOL 60 melhorando o ALGOL 58 e foi linguagem padro dos algoritmos nos prximos vinte anos e sendo a primeira linguagem independente do computador.
1962 - Kenneth Iverson quem cria o APL. 1964 - Surgimento do BASIC, feito por John Kemeny e Thomas Kurtz com a particularidade do acesso livre e da fcil aprendizagem por parte dos estudantes das reas no cientficas.
1965 - A IBM e a SHARE concebem o PL/I juntando o que havia de melhor nas linguagens existentes. 1967 - Ano de criao do SIMULA 67 por Dahl e Nygaard que foi desenvolvido com base no ALGOL 60. 1968 - Surge o ALGOL 68, continuao do desenvolvimento do ALGOL 60. 1971 - Niklaus Wirth cria o PASCAL tendo como caracterstica a necessidade de as variveis serem declaradas no inicio dos programas, linguagem utilizada no ensino de programao estruturada.
- Alan Kay quem concebe o SMALLTALK no XEROX Park, primeira linguagem a utilizar interface grfica; - Na Universidade de Marselha cria-se o PROLOG, linguagem aplicada em gerncia de bases de dados; - Nos laboratrios Bell, Dennis Ritchie cria o C, que tinha como objetivo formar o sistema operativo UNIX, linguagem pequena, flexvel e capaz de criar cdigo eficiente.
10
1975 - Criado o ADA, desenvolvida para o Departamento de Defesa dos EUA, criada em homenagem a Ada Augusta Byron (ajudante e patrocinadora de Charles Babbage), linguagem para programas complexos e grandes. 1978 - Ano de criao do FORTRAN 77 onde surge a instruo IF-THEN-ELSE ao contrrio das verses anteriores onde se utilizava o GO TO; - E.F. Codd, da IBM, cria a linguagem SQL, linguagem direcionada para base de dados. 1985 - Criado o C++ por Bjarne Stroustrup com o intuito de melhorar a linguagem C, tendo como uma das vantagens poder programar em baixo e alto nvel, softwares como o Emule, Microsoft Office ou o Internet Explorer foram criados em linguagem C++; - Surge a linguagem EIFFEL, por Bertrand Meyer da ISE, linguagem que no casesensitive, o que facilita a escrita. 1987 - Criado o PERL por Larry Wall, linguagem que possibilita a sua utilizao em vrios sistemas operativos e usado na maioria para criar aplicaes Web. 1990 - Criao do FORTRAN 90 que ganhou recursos; - Em homenagem a Haskell Curry criada a linguagem HASKELL, linguagem essencialmente funcional. 1991 - Lanada uma linguagem de alto nvel, a PYTHON por Guido van Rossum e com uma sintaxe esclarecedora devido ao poder da biblioteca padro que possui;
- A Sun Microsystems atravs de James Gosling criou a linguagem JAVA, linguagem orientada a objetos.
11
1993 - Roberto Ierusalimschy, Luiz Henrique de Figueiredo e Waldemar Celes criaram a linguagem LUA, linguagem imperativa, de procedimentos e de abstrao de dados.
1995 - A Sun cria o JAVASCRIPT com base no C++ sendo um pouco mais simples; - Rasmus Lerdof cria a linguagem PHP, com a caracterstica de ter portabilidade; - Surge a linguagem RUBY, por Yukihiro Matsumoto sendo esta uma linguagem orientada a objetos; - Criada a linguagem DELPHI pela Borland Software Corporation, linguagem orientada a objetos e eventos.
2000 - Criada a linguagem C# por Anders Hejlsberg e sua equipa e usada como parte da plataforma .NET
12
13
6. Compilador e Interpretador
Compilador So programas que atravs de um cdigo fonte escrito numa linguagem compilada, cria um programa com o mesmo significado mas escrito em cdigo mquina sendo perceptvel e possvel ao computador executar o programa.
Interpretador So programas que aps lerem um cdigo fonte de uma linguagem de programao interpretada, convertem o cdigo fonte em cdigo executvel. O interpretador pode ler linha a linha e converter o programa conforme o vai executando ou pode ler todo o programa e converte-lo de uma s vez e execut-lo.
14
7. Linguagens
Algumas delas so:
7.1 JAVA
Java uma linguagem de programao orientada a objeto que diferentemente das linguagens convencionais, que so compiladas para cdigo nativo, a linguagem Java compilada para um bytecode que executado por uma mquina virtual. Ela Possui facilidades para criao de programas distribudos e multitarefa e distribuda com um vasto conjunto de bibliotecas.
7.2 Assembly
Tambm conhecida como linguagem de montagem uma notao legvel por humanos para o cdigo de mquina que uma arquitetura de computador especfica usa. A linguagem de mquina, que um mero padro de bits, torna-se legvel pela substituio dos valores em bruto por smbolos chamados mnemnicos ( um auxiliar de memria.) Ao contrrio do que acontece nas linguagens de alto nvel, existe (at certo ponto) uma correspondncia de 1 para 1 entre a linguagem de montagem simples e a linguagem de mquina. Por isso a traduo do cdigo de montagem em cdigo de mquina no chamada compilao, mas montagem. Consegue-se transformar a linguagem de montagem em linguagem de mquina recorrendo a um montador(tambm chamado assembler, originado do termo asembl em francs), e a transformao inversa faz-se recorrendo a um desmontador(tambm chamado disassembler).
15
7.3 C
C uma linguagem imperativa e procedural, para implementao de sistemas. Seus pontos de design foram para ele ser compilado, fornecendo acesso de baixo nvel memria e baixos requerimentos do hardware. Tambm foi desenvolvido para ser uma linguagem de alto nvel, para maior reaproveitamento do cdigo. ponto forte, a sua eficincia, e a linguagem de programao preferida para o desenvolvimento de sistemas e softwares de base, apesar de tambm ser usada para desenvolver programas de computador.
Figura 10 - Codigo em C
7.4 COBOL
uma linguagem de programao de Terceira Gerao. COBOL a sigla deCOmmon Business Oriented Language (Linguagem Orientada aos Negcios), que define seu objetivo principal em sistemas comerciais, financeiros e administrativos para empresas e governos. foi definido na especificao original, possuia excelentes capacidades de autodocumentao, bons mtodos de manuseio de arquivos, e excepcional modelagem de dados
16
para a poca, graas ao uso da clusula PICTURE para especificaes detalhadas de campos. Entretanto, segundo os padres modernos de definio de linguagens de programao, tinha srias deficincias, notadamente sintaxe prolixa e falta de suporte de variveis locais, recorrncia, alocao dinmica de memria e programao estruturada. A falta de suporte linguagem orientada a objeto compreensvel, j que o conceito era desconhecido naquela poca.
7.5 Python
Python uma linguagem de programao de alto nvel[4], interpretada, imperativa,orientada a objetos, de tipagem dinmica e forte. Apesar de vrias partes da linguagem possurem padres e especificaes formais, a linguagem como um todo no formalmente especificada. O padro de facto a complementao CPython.
17
8. Concluso
Neste trabalho vimos como cada linguagem tem o seu tipo de aplicao, a sua maneira de comunicar com o computador varia conforme o desfecho pretendido. Utilizadas em vrios sectores desde o informtico ao comercial passando pelo lazer, as linguagens vo servindo de base para todo o tipo de comunicao com o computador e atravs dessa comunicao vamos subindo patamares na evoluo tecnolgica.
18
9. Referencias Bibliogrficas.
Textos http://pt.wikipedia.org/wiki/Anexo:Lista_de_linguagens_de_programao http://www.slideshare.net/efaredes/linguagens-de-programao
19