quarta-feira, 12 de maio de 2010

Linguagens de Programação



Caderno de Apoio à Cadeira
2000/2001



Modulo de Estudo 1: Diversidade das linguagens

A utilização de uma linguagem de programação é por excelência a forma de especificar o funcionamento de um computador. Consoante os problemas a serem tratados, as melhores formas de especificação e tratamento podem ser distintas. Se incluirmos linguagens especificas e em estudo, não surpreende pois que existam, actualmente, mais de um melhor de linguagens de programação e dialectos distintos. Mais ainda, por todo o mundo comissões internacionais e grupo de investigação continuam a criar, desenvolver, melhorar ou substituir linguagens de programação diferentes. É pois normal a um informático ter contacto com um numero elevado de linguagens de programação distintas.

Embora algumas linguagens possam parecer à partida muito diferente, cedo se começam a encontrar as semelhanças entre as diversas linguagens. Esta caracterização será mais fácil quando enquadrada numa perspectiva histórica de evolução das varias linguagens. Só assim se compreendem as motivações, funções e objectivos da criação dos vários paradigmas relativamente as linguagem de programação e dentro destes das especificidades das várias linguagens.

Todos os programas executados num computador tem de ser codificados num conjunto de instruções similares a estas. Os programas assim codificados dizem-se em linguagem maquina ou código maquina.

Compilador: Um compilador é um programa, capaz de ler um ficheiro (normalmente de texto) contendo um programa escrito numa dada linguagem de programação e gerar um programa em linguagem maquina que seja equivalente ao programa inicial. Para tal, o compilador deve analisar o programa lido quer sintacticamente (i.e. verificar se a sua escrita esta de acordo com uma gramática bem definida) quer semanticamente.

Interpretador: Tal como o compilador, um interpretador analisa sintáctica e semanticamente uma dada linguagem de programação. No entanto, em vez de converter o programa que lhe é dado em linguagem maquina, o interpretador executa o programa que lhe é dado, passo a passo. Assim é um interpretador que controla o comportamento do programa, facilitando a interacção com o utilizador e a reescrita do programa(visto que o programa não tem de ser recompilado sempre que o desejamos executar).

Linguagens de programação: Linguagens formais utilizadas na descrição de mecanismos abstractos. Tem como objectivo descrever e comunicar um processo computacional. Podem ser utilizadas para estudar os algoritmos e para os definir de modo não ambíguo.

Tipologia das linguagens

Há diferentes formas para representar e relacionar as linguagens de programação entre si.

a) Por níveis:
disposição hierárquica, segundo seu nível e âmbito. O nível denota um índice da facilidade do programador enunciar a solução dos seus problemas.

Linguagens de baixo nível: O código maquina e a sua representação em Assembler.
Linguagens de alto nível: algoritmicas, imperativas, prescritivas, procedimentais (apoiadas sobre processo),determinísticas e quantitativas. Papel determinante do cálculo numérico. Exs: FORTRAN, PASCAL e SIMULA.

Linguagens de muito alto nível: Idealmente, não algoritmias, declarativas, não determinísticas e qualitativas. Vocacionadas para o processamento simbólico (como cálculo formal, manipulação de formulas algébricas, processamento de língua natural), conduzindo a programas mais abstractas. O programador descreve o problema em função de relações sobre objectos. Com uma descrição precisa o computador resolverá o problema sem qualquer outra intervenção. Exs: SQL, PROLOG, Haskell. Devido ao facto de ser ainda hoje uma das principais linguagens funcionais alguns autores incluem igualmente o LISP nesta família; isto apesar desta linguagem ser fortemente algoritmica e já ter sido exclusivamente utilizada na construção de um sistema operativo.

b) Por Árvores genealógicas
Desenha-se a rede das linguagens de programação destacando as suas ligações implícitas e explicitas. As principais árvores dividem-se pelos paradigmas da programação: Imperativo, orientados por objectos, funcional e lógica.

c) Gerações
As linguagens agrupam-se de acordo com um processo de mutações e selecções tecnológicas. Este processo é descontinuo. É usual a seguinte classificação em 5 gerações:

1ª Geração: Linguagem binária,linguagens maquinas e assembly.
2ª Geração: Utilizando compiladores ( i.e. baseadas em sistemas que lêem o programa numa destas linguagens e o "traduzem", ou compilam, para linguagem binária): COBOL, BASIC, RPG, FORTRAN IV/V, ALGOL, 58/60/68W.
3ª Geração: Linguagens procedimentais:PL/I, PASCAL, FORTRAN 8X,APL,C,SIMULA,BLISS.
4ª Geração: Geradores de programas (i.e. produzem programas noutras linguagens). A linguagem ADA.
Linguagens de interrogação (p.ex. para bases de dados):SQL,QBE.
5ª Geração:linguagens de especificação de problemas: LISP,PROLOG.

d) Outras formas de classificação
Eis outras formas de classificação referidas no texto, úteis essencialmente par identificar quando e como se deve optar por uma linguagem ou por outra.
Classificação por dominios de aplicação:
.cientificas:ALGOL, BASIC, FORTRAN
.comerciais:COBOL



quarta-feira, 6 de janeiro de 2010

modulo: 2

Noções Básicas HTML

O que é HTML?

HTML é a sigla de hypertext markup linguagem (linguagem de marcação de hipertexto). Esta linguagem baseia-se num conjunto de códigos (chamados de etiquetas ou TAGs) usados para definir a aparência e funcionalidade das paginas Web.
Com o HTML constroem-se as paginas pelas quais navegamos na Internet. Um documento formado com um código HTML, é chamado de documento HTML precisa de ter um formato adequado para ser reconhecido e interpretado correctamente pelos navegadores.

TAGs

O documento HTML apresenta elementos entre parênteses angulados ( > e <). Estes elementos são as etiquetas (TAGs) de HTML, que são os comandos de formação da linguagem. A maioria das etiquetas tem uma correspondente de conclusão. <>_<>

Isto é necessário porque as etiquetas servem para definir a formação de uma porção de texto e assim marcamos onde começa e termina o texto com a formação especificada por ela.
Alguns elementos são chamados "vazios", pois não marcam uma região de texto, apenas coisa no documento.

<>

todos os elementos podem ter atributos

< 1="valor 1" 2="valor 2">... <>

TAGs fundamentais

Para criar qualquer pagina em HTML, é necessário conter 3 TAGs fundamentais. , e



titulo <TITLE <br /><head> <br /><body> <br /> corpo da pagina <br /></body> <br /></HTML> <br /> <br />Formatação de Texto <br />- TITULO <br />o titulo não aparece no corpo da pagina, mas antes no alto da tela do browser e é utilizado para identificar o documento como se fosse um nome do arquivo. E interessante que o titulo possa surgir claramente o conteúdo do documento. A marcação utilizada para titulo <title> e o seu .

- Cabeçalhos

Os cabeçalhos são normalmente usados para títulos e subtítulos dentro de uma pagina. O HTML possui seis níveis de cabeçalho, numerados de 1 a 6, sendo o numero 1 o de maior destaque. Os cabeçalhos são exibidos em letra maiores e em negrito. As notações relativas ao cabeçalho são: texto do cabeçalho , onde y é um numero entre 1 a 6 especificando o nível do cabeçalho.