O que faz Computador?O que faz Computador?
O computador realiza tarefas de acordo com instruções que lhes são
fornecidas por um programa.
Programa
A seqüência lógica de instruções que determina ao computador o que ele
deve fazer é chamada de PROGRAMA. Não devemos confundir programa
com dados: enquanto o programa define o modo de trabalho do
computador, os dados são elementos que serão manipulados.
O programa é uma estrutura estática com uma função específica. O ato de
executar as instruções chama-se PROCESSO, que é uma estrutura dinâmica.
PROGRAMA = seqüência de instruções
PROCESSO = seqüências de ações
Estrutura de um programaEstrutura de um programa
De modo geral, um programa consiste numa seqüência de instruções que tratam um
conjunto de dados com o objetivo de obter certos resultados de saída a partir de
certos dados iniciais ou dados de entrada.
Do ponto de vista de funcionalidade, uma programa é estruturado nas seguintes
partes:
1.Entrada de dados = Formada por todas as instruções que obtêm os dados
utilizados pelo programa de um dispositivo externo, armazenando-os na memória
principal do computador. Aqui se incluem as instruções que fazem a depuração ou
validação dos dados.
2. Processamento = Conjunto de instruções que resolvem o problema a partir dos
dados introduzidos, deixando os resultados na memória central. O dispositivo físico
carregado de efetuar essa tarefa recebe o nome de processador.
3.Saída de resultado = É constituída pelas instruções que fazem com que os dados
resultantes do processo sejam enviados para fora através de algum dispositivo
externo.
Linguagens de ProgramaçãoLinguagens de Programação
Uma classificação muito comum das linguagens de programação do ponto de vista
das aplicações, é a que mostramos no seguinte esquema:
Linguagens
de
Programação
Baixo nível (Linguagem de máquina)
Intermediárias (Linguagem Assembly)
Alto
Nível
Gerenciamento
Científicos
Uso geral
Específicos
Como é Estruturada a programaçãoComo é Estruturada a programação
Devemos primeiro definir o PROBLEMA a ser
TRATADO através do uso de um computador.
Devemos formular um problema até obtermos um
algoritmo de resolução implementado no
computador, pronto para o uso, mas para isto
algumas etapas rigorosas deve ser seguida para que
assegure a validade e a qualidade do programa obtido.
Estes processo consiste em várias fases, que são elas:
Análise do problemaAnálise do problema
Fase de análise = consiste no estudo detalhado do problema a fim
de se obter uma série de documentos (especificação) em que se
defina o processo a ser seguido na automação. Está dividido em:
Análise preliminar
Análise funcional
Análise de projeto
Fase de programação = Não se implementa o algoritmo que pode
estar representado através de um fluxograma ou alguma das
outras notações intermediárias.
Fase de codificação = Descrição em linguagem de programação de
alto nível do algoritmo obtido na fase anterior. Para isso, são
utilizados os formulários de codificação.
Instalação e depuraçãoInstalação e depuração
Fase de edição = Nesta fase o programa é transcrito para o computador,
geralmente através de um editor de programas ou processador de textos,
obtendo-se o que se chama de programa-fonte.
Fase de compilação = Consiste em obter o programa – objeto a partir do
programa-fonte, através do compilador da linguagem. O compilador além
de efetuar a tradução, faz uma análise sintática do programa.
Fase de montagem (linkagem) = Nessa fase são incluídas algumas rotinas
internas da linguagem e, se o método de programar utilizado for modular,
são ligados os diversos módulos existentes. O resultado final dessa fase é o
programa executável.
Fase de testes = O programa obtido através da fase de montagem é
submetido a um conjunto de testes com diversas amostras de entrada.
Para que um computador possa executar um programa, é necessário que
consiga entendê-lo, e isto só ocorrerá quando as instruções deste programa
seguirem uma série de normas e estruturas bem definidas.
A escrita de acordo com um conjunto de normas e estruturas
preestabelecidas é chamada de LINGUAGEM.
LinguagemLinguagem
É uma maneira de comunicação que segue uma forma e uma estrutura com
significado interpretável. Portanto, linguagem de programação é um
conjunto finito de palavras, comandos e instruções, escrito com o objetivo
de orientar a realização de uma tarefa pelo computador.
A linguagem do computador é completamente diferente da que estamos
acostumados a usar em nosso dia-a-dia. A máquina só trabalha com códigos
numéricos (linguagem de máquina), baseados nos números 0 e 1, que
representam impulsos elétricos, ausente e presente. Chamado de sistema
binário.
1
Linguagem de Alto Nível = linguagem natural do homem (muito clara,
porém lenta)
Linguagem de Baixo Nível = linguagem de máquina (mais semelhantes com
a máquina)
1
Para que haja a tradução de linguagem de alto nível para a linguagem de
baixo nível existe três tipos de meios: Compilador e Interpretador – para
linguagem de alto nível; Assembler (montador) – para linguagem de baixo
nível.
Compilador & InterpretadorCompilador & Interpretador
Compilador
É um programa interno do computador que traduz nosso programa escrito em
linguagem de alto nível (chamado programa-fonte, pois ele é a origem do processo)
para um programa equivalente escrito em linguagem de máquina (chamado de
programa objeto).
Interpretador
É um programa residente de alguns computadores (neste caso já vem gravado de
fábrica), também encontrado em disco. Transforma cada comando de um programa
escrito em linguagem de alto nível para o computador executar em linguagem de
máquina.
A diferença entre compilador e interpretador está na maneira de traduzir:
O compilador = traduz o programa todo para depois executar apenas o traduzido,
então torna a execução mais rápida.
O interpretador = traduz e envia para execução, instrução por instrução e o
programa permanece na forma fonte.
Sintaxe da LinguagemSintaxe da Linguagem
A sintaxe da linguagem estabelece como os símbolos devem ser
combinados em declarações que forneçam significativas para a
CPU.
Uma regra do tipo “nomes das variáveis precisam iniciar com
uma letra” constitui exemplo de um padrão, onde uma variável
equivale a um item que pode tomar diferentes valores.
Seguindo os padrões de linguagem de programação, as
organizações podem focar menos na escrita do código e
concentrar mais esforços para empregar as linguagens de
programação na solução de problemas empresariais com mais
eficácia.
Dividimos a evolução das linguagens de programação em cinco
gerações:
GeraçõesGerações
Linguagens de 1ª Geração
A 1ª geração forma as linguagens de máquina. Muito complexas, pois exigia
o uso de muitos símbolos binários para a execução de uma simples
instrução. É considerada uma linguagem de baixo nível. A linguagem de
máquina é a linguagem lida pela CPU.
Linguagem de 2ª Geração
Nesta fase os desenvolvedores de linguagem de programação, substituíram
os dígitos binários por símbolos de fácil entendimento para os
programadores.
Foi quando surgiu a linguagem Assembly, e os programas usados para
traduzi-las em código de máquina são chamados Assemblers.
Os softwares básicos, como sistemas operacionais, são freqüentemente
escritos em linguagem Assembly.
GeraçõesGerações
Linguagem de 3ª Geração
Estas linguagens mantiveram a tendência em direção ao maior uso de símbolos para
instruir o computador como completar uma operação.
São mais fáceis de aprender e de usar, porque sua sintaxe é mais parecida com a
forma de expressão do ser humano.
São linguagens de alto nível que precisam ser convertidas por um software básico,
para um código binário.
Ex.: Fortran, Cobol, C, C++
Linguagens de 4ª Geração
É menos orientada a procedimentos e mais parecida com o inglês do que as
linguagens de 3ª geração.
Algumas características dessas linguagens incluem a capacidade de consultas e de
manipulação de Banco de Dados, capacidade de geração de código executável e
funcionalidades gráficas.
Ex.: Visual C++, Delphi, Visual Basic, SQL (Linguagem de consulta estruturada).
GeraçõesGerações
Linguagens de 5ª Geração
As ferramentas com linguagens de 5ª geração
apareceram em meados de 1998.
Elas combinam geração de código baseado em regras,
gerenciamento de componentes, técnicas de
programação visual. São as linguagens orientadas a
objeto.
Ex.: Java, C++.
Linguagens de Alto NívelLinguagens de Alto Nível
As linguagens de alto nível, também denominadas de
linguagens avançadas, são aquelas que visam se
aproximar da linguagem humana, para que o
programa possa ser escrito e lido de uma maneira
mais simples, eliminando muitas possibilidades de
cometerem erros, que eram muito freqüentes nas
linguagens de máquina, pois utilizavam-se de diversos
símbolos para representar os caracteres.
Algumas linguagens de alto nível:
ALGOL (Algorithmic Oriented Language) – Voltada à expressão de
algoritmos, portanto de característica científica. É pouco difundida em face
do alto custo do compilador que requer.
APL (A Programming Language) – Destinada a terminais com aplicações
interativas.
BASIC – É à base de um repertório de instruções simples e poderosas, com
capacidade de grande desenvolvimento, inclusive no trato de funções
matemáticas. Tornou-se a linguagem de programação mais popular do
mundo.
CLIPPER – Voltada à gerência de arquivos em microcomputadores, é a
continuação da família dBase. O dBase foi o gerenciador de arquivos que
mais se popularizou. A versão dBaseIV inclui um SQL (Structured Query
Language) para consultas a banco de dados.
C – Linguagem estruturada que constituí em ótima ferramenta para
codificação de software básico, com vistas a facilitar o trabalho de
programadores experientes. Sua versão avançada é o C++, que é uma
linguagem de programação orientada a objetos.
COBOL (Commom Bussiness Oriented Language) – Resultado de esforço
para estabelecer uma linguagem padrão de programação no processamento
comercial, usuário e fabricantes de computadores. A versão mais recente
incorpora preceitos de programação orientada a objetos e estruturada.
FORTRAN (Formula Translation) – Com objetivo de atender às
necessidades de tratamento de cálculos sobre fórmulas matemáticas, logo
depois cedeu espaço para linguagens mais simples e estruturadas.
PASCAL – Desenvolvida por Nicklaus Whirth em 1971, é uma linguagem
estruturada e de uso geral.
VISUAL BASIC – Linguagem orientada a eventos, projetadas para
funcionar sob interfaces gráficas (GUI – Graphical User Interface),
permitindo o programador, determinar com facilidade a representação dos
objetos através de ícones que irão interagir com as aplicações.
DELPHI – Linguagem orientada a objeto, originária da linguagem Pascal.
JAVA – Linguagem orientada a objeto, originária da linguagem C.
ConclusãoConclusão
A importância da Programação na vida do Profissional
de Informação é extremamente grande, devido ao
convívio direto com os Sistemas de Informação, desde
sua criação a execução e comercialização, esse
profissional deve estar apto a interagir dentro do
contexto mesmo quando não é encarregado de criar
códigos ou determinar ações.
Na nossa próxima Aula falaremos sobre os
profissionais na Área de T.I. ( tecnologia da
Informação) e suas remunerações.