int. sistemas de informação iii

18
Introdução aos Sistemas Introdução aos Sistemas de Informação de Informação O que são Programas e Linguagem de programação?

Upload: ray-fran-pires

Post on 30-Jun-2015

949 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Int. sistemas de informação iii

Introdução aos Sistemas Introdução aos Sistemas de Informaçãode Informação

O que são Programas e Linguagem de programação?

Page 2: Int. sistemas de informação iii

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.

ProgramaA 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çõesPROCESSO = seqüências de ações

Page 3: Int. sistemas de informação iii

Estrutura de um programaEstrutura de um programaDe 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.

Page 4: Int. sistemas de informação iii

Linguagens de ProgramaçãoLinguagens de ProgramaçãoUma 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

Page 5: Int. sistemas de informação iii

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:

Page 6: Int. sistemas de informação iii

Análise do problema Aná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 preliminarAnálise funcionalAná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.

Page 7: Int. sistemas de informação iii

Instalação e depuraçãoInstalação e depuraçãoFase 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.

Page 8: Int. sistemas de informação iii

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.

Page 9: Int. sistemas de informação iii

Funcionamento Funcionamento

Programa

Fonte

Ling.

Alto

Nível

Compilador Resultado

Programa

Objeto

Ling.

Baixo

Nível

Page 10: Int. sistemas de informação iii

Compilador & Interpretador Compilador & 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.

Page 11: Int. sistemas de informação iii

Sintaxe da LinguagemSintaxe da LinguagemA 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:

Page 12: Int. sistemas de informação iii

GeraçõesGeraçõesLinguagens 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.

Page 13: Int. sistemas de informação iii

GeraçõesGeraçõesLinguagem 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).

Page 14: Int. sistemas de informação iii

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++.

Page 15: Int. sistemas de informação iii

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:

Page 16: Int. sistemas de informação iii

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.

Page 17: Int. sistemas de informação iii

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.

Page 18: Int. sistemas de informação iii

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.