You are on page 1of 17

LINGUAGENS DE PROGRAMAO Nos primrdios do desenvolvimento da computao, escrever programas de computador era uma tarefa bastante complexa as vrias

s chaves e circuitos abrangendo o hardware do computador tinham que ser instalados manualmente, isto , os dados eram representados ligando-se ou desligando-se fisicamente vrios circuitos. Nos computadores modernos, entretanto, a CPU trabalha em conjunto com vrios programas de software para controlar o estado fsico do circuito digital. Para que isto ocorra, a CPU deve receber sinais do programa do computador que possa converter em ao (ligar e desligar

circuitos). No sendo estes sinais as aes propriamente ditas, mas apenas a indicao destas aes, eles so chamados de cdigo do programa. Cdigo do programa o conjunto de instrues que sinalizam CPU para executar operaes de conexo de circuito. No mais simples dos esquemas de codificao, uma linha de cdigos tpica conter uma nica instruo por exemplo, Recuperar os dados no endereo de memria X. Uma srie de tais informaes, ou cdigos de programa, foi anteriormente definida como um programa de computador ou simplesmente um programa. A redao ou codificao destas instrues chamada de programao, e a pessoa que escreve ou faz a codificao chama-se programador. Os programadores trabalham com linguagens de programao, que podem ser mais bem definidas como conjuntos de smbolos e regras usados para escrever cdigos de programa. As linguagens de programao como os computadores, tm evoludo com o tempo. Em grande parte, a sua evoluo foi guiada pelo desejo de aplicar eficientemente o poder do processamento da informao mais ampla variedade possvel de atividades de soluo de problemas. Esta evoluo tem sido de alguma forma regulada por padres. As primeiras linguagens de programao sofreram uma falta de coerncia nas ordens e procedimentos. Freqentemente um programa de software de sistemas desenvolvido para interagir com um programa aplicativo escrito em forma de uma linguagem de programao no funcionaria com outro programa escrito numa forma diferente da

mesma linguagem. Cada verso de uma linguagem requeria o seu prprio programa de traduo em separado. Para evitar esta ineficincia, o American National Standards Institute (ANSI) decidiu desenvolver padres para linguagens de programao populares. Um padro de linguagem de programao consiste em uma srie de normas que descrevem como os comandos e ordens da programao devem ser escritos. Uma regra que diz que nomes de variveis devem comeas com uma letra um exemplo de um padro. (Uma varivel uma quantidade que pode assumir diferentes valores.) Nomes de variveis do programa tais como VENDAS, TAXA DE PAGAMENTO e TOTAL seguem o padro porque comeam por uma letra, enquanto variveis tais como %DEJUROS, $TOTAL e #QUILOS no.

A Evoluo das Linguagens de Programao O desejo de aplicar eficientemente o potencial do processamento da informao para solucionar problemas no diminuiu, e as linguagens de programao continuam a evoluir.

Linguagem de mquina: a primeira gerao. Na primeira gerao das linguagens de programao - linguagens de mquina -, os programadores escreviam suas instrues em cdigos binrios, dizendo CPU exatamente quais circuitos ligar ou desligar. Por serem os programas de linguagem de mquina escritos em cdigos binrios, eles usam apenas dois smbolos: 0 e 1; esses programas so algumas vezes chamados bits. Um simples comando para multiplicar 2 nmeros na linguagem de mquina poderia necessitar de vrias instrues ou linhas de cdigos de programa contendo 0s e 1s. Uma linha poderia recuperar o primeiro nmero da memria do computador. Uma segunda linha de 0s ou 1s poderia multiplicar o segundo nmero da memria. Uma terceira linha poderia multiplicar os dois nmeros, e uma quarta linha poderia colocar o resultado em um outro local de memria. A linguagem de mquina considerada uma linguagem de baixo nvel porque no existe esquema de codificao de programa menos sofisticado do que este que usa smbolos binrios 1 e 0. Na verdade, considerando-se uma perspectiva lgica (em oposio a uma

perspectiva fsica), a linguagem de mquina a linguagem da CPU. Por exemplo, um tipo de linguagem de mquina chamada ASCII (American Standard Code for Information Interchange), usa todos os 0s e 1s para representar letras do alfabeto, sendo a linguagem da CPU, arquivos em textos traduzidos para os conjuntos binrios do ASCII podem ser lidos por praticamente todas as plataformas de sistema de computador. Por ser a programao da linguagem de mquina extremamente difcil, pouqussimos programas so realmente escritos nesta linguagem. Entretanto, a linguagem de mquina a nica linguagem capaz de instruir diretamente a CPU. Desta forma, toda instruo de programa em outra linguagem deve ser traduzida para a linguagem de mquina antes de sua execuo.

Linguagem Assembly segunda gerao: a segunda gerao das linguagens de programao tentou superar algumas dificuldades inerentes programao da linguagem de mquina substituindo os dgitos binrios por smbolos mais facilmente compreendidos pelos profissionais de programao. As linguagens assembly usam cdigos como A para adicionar, MVC para mover, e assim por diante. Esta segunda gerao de linguagem foi denominada linguagem assembly por causa dos programas de sistemas usados para traduzi-los para o cdigo de mquina (chamados programas assembler, ou assemblers). Toda as linguagens, excetuando-se as de primeira gerao, so chamadas linguagens simblicas, por darem nfase ao uso de smbolos facilmente assimilados pelas pessoas. Por exemplo, a linguagem assembly permite dar nome a localizao exata dos dados na memria de acordo com o seu contedo por exemplo, PAGAMENTO pra localizar informao referente a taxas de pagamento. Anteriormente, essas localizaes na memria eram apenas referencias binrias numeradas que exigiam do programador lembrar ou documentar seu objetivo. Alm disso, esta mudana para um cdigo mais simblico e legvel pelas pessoas permitiu ao programador se concentrar mais na soluo de um problema do que na complexidade de codificar programas especficos de computador. Embora esteja um passo alm da linguagem de mquina em termos de sofisticao, a linguagem assembly ainda considerada de baixo nvel.

Linguagem de alto nvel terceira gerao. A terceira gerao das linguagens de programao continuou a tendncia do uso maior de cdigos simblicos e deixou de dar ao computador instrues especificas de como completar uma operao, esta terceira gerao consiste em linguagens de alto nvel tais como BASIC, COBOL e FORTRAN. Uma linguagem de programao de alto nvel a que usa instrues e comandos semelhantes lngua inglesas. Este tipo de linguagem e mais fcil de aprender e usar do que as linguagens de mquina e assembly, porque tem maior semelhana com o nvel das comunicaes e entendimentos humanos. As linguagens de alto nvel usam instrues tais como PRINT (IMPRIMIR) VENDAS TOTAIS, READ (LER) HORAS TRABALHADAS, e PAGAMENTO NORMAL HORAS TRABALHADAS*TAXA DE PAGAMENTO.

Linguagens de quarta gerao. Uma linguagem de quarta gerao (4GL) uma linguagem de programao de alto nvel, de menor procedimento e maior semelhana com a lngua inglesa do que as linguagens de terceira gerao, ela enfatiza quais os resultados da produo so desejados mais do que como as instrues da programao devem ser escritas. Com resultado, muitos administradores e executivos com pouco ou nenhum treinamento em computao e programao esto usando linguagens de quarta gerao. Alguns aspectos das 4GLs incluem: Capacidade de indagao e banco de dados. Com algumas 4Gls, o usurio pode dar comandos simples ou fazer procedimentos simples para recuperar informaes de um banco de dados. Estes comandos so formulados sob a forma de perguntas simples ou indagaes. Com um banco de dados de cobrana escrito em ma 4GL, por exemplo, pode-se clicar em QUANTIA e enter>$250 para se conseguir uma lista de todas as contas maiores do que $ 250. Estas linguagens so chamadas de linguagens interrogativas (query linguages), porque fazem ao computador perguntas em sentenas semelhantes s da lngua inglesa. Muitas destas linguagens tambm operam apenas com bancos de dados organizados, e por isso so chamadas linguagens de banco de dados.

Capacidades de gerao de cdigos. Algumas 4GLs usam caractersticas de gerao de cdigos que produzem automaticamente muitas das ordens e das instrues de programao requeridas para se conseguir um resultado especifico. Em alguns casos, os geradores de cdigos podem gera 90% ou mais de todas as ordens para um determinado projeto de programao.

Capacidades grficas. Criar, manipular e usar grficos e ilustraes pode se mais fcil e mais simples com uma 4GL, do que com uma linguagem de baixo nvel, por exemplo, as 4GLs podem ser usadas para desenvolver linhas de tendncias e grficos pizza a partir dos dados. Uma linguagem popular de quarta gerao a linguagem padronizada chamada linguagem de indagao estruturada (Structured Query Language), que freqentemente usada para executar indagaes e manipulaes de banco de dados. Outras 4GLs so usadas para desenvolver programas para sistemas especialistas.

Linguagens de quinta gerao. As linguagens de programao chamadas linguagens de quinta gerao (5GLs) so tambm usadas para criar programas para inteligncia artificial e sistemas especialistas. As linguagens de quinta gerao so algumas vezes chamadas linguagens naturais, porque usam ainda mais sintaxe semelhante s da lngua inglesa do que as 4GLs, toda linguagem humana uma linguagem natural linguagens naturais so as usadas pelas pessoas para se comunicarem umas com as outras. As linguagens de programao de quinta gerao so chamadas de linguagens naturais porque permitem aos

programadores se comunicarem com o computador usando sentenas normais, com o exemplo mostrado abaixo.

TIPOS DE LINGUAGENS A primeira classificao relaciona-se com a proximidade que a linguagem tem do usurio final, isto , do homem. Baseando-nos neste critrio as linguagens podem ser de alto nvel, nvel intermedirio ou baixo nvel. Linguagem de alto nvel uma linguagem que se aproxima mais da linguagem utilizada pelo ser humano. Exemplos tpicos so Pascal, COBOL, C e SQL. importante lembrar que o Delphi e o Visual Basic so ambientes de programao e no linguagens no sentido estrito da definio. O Delphi tem por linguagem base uma extenso do Pascal chamada Pascal Orientado a Objetos ou Object-Pascal e o Visual Basic tem por base uma linguagem que uma extenso do Basic de nome Visual Basic. Linguagem de nvel intermedirio uma linguagem que, como o prprio nome diz, fica em um nvel intermedirio entre a linguagem de alto nvel e a linguagem de baixo nvel. So cdigos chamados de mnemnicos, mais conhecidos como assembly. Exemplos tpicos so o assembly do processador 8085, do Pentium, do AMD K6 e do Motorola. Mais uma vez importante lembrar que a linguagem assembly e no assembler. Assembler o nome de um programa de computador, do qual falaremos em outra aula. Linguagem de baixo nvel o cdigo que o computador executa diretamente. composta de 0s e 1s e conhecida como linguagem binria. Uma segunda classificao, tambm muito utilizada, a que se relaciona com o nvel de abstrao que o usurio utiliza para escrever programas na linguagem. Baseando-nos neste critrio as linguagens podem ser procedimentais ou no procedimentais. Numa linguagem de programao procedimental o usurio deve descrever, comando a comando, como o programa trabalhar para chegar ao fim desejado. Exemplos tpicos so Pascal, Cobol e C. Uma linguagem de programao no procedimental o usurio deve descrever o que programa executar, mas no como far isso. Exemplo tpico a linguagem SQL.

1. LINGUAGEM DE PROGRAMAO O estudo das tcnicas para construo de algoritmos est diretamente relacionado ao estudo das linguagens de programao. O estudo das linguagens de programao visa: Maior habilidade em resolver problemas: uma maior compreenso de uma LP pode aumentar nossa habilidade em pensar em como equacionar os problemas. Tanto melhor se dominarmos os vrios modelos de LP. Melhor uso de uma LP: compreenso das funes e implementao das estruturas de uma LP nos levam a usar a LP de modo a extrair o mximo de sua funcionalidade e eficincia. Melhor escolha de uma LP: adequao ao problema. Maior facilidade em aprender novas LPs: conceitos chaves comuns s LPs. Melhor designer de LPs: linguagens de interfaces de sistemas, extenso de LP via operadores e tipos de dados. HISTRICO Vejamos um pouco da histria de algumas linguagens de programao que introduziram conceitos importantes para as futuras LPs e que ainda esto em uso. Essas linguagens esto classificadas em trs perodos, de acordo com a poca em que surgiram. 1955 - 1965 FORTRAN (FORmula TRANslation) COBOL (COmmon Business Oriented Language) ALGOL 60 (ALGorithmic Oriented Language) LISP (LISt Processing) APL (A Programming Language) BASIC (Beginners All-purpose Symbolic Instruction Code) 1965 - 1971 (LP's baseadas em ALGOL) PL/I (Programming Language I) SIMULA 67 ALGOL 68 PASCAL Linguagens dos anos 80 (criadas na dcada de 70) PROLOG (PROgramming in LOGic) SMALL TALK C MODULA 2 ADA Outras Visual Basic Delphi Java X JavaScript

a) FORTRAN (Formula Translator) A linguagem Fortran, desenvolvida em 1956 por John Backus, foi proposta visando a resoluo de problemas cientficos, para isto utilizando a notao algbrica. Foi desenvolvida, inicialmente para uma mquina especfica, o IBM 704. , ainda hoje, uma linguagem muito utilizada no meio tcnico-cientfico, tendo sido aprimorada ao longo do tempo, constituindo as diversas verses disponveis. Um dos motivos pelos quais o FORTRAN ainda muito utilizado a disponibilidade de uma vasta biblioteca de software contendo rotinas freqentemente utilizadas, tais como rotinas para clculo de funes trigonomtricas, equaes algbricas polinomiais, etc, o que permite uma reduo dos custos e tempo de desenvolvimento dos programas. So contribuies do FORTRAN para futuras linguagens: variveis comando de atribuio conceito de tipos modularidade (com o uso de subprogramas) E/S formatadas Exemplo de programa FORTRAN: * Programa que converte um valor decimal, maior ou igual a zero, lido atravs do console do * sistema, em seu correspondente valor * binrio, imprmindo este valor na tela do console. * -Programa Principal * Declaracao de variaveis, constantes simbolicas e iniciializacoes INTEGER CONT, J, LIMITE,NUMERO, VETRES(8) PARAMETER (LIMITE = 255) DATA VETRES/8*0/ * Leitura e impresso do valor decimal WRITE(*,*) 'DIGITE O VALOR DECIMAL' READ(*,*) NUMERO WRITE(*,10) NUMERO 10 FORMAT(1X,//,1X,'VALOR DECIMAL FORNECIDO: ',I3) * Verificacao do limite IF (NUMERO.GT.LIMITE) $THEN WRITE(*,*) 'NUMERO MUITO GRANDE ELSE * Chamada da rotina para conversao e impressao dos resultados CONT = 0 CALL CONV(NUMERO, VETRES, CONT) WRITE(*,20) (VETRES(J), J=CONT, 1, -1) 20 FORMAT(1X, 'VALOR BINARIO CORRESPONDENTE: ', 8I2) ENDIF

STOP END * Sub-rotina que faz a conversao de um numero decimal, maior * ou igual a zero, em um numero binario * Parametro de entrada * NUM: valor a ser convertido * Parametros de saida * VETRES: vetor que contem o resultado * PONT: numero de bits do resultado SUBROUTINE CONV(NUM, VETRES, PONT) * Declaracao dos parametros INTEGER NUM, PONT, VETRES(8) * Declaracao de variavel local INTEGER AUX * conversao 100 IF (NUM.GE.2) THEN * inicio do enquanto PONT = PONT + 1 AUX = NUM/2 VETRES(PONT) = NUM - AUX*2 NUM = AUX GOTO 100 * fim do enquanto ENDIF PONT = PONT + 1 VETRES(PONT) = NUM RETURN END

COBOL (COmmon Business Oriented Language) A linguagem COBOL, desenvolvida em 1959 pelo Departamento de Defesa dos EUA e fabricantes de computadores , padro para as aplicaes comerciais e muito utilizada ainda hoje. Seu desenvolvimento se deu de forma independente da mquina. O cdigo "English-like" e excelente para a manipulao de arquivos. So contribuies de COBOL para futuras linguagens: cdigo mais legvel estrutura de dados heterognea (record) Exemplo de programa COBOL: Organizao de um programa COBOL: Um programa COBOL possui quatro divises que devem ser colocadas na ordem adequada. A sua estrutura completa :

IDENTIFICATION DIVISION PROGRAM-ID. nome-do-programa [AUTHOR. [comentrios] ...] [INSTALLATION. [comentrios] ...] [INSTALLATION. [comentrios] ...] [DATE-WRITTEN. [comentrios] ...] [DATE-COMPILED. [comentrios] ...] [SECURITY. [comentrios] ...] [REMARKS. [comentrios] ...] ENVIRONMENT DIVISION [CONFIGURATION SECTION. SOURCE-COMPUTER. OBJECT-COMPUTER. [SPECIAL-NAMES. ]]. [INPUT-OUTPUT SECTION. FILE-CONTROL. [I-O-CONTROL. ENTRADA.]]. DATA DIVISION. [FILE SECTION. { Descrio dos arquivos { Descrio dos registros } ... } ... ]. [WORKING-STORAGE SECTION. [Descrio dos itens de dados] ... [Descrio de registros] ... ]. [LINKAGE SECTION. [Descrio dos itens de dados] ... [Descrio de registros] ... ]. [COMMUNICATION SECTION. {Descrio das Entradas de Comunicao. [Descrio das Entradas de Registros] ... } ... ]. [REPORT SECTION. {Descrio de relatrios} {Descrio dos grupos de relatrios} ... } ... ]. PROCEDURE DIVISION. [USING identificador-1 [identificador-2] ...] [DECLARATIVES. {nome-da-seo SECTION. USE SENTENCE. {nome-de-pargrafo. {sentena} ... } ... } ... END DECLARATIVES.] {nome-da-seo SECTION [prioridade] - ] {nome-de-pargrafo. {sentena} ... } ... } ...

Exemplo: 001 010 IDENTIFICATION DIVISION. 001 020 PROGRAM-ID. TABSORT. 001 030 AUTHOR. ALEX BASTOS. 001 040 INSTALLATION. RDC-DIV USUARIOS. 001 050 DATE-WRITEN. 18/12/72. 001 060 DATE-COMPILED. 20/12/72. 001 070 REMARKS. Este programa grava arquivo sequencial em ordem crescente e classifica-o apos em ordem decrescente. 001 100 ENVIRONMENT DIVISION. 001 110 CONFIGURATION SECTION. 001 120 SOURCE-COMPUTER. IBM-370-165. 001 130 OBJECT-COMPUTER. IBM-370-165. 001 140 INPUT-OUTPUT SECTION 001 150 FILE-CONTROL. 001 160 SELECT ARQUIVO ASSIGN TO DA-S-DISCO. 001 170 SELECT TRABALHO ASSIGN TO DA-S-SORTWK01. 001 180 DATA DIVISION. 001 190 FILE SECTION. 001 200 FD ARQUIVO LABEL RECORDS ARE STANDARD 002 010 DATA RECORD IS ENTRADA. 002 020 01 ENTRADA. 002 030 02 X PIC 99. 002 040 02 Y PIC X(10). 002 050 02 FILLER PIC X(20). 002 060 SD TRABALHO LABEL RECORDS ARE STANDARD 002 070 DATA RECORD IS TRAB. 002 080 01 TRAB. 002 090 02 Z PIC 99. 002 100 02 K PIC X(10). 002 110 02 FILLER PIC X(20). 002 120 WORKING-STORAGE SECTION. 002 130 77 I PIC 99 VALUE ZEROS. 002 140 PROCEDURE DIVISION. 002 150 OPEN OUTPUT ARQUIVO. 002 160 MOVE 'TESTE-SORT' TO Y. 002 170 GRAVACAO. 002 180 MOVE I TO X. 002 190 ADD 1 TO I. 002 200 WRITE ENTRADA. 003 010 IF I 100 GO TO GRAVACAO. 003 020 SORT TRABALHO DESCENDING Z USING 003 030 ARQUIVO GIVING ARQUIVO.

003 040 OPEN INPUT ARQUIVO. 003 050 GRAVA. 003 060 READ ARQUIVO AT END GO TO FIN. 003 070 DISPLAY X' Y. 003 080 GO TO GRAVA. 003 090 FIN. 003 100 CLOSE ARQ. 003 110 STOP RUN. b) PASCAL Desenvolvida por Niklaus Wirth em 1969, uma linguagem de fcil aprendizado e implementao, suporta programao estruturada e adequada para o ensino de programao. Em meados dos anos 80 tambm passou a ser usada para a programao em micro-computadores. Influenciou praticamente todas as linguagens mais recentes. So contribuies de Pascal para futuras linguagens: estruturas de controle flexveis tipos definidos pelo usurio arquivos records conjuntos

Exemplo de programa Pascal: PROGRAM ordena(input, output); (* Este programa ordena um vetor de n nmeros reais, em ordem crescente *) VAR n, i, inic: 1..100; x: ARRAY [1..100] OF real; temp: real; PROCEDURE troca; (* Troca, do maior ao menor, os elementos de um vetor *) BEGIN FOR inic := 1 TO n-1 DO FOR i := inic + 1 TO n DO IF x[i] < x[inic] THEN BEGIN temp := x[inic]; x[inic] := x[i]; x[i] := temp; END; END; (* troca *) BEGIN (* bloco principal *) write('Quantos sao os numeros? '); readln(n);

FOR i := 1 TO n DO BEGIN write('x[', i:3, ']= ? '); readln(x[i]); END; troca; writeln; writeln('Dados ordenados:'); writeln; FOR i := 1 TO n DO writeln('x[', i:3, ']= ', x[i]:4:1); END. c) C Desenvolvida pelo Bell Lab no incio dos anos 70, visando a implementao do UNIX. Possui um padro feito por Kernighan e Ritchie em 1978. Tem facilidades para a programao em "baixo nvel" e gera cdigo eficiente. Possui um grande conjunto de operadores, o que permite um cdigo compacto, porm de baixa legibilidade. excelente para construir programas portveis. Exemplo de programa C: main()n /* count lines in input */ { int c, nl; nl = 0; while ((c = getchar()) != EOF) if (c == '\n') ++nl; printf("%d\n", nl); } d) PROLOG (PROgramming in LOGic) Linguagem desenvolvida em 1972 em Marseille na Frana. destinada a aplicaes de Inteligncia Artificial e se baseia em lgica formal. a LP do projeto japons de quinta gerao. Exemplo de programa PROLOG: Predicado que retorna verdadeiro se e somente se o argumento uma data vlida. date(Year, Month, Day) :Month 0, Month < 13, mdays(Year, Month, Ndays), Day 0,

Day =< Ndays. mdays(_, 1, 31). mdays(Y, 2, 28) :not leap(Y). mdays(Y, 2, 29) :leap(Y). mdays(_, 3, 31). mdays(_, 4, 30). mdays(_, 5, 31). mdays(_, 6, 30). mdays(_, 7, 31). mdays(_, 8, 31). mdays(_, 9, 30). mdays(_, 10, 31). mdays(_, 11, 30). mdays(_, 12, 31). leap(Y) :divides(4, Y), not divides(100, Y). leap(Y) :divides(400, Y). divides(Div, K) :0 is K mod Div. e) LISP (LISt Processing) Linguagem funcional criada em 1960, por John McCartly do grupo de IA do MIT, para dar suporte pesquisa em Inteligncia Artificial. Foi inicialmente desenvolvida para o IBM 704. Existem muitos dialetos pois LISP nunca foi padronizada. Porm, em 1981 surgiu o Common LISP que um padro informal. Os programas em LISP so listas. uma importante contribuio de LISP para futuras linguagens: pioneira na idia de computao simblica ou no-numrica Exemplo de programa LISP: Organizao de um programa LISP: Um programa utiliza a lista encadeada como estrutura de dados bsica. Sendo uma linguagem funcional, ao invs de especificar operaes como um conjunto sequencial de comandos, invoca funes e composio de funes para especificar mltiplas aes. Utiliza a mesma estrutura para dados e programas. Predicado que testa se dois conjuntos tem algum elemento em comum. Retorna nil se os dois conjuntos so disjuntos. (DEFUN INTERSECTP (A B) (COND ((NULL A) NIL) ((MEMBER (CAR A) B)) (T (INTERSECTP (CDR A) B))))

f) VISUAL BASIC O BASIC surgiu j h algum tempo, foi o pontap inicial na carreira de Bill Gates, quando largou a faculdade com um amigo para fundar a MICROSOFT e fazer em duas semanas um interpretador para o BASIC, primeiro produto a ser comercializado pela Microsoft. Por esta empreitada conseguiu que a IBM, que estava lanando o seu PC e no esperava tanto sucesso, a permisso para fazer o sistema operacional deste computador, o MS-DOS, que marcou o incio do monoplio da Microsoft. No Brasil, muita gente entrou em contato com ele na dcada passada com os finados computadores MSX, TK90X, TK2000 e CP500, que o utilizavam como linguagem de programao. Nesta poca era comum nos programas o uso descarado e extensivo do comando GOTO, que tornava um programa de algumas dezenas de linhas muito confuso e ilegvel. Quando o Windows se tornou padro, pensava-se que a programao para este mbiente s seria possvel com linguagens como C, sendo impossvel alguma pessoa com pouca experincia fazer um programa por mais simples que fosse. Foi a que surgiu o VB, com um novo BASIC, no mais aquele confuso, mas um estruturado e bem mais poderoso. Tornou-se a linguagem mais utilizada em todo o mundo, sendo considerada uma das causas do sucesso do Windows. Hoje (02/1998) temos em torno de 3 milhes de desenvolvedores de Visual BASIC. Escrito originalmente em 1987 por Alan Cooper (atravs de um programa com nome Ruby, que unido ao Quick BASIC deu origem ao Visual BASIC). Foi lanado em 1991 com a verso 1.0. Em outubro de 1992 veio a verso 2.0. Em 1996 surgiu a verso 5.0 . Atualmente estamos na verso 6.0 . O VB foi criado com o objetivo de Gerar solues em tecnologia d e informao para que empresas fiquem mais organizadas, produtivas e competitivas e para que usurios trabalhem menos e com mais comodidade e prazer. Como tambm desenvolver solues que venham ajudar nas mais diversas reas que afetam indivduos: educao, lazer, cultura, etc. g) DELPHI O Delphi um ambiente de desenvolvimento de aplicaes, orientado a objeto, que permite o desenvolvimento de aplicaes para os Sistemas operacionais Windows, com pouca codificao. O Delphi tem ferramentas de desenvolvimento, como templates e experts de aplicaes e formulrios, que aumentam muito a produtividade, facilitando a programao da aplicao. h) JAVA O que o Java ? O Java : * Uma liguagem de programao; * Um ambiente de desenvolvimento; * Um ambiente de aplicao;

O Java resultado de uma busca por uma linguagem de programao que pudesse fornecer uma ligao com o C++, mas com segurana. Os primeiros objetivos alcanados com desenvolvimento desta nova linguagem foram: * Criao de uma linguagem orienta a objetos; * Fornecimento de um ambiente de desenvolvimento por dois motivos: Velocidade no desenvolvimento - eliminando o ciclo de compilarlinkar-carregar-testar; Portabilidade do Cdigo - com um interpretador que especifica a forma do nvel do sistema operacional. ( Pode rodar em qualquer tipo de sistema operacional); * No tem acesso a ponteiros do sistema operacional; * Fornece dinamismo durante a manuteno de programas; i) JAVASCRIPT JavaScript uma linguagem que permite injetar lgica em pginas escritas em HTML (HiperText Mark-up Language). As pginas HTML podem ser escritas utilizando-se editores de texto, como o NotePad, Write, etc. Porm, existem editores prprios para gerar HTML, tais como HotDog, HomeSite, Microsoft FrontPage e Dreamweaver.

Referncias Hennessy, John L., Patterson, David A. Abstraes e Tecnologia Computacionais. Em: Organizao e Projeto de Computadores A Interface Hardware e Software, 2 edio, LTC editora., 2000, 551p. Kernighan, Brian W.; Ritchie, Dennis M. C A Linguagem de Programao Padro ANSI, 2 edio, Rio de Janeiro, Campus, 1989, 289p. Rubira, Ceclia M. F. Notas de Aula, 1 semestre de 2000. Schildt, H. C Completo e Total, 3 edio, So Paulo, Makron Books, 827p. (trad. de Roberto Carlos Mayer, C: The Complete Reference, McGraw-Hill, 1995). Tramontina, Gregrio B. Aula 1 MC102 Turmas K e L, 24 de Agosto 2004. Trevisan, Norton. Notas de Aula, 2 semestre de 2002, [online]: http://www.dcc.unicamp.br/~norton/paginas/mc102/mc102.html

You might also like