2. História da Computação
O primeiro invento que se tem registo, é o
ábaco, utilizado pelos chineses em torno de
2000 a.C.
3. História da Computação
Em 1610 eram utilizadas as réguas de cálculo,
que eram dispositivos manuais para realizar
multiplicação e cálculo de logaritmos.
4. História da Computação
Entre 1822 e 1871, um inventor inglês
chamado Charles Babbage, criou uma
máquina de cálculo mecânica denominada de
máquina diferencial.
5. História da Computação
Juntamente com
Babbage, trabalhou a
primeira
programadora da
história: a Condessa
de Lovelace - Lady
Ada Augusta Byron,
responsável por
auxiliar na
programação das
máquinas mecânicas
criadas por Babbage.
6. História da Computação
Hermann Hollerith desenvolveu uma máquina
que acelerava todo o processo de
computação dos dados para ser utilizada na
realização do censo de 1890, nos Estados
Unidos.
7. História da Computação
Hollerith fundou sua própria empresa, a
Tabulation Machine Company, no ano de
1914.
Após algumas fusões com outras empresas e
anos no comando do
empreendimento, Hoolerith veio a falecer.
Quando um substituto assumiu o seu
lugar, em 1924, o nome da empresa foi
alterado para Internacional Business
Machine - IBM
8. História da Computação
O primeiro computador eletromecânico, o
Mark I, foi criado em 1937, por uma pequena
empresa norte-americana chamada IBM.
Em 1946, foi inventado o primeiro grande
computador eletrônico valvulado: o ENIAC
(Eletronic Numeric Integrator Analyser and
Computer).
10. Gerações Dos Computadores
1a. Geração – 1945 à 1955
Estímulo:
2a. Guerra Mundial
Usavam válvulas eletrônicas
Esquentavam MUITO
Vários quilometros de fios
Lentos
Ocupavam MUITO espaço (enormes)
11. Gerações Dos Computadores
2a. Geração – 1955 à 1965
Substituiu
válvulas por transistores
Substituiu fios de ligação por circuito impresso
Estas substituições permitiram
Redução
de custo
Redução de tamanho
Aumento da velocidade de processamento
12. Gerações Dos Computadores
3a. Geração – 1965 à 1980
Construída
a partir de circuitos integrados
Os circuitos integrados permitiram
Redução
de custo
Redução de tamanho
Aumento da velocidade de processamento que
alcançou a ordem de microsegundos (10-6)
Têm
início o uso de Sistemas Operacionais +
avançados
13. Gerações Dos Computadores
4a. Geração – 1980 à atual
Aperfeiçoamento
da tecnologia atual
VLSI (Very Large Scale Integration)
VLSI permitiram
Redução
de custo
Redução de tamanho
Aumento da velocidade de processamento que
alcançou a ordem de nanosegundos (10-9)
14. Gerações Dos Computadores
“5a. Geração” – 1990 à atual
Aperfeiçoamento
da tecnologia atual
ULSI (Ultra Scale Integration)
ULSI permitiram
Redução
de custo
Redução de tamanho
Aumento da velocidade de processamento
Conectividade
Mobilidade
15. Linguagens de Programação
As linguagens de programação são anteriores
ao advento do primeiro computador moderno.
D Babbagee início as linguagens eram apenas
códigos.
Condessa Ada Lovelace, escreveu o primeiro
algoritmo, que foi processado pela máquina
analítica de Charles
Herman Hollerith percebeu que poderia
codificar os dados do censo de 1890 em
cartões perfurados.
16. Linguagens de Programação
Os primeiros códigos para computador eram
especializados segundo as aplicações.
Alonzo Church foi capaz de expressar o
cálculo lambda de uma maneira formalizada
A máquina de Turing era uma abstração do
funcionamento da máquina de uma fita de
marcação, a sua utilização principal era na
análise rigorosa da complexidade algorítmica
17. Linguagens de Programação
A velocidade limitada e a capacidade da
memória forçava os programadores a escrever
a mão economicamente programas em
linguagem de montagem (linguagem de
máquina).
Logo se descobriu que a programação em
linguagem assembly exigia um grande esforço
intelectual e era muito sujeita a erros.
18. Linguagens de Programação
Na década de 1950 as primeiras três
linguagens de programação modernas, cujos
descendentes ainda estão em uso difundido
hoje foram concebidas:
FORTRAN
(1954), a "FORmula TRANslator",
inventada por John Backus e outros.;
LISP, a "LISt Processor", inventada por John
McCarthy e outros.;
COBOL, a COmmon Business Oriented
Language, criada pelo Short Range Committee,
com grande influência de Grace Hopper.
19. Linguagens de Programação
1950 foi a publicação, por um comitê de cientistas
americanos e europeus, de "uma nova linguagem
para os algoritmos", a ALGOL 60
Estrutura de blocos aninhados:
Escopo léxico
pedaços significativos de código poderiam ser agrupados
em bloco de instruções, sem ter que ser transformados em
procedimentos separados e ser explicitamente chamados;
um bloco podia ter suas próprias variáveis não acessíveis
fora do bloco, e muito menos manipuláveis de fora do
bloco.
forma como a linguagem foi descrita:
Uma notação matemática exata, Backus-Naur (BNF), foi
utilizada para descrever a sintaxe da linguagem.
20. Linguagens de Programação
Algumas ideias-chave da linguagem Algol
foram tomadas, produzindo-se a linguagem
ALGOL 68:
A
sintaxe e semântica se tornaram ainda mais
ortogonais, com rotinas anônimas, um sistema
recursivo de digitação com funções de ordem
superior, etc;
não somente a parte livre de contexto da
linguagem, mas a sintaxe da linguagem completa
e a semântica foram definidos formalmente, em
termos da gramática de Van Wijngaarden, um
formalismo desenvolvido especificamente para
21. Linguagens de Programação
De 1960 à década de 1970 a maioria dos principais
paradigmas de linguagem agora em uso foram inventados
durante este período:
Simula, inventada nos anos 1960 por Nygaard e Dahl como um
super conujunto de Algol 60, foi a primeira linguagem a suportar
o conceito de classes.
C, uma das primeiras linguagens de programação de sistemas,
foi desenvolvido por Dennis Ritchie e Ken Thompson nos
laboratórios da Bell entre 1969 e 1973.
Smalltalk (meados de 1970) forneceu uma base completa para
o projeto de uma linguagem orientada a objetos.
Prolog, projetada em 1972 por Colmerauer, Roussel, e
Kowalski, foi a primeira linguagem de programação do
paradigma lógico.
ML built a polymorphic type system (inventada por Robin
Milner em 1973) uma linguagem funcional, baseada em Lisp,
estaticamente tipada.
22. Linguagens de Programação
Os anos 1980 foram anos de relativa consolidação.
C++ combinou orientação a objetos e programação
de sistemas.
O governo dos Estados Unidos padronizou a Ada,
destinada à utilização por parte dos contratantes de
defesa
A comunidade de linguagens funcionais se dedicou a
padronizar a ML e o Lisp
Aumento do foco na programação de sistemas de
larga escala com o uso de módulos
O hardware deveria ser concebido para
os compiladores ao invés de ser voltado a
programadores assembly
23. Linguagens de Programação
A década de 1990 não viu nenhuma novidade
fundamental, mas a recombinação e
maturação das ideias antigas.
Muitas linguagens com "aplicações de
desenvolvimento rápido" (RAD) surgiram,
geralmente vindo com um IDE, coleta de lixo,
e eram descendentes de linguagens mais
antigas
Surgimento de linguagens de scripting que
vieram a ser mais proeminentes usadas em
conexão com a web
24. Tendências Atuais
Mecanismos para a adição de segurança e verificação da
confiabilidade para a linguagem: verificação estática prolongada,
controle de fluxo de informação, estático segurança em threads.
Mecanismos alternativos de modularidade, Delegação de
programação, programação orientada a aspectos.
Desenvolvimento de software orientado a componentes.
Metaprogramação, Reflexão ou acesso a árvores de sintaxe
abstratas.
Maior ênfase na distribuição e mobilidade.
Integração com bases de dados, incluindo XML e bancos de dados
relacionais.
Suporte para Unicode de forma que o código-fonte não esteja
restrito aos caracteres contidos no código ASCII; permitindo, por
exemplo, o uso de scripts não latinos ou pontuação estendida.
XML para a interfaces gráficas (XUL, XAML).