Informática Aplicada Prof.: Bruno Rafael de Oliveira Rodrigues.

Post on 17-Apr-2015

109 views 1 download

Transcript of Informática Aplicada Prof.: Bruno Rafael de Oliveira Rodrigues.

Informática Aplicada

Prof.: Bruno Rafael de Oliveira Rodrigues

O SOFTWARE E

AS LINGUAGENS DE PROGRAMAÇÃO

Softwares

O software é a parte lógica do sistema de computação. Ele é o programa de computador que dá capacidade ao processador para realizar as tarefas que desejamos.

Outras definições de software

É a parte lógica que dota o equipamento físico com a capacidade de realizar todo tipo de trabalho.

É o ingrediente que estabelece que o computador executará uma tarefa específica, isto é, um conjunto de instruções eletrônicas armazenadas em um meio de armazenamento.

É a estrutura que permite a um programa manipular informações corretamente.

Evolução do Software

Primeira era: por volta dos anos 50 e 60 Processamento em batch (em lotes) Poucos programas específicos para um tipo

de hardware Início de linguagens de alto nível como

Fortran, Cobol

Segunda era: anos 70 Utilização do mesmo programa por várias

pessoas simultaneamente Programas de banco de dados Pacotes de software para vender a vários

clientes

Terceira era: até o fim dos anos 80 Sistemas distribuídos Venda em massa de pacotes de software Uso da informática como assistente diário

pessoal Softwares utilitários (pacotes de escritório) Ambiente gráfico amigável Jogos

Futuro Computação distribuída (internet) Mais aplicações baseadas em IA Contínuo aumento de processamento e de armazenagem e redução do tamanho Softwares mais amigáveis

Tipos de Softwares

Mais comum Usuário paga por licença ou direito de uso Código não disponível Caixa com CD-ROM e manual Via internet

Freeware: São programas gratuitos, eles não expiram e você pode usá-los livremente que nunca terá que pagar nada por isso.

Adware: Também são programas gratuitos, mas trazem publicidade em forma de banners ou links que bancam os custos do desenvolvimento e manutenção do software. Muitos adwares oferecem versões pagas dos programas, sem propaganda, mas a compra neste caso é opcional, você pode ficar com a versão suportada por banners por quanto tempo quiser.

Shareware: São programas que após um determinado tempo de uso - este tempo varia de programa para programa - ou número de utilizações, perdem algumas ou todas as suas funcionalidades. Após este período você deve desisntalá-lo do computador ou registrá-lo através do pagamento de uma taxa ao desenvolvedor.

Demo: Este tipo de distribuição é mais comum em jogos. Os demos de jogos apresentam apenas algumas fases e servem para você analisar se vale a pena comprá-lo ou não. Os demos não expiram e nem podem ser registrados. Se você quiser comprar o software terá que recorrer a uma loja.

Trial: É semelhante ao tipo DEMO, mas se aplica a programas. Você pode testar o programa em sua totalidade, com todos os recursos e por quanto tempo quiser, mas geralmente não poderá salvar ou exportar os trabalhos feitos. Se quiser comprar o programa deverá ir a uma loja e comprar a caixa, não há opção para registrar o programa. Alguns programas Trial permitem que você salve e exporte os trabalhos por um certo tempo, mas após este tempo de uso a única opção é comprar o programa completo ou desinstalá-lo do computador.

SOFTWARE LIVRE Direito de uso com ou sem pagamento de

licença De código aberto (disponível) Permite alteração do usuário e redistribuição

pelo mesmo Licenças mais comuns: GPL: GNU public license of Free Software

Foundation BSD: Berkley Systems Developments

Categorias

APLICATIVOS LINGUAGENS DE PROGRAMAÇÃO SISTEMAS OPERACIONAIS

Aplicativos

Software para interação do ser humano com a máquina para obter funcionalidades

Exemplos: Editor de textos, jogos, planilhas

eletrônicas, navegador da internet, agenda,

controle de estoque etc.

Linguagem de Programação

Vocabulário (conjunto de palavras) mais

regras gramaticais Permitem definir ao computador “o quê” tem

que fazer e “como” Uma linguagem pode ser:

Compilada

Interpretada

Compilação

Processo que transforma o código fonte,

legível ao programador em código executável,

legível ao computador

Durante o processo de compilação são feitas três análises:

1. Léxica: subprocesso onde é verificado se as palavras usadas pelo progra-ador para criar instruções estão corretas e contidas no dicionário da referida linguagem.

2. Sintática: nesta etapa é verificado se existe uma lógica correta nas diversas palavras utilizadas pelo programador.

3. Semântica: uma vez utilizando palavras conhecidas pelo dicionário e aplicando uma lógica adequada, resta apenas verificar erros semânticos, como, por exemplo, a multiplicação entre um número e uma letra, que equivocadamente podem ocorrer.

Uma vez que essas análises terminem sem erros, um ligador é utilizado para agrupar as bibliotecas de função, ocasionalmente produzidas junto com o execu tável e torná-los todos independentes do compilador.

INTERPRETAÇÃO DE LINGUAGEM

A transformação do código fonte é feita a cada execução do programa pelo INTERPRETADOR

Essa transformação é efetuada à medida que o

processador executa o programa

As análises léxica, sintática e semântica são também aplicadas, porém pouco a pouco, à medida que a execução vai acontecendo dentro do processador.

Interpretação x Compilação

Programa compilado é mais rápido No programa compilado só é distribuído o

código executável Programa compilado preso a um sistema

operacional

No interpretado vai o interpretador com custo

de armazenagem e talvez de licença A interpretação é mais eficiente em tempo de

desenvolvimento É mais lenta Interpretada pode funcionar em S.O. diferentes

sem modificar o código fonte

LINGUAGENS DE PROGRAMAÇÃO

PRIMEIRA GERAÇÃO Linguagem de máquina em bits Operações do processador em hexadecimal Correspondência direta, instrução do

programador e o que o processador faz ASSEMBLY

SEGUNDA GERAÇÃO Mais independente da arquitetura da máquina Exemplos: FORTRAN COBOL BASIC ALGOL

TERCEIRA GERAÇÃO

Preocupação com a forma de pensar do

programador. Podem ser: De propósito geral: Pascal, PL/I, C, Ada Linguagens orientadas a objeto: Smalltalk,

C++, Java, Linguagens de internet*

∗ Linguagens de internet: ASP, Java, PHP Geralmente interpretadas e dinâmicas

QUARTA GERAÇÃO Linguagens de consulta Ambientes rápidos de desenvolvimento Geradores de programas Simplifica a análise e geração de código