Escolar Documentos
Profissional Documentos
Cultura Documentos
Programao
Tema do trabalho
As Linguagens de Programao
Disciplina
Programao Web
Formador
Guilherme Batista
Elaborado por
Paulo Cardoso e Ricardo Paulino
Data:
03/12/2009
ndice
1. Introduo__________________________________________________________4 2. Tipologia de linguagens_______________________________________________5 3. Tipos de linguagem___________________________________________________7 4. Evoluo das linguagens de programao________________________________9 5. Cdigo Fonte e Cdigo Mquina_______________________________________13 6. Compilador e Interpretador__________________________________________14 7. Linguagem C_______________________________________________________14 8. Concluso_________________________________________________________22 9. Webgrafia_________________________________________________________23
1. Introduo
As linguagens de programao surgiram para descrever mecanismos abstractos, tm como objectivo a descrio e comunicao do utilizador ou programador para o computador. Com o passar dos anos as linguagens de programao vm sendo criadas a partir dos defeitos de outras linguagens ou por simples melhoria de desempenho e algumas designadas apenas para alguma tarefa especfica. Umas mais complexas que outras mas todas com o mesmo fim, solucionar algum problema.
2. Tipologia de Linguagens
As linguagens de programao podem ser representadas de vrias maneiras como demonstramos de seguida:
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.
3. Tipos de Linguagens
1954 - Criao do FORTRAN por John Backus, sendo considerada a primeira linguagem de alto nvel.
1958 - Criado o ALGOL 58 com o objectivo 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.
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.
10
1967 - Ano de criao do SIMULA 67 por Dahl e Nygaard que foi desenvolvido com base no 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.
1972 - 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 objectivo formar o sistema operativo UNIX, linguagem pequena, flexvel e capaz de criar cdigo eficiente.
11
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 direccionada 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 objectos.
12
1993 - Roberto Ierusalimschy, Luiz Henrique de Figueiredo e Waldemar Celes criaram a linguagem LUA, linguagem imperativa, de procedimentos e de abstraco 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 objectos; - Criada a linguagem DELPHI pela Borland Software Corporation, linguagem orientada a objectos e eventos.
2000 - Criada a linguagem C# por Anders Hejlsberg e sua equipa e usada como parte da plataforma .NET.
Cdigo Mquina
Cdigo representado por sequncias de bits, um conjunto de instrues que o processador de um computador consegue ler, executar. Um programa neste cdigo representado por variveis em sistema binrio, hexadecimal ou em alguns casos em sistema octal.
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.
7. Linguagem C
A linguagem C foi criada em 1972, uma linguagem padro, imperativa, procedimental ou estruturada de alto nvel que serviu para desenvolver o sistema operativo UNIX que era escrito em ASSEMBLY, uma das caractersticas no ser necessrio conhecer o processador. Foi standarizada em 1983 pela ANSI (American National Standard Institute).
Variveis
Quando programamos em C devemos ter em conta que o nome das variveis no pode ser igual ao nome de uma funo nem igual ao nome de uma palavra reservada, e para a escrita de uma varivel no devemos ultrapassar os 32 caracteres nem colocar caracteres especiais.
14
Constantes
A linguagem C permite que se utilize constantes hexadecimais e octais, no caso das hexadecimais as constantes tm de comear com 0x, nas octais tm de comear com 0. .
Caractersticas
- Tem rapidez capaz de conseguir desempenhos iguais aos do ASSEMBLY; - Tem uma grande popularidade em todo o mundo; - Pode utilizar-se em diversas mquinas e sistemas operativos; - uma linguagem que tem uma sintaxe simples com poucas palavras reservadas; - Permite juntar vrios mdulos para criar uma nica aplicao; - uma linguagem para compiladores, em que l o cdigo fonte e cria o cdigo objecto apenas uma vez; - sensvel a letras maisculas (Case Sensitive); - As bibliotecas utilizadas tm de ser indicadas nas primeiras linhas do programa.
Aplicaes escritas em C
A linguagem serviu de base para vrias aplicaes tais como: - A reestruturao do sistema operativo UNIX; - As folhas de clculo 1, 2, 3 e o Excel (Inicial); - As bases de dados dBase III, IV e o Access; - Efeitos especiais em filmes (Star Trek, Star Wars).
15
Estrutura de um programa em C
Directivas ao pr-processador - Includes - Macros Declaraes Globais - Funes - Variveis Definio das Funes Main () { /* begin */ } /* end */
Existem na linguagem C alguns caracteres especiais: \n nova linha \r enter \t tabulao horizontal \v tabulao vertical \b retrocesso \ Aspas \ - Plica \\ - Barra \? Ponto de interrogao \a ou \7 bell %% - Carcter %
16
Operadores
A linguagem C possui operadores binrios e unrios. Os operadores binrios utilizam 2 variveis e do um retorno de um terceiro valor sem alterar as variveis originais. possvel fazer operaes lgicas bit-a-bit em nmeros, sendo o nmero representado na sua forma binria e em cada bit dele so feitas as operaes.
Operadores aritmticos Estes so os operadores aritmticos ( +, -, *, / ), aos quais juntamos este (%), que nos d o resto de uma diviso inteira.
Operadores Relacionais e Lgicos Como operadores relacionais temos, como o prprio nome indica operadores que relacionam, comparam. > (maior), < (menor), >= (maior ou igual), <= (menor ou igual, == (igual), != (diferente). Os operadores lgicos so o && (and), || (or) e o ! (not).
Para incrementar Variveis ++x Aumenta o x antes de utilizar o seu valor x++ - Aumenta o x depois de utilizado o seu valor
Decrementar So avaliados da esquerda para a direita, a ordem da avaliao pode ser alterada utilizando parnteses ++ -- mais alta + - mais baixa
17
Sizeof Serve para assegurar a portabilidade do programa devolvendo o tamanho da varivel em bytes.
18
Edit program
Compile program
Compiler errors?
Yes
No
Test program
Run-time errors?
Yes
No
End
19
Funes bsicas da biblioteca C - Printf () Esta funo de I/O que se baseia na introduo de cdigos de formatao
como input e posteriormente exibidos no monitor ou impressos como Output. - Scanf () similar funo anterior ler os dados introduzidos atravs do teclado. - Getchar () Serve para guardar os caracteres de entrada at que o ENTER seja pressionado. - Putchar () Escreve no monitor o argumento do seu caractere na posio corrente.
A linguagem C possuidora de vrios comandos de controlo de fluxo, e possvel, sem utilizar todos resolver todos os problemas.
- if comando de condio.
- if-else-if serve para testar uma varivel as vezes necessrias at encontrar algo que coincida. - switch para testar uma varivel repetidamente contra variveis inteiras ou caracteres. - loop for serve para controlar o loop. - while (do while) permite a execuo repetida do cdigo fonte de acordo com uma condio. - break para terminar o comando em execuo. - continue serve para saltar partes do programa.
20
Matrizes
- matriz unidimensional o ndice de uma matriz 0, se utilizarmos uma matriz de inteiros de 10 elementos a variao vai de 0 a 9. - matriz multidimensional funciona como a dimensional mas com mais ndices. - matrizes estticas os dados de tipo simples so inicializados mas s como variveis globais. - limite das matrizes so os programas que testam os limites das matrizes.
Manipulao de strings
Uma string uma matriz tipo char que acaba com \O. A string deve ter uma posio a mais do que os caracteres desejados.
Funo Gets () Utilizada para ler uma string pelo dispositivo padro at se carregar no ENTER. Esta funo no testa os limites da matriz em que chamada.
21
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.
22
9. Webgrafia
Textos
http://uainfor.com.sapo.pt/2616/cadapoio.pdf http://www.inf.unioeste.br/~adriana/LP/Aulas/Unidade02.pdf ftp://ftp.unicamp.br/pub/apoio/treinamentos/linguagens/c.pdf
Imagens
http://2.bp.blogspot.com/_gJAmIAqN0Y/SWj2Fe9KlmI/AAAAAAAAAHU/jQgs1nqVm3Y/s320/progImp.png http://prosjekt.ring.hibu.no/simula/images/simula.gif http://libai.math.ncu.edu.tw/bcc16/pool/image/Backus.gif http://www.cs.helsinki.fi/u/kerola/tkhist/k2000/alustukset/unix_hist/ritchie.jpeg
23