Objetivos:
-Dar uma visão integrada do que é a
Informática
-Refletir sobre as motivações e
problemas que envolvem o uso de
ferramentas computacionais
-Introduzir os aspectos conceituais e
metodológicos da Ciência da
Computação
Referências
http://www.ic.uff.br/~kisch/
Informatica_I-RO_2004.1.html
(1) Introdução à Ciência da Computação;
R.D.Fedeli, E.G.F.Polloni, F.E.Peres; Ed. Thomson
(2) Informática - Conceitos Básicos; F.C.Velloso;
Ed. Elsevier
(3) História da Computação - Teoria e Tecnologia;
Cléuzio Fonseca Filho; Ed. LTr
1.Aspectos Gerais de Ciência da Computação
2.Componentes Computacionais e sua Integração
3. Organização dos Dados
4.Linguagens de Programação
5. Noção de Redes e a Internet
6. Engenharia de Software
Onde a Ciência da Computação se insere?
-Pesquisa
-Economia
-Segurança
-Estratégias comerciais
-Conhecimento
-Trabalho
Informação:
Quanto pesa e qual volume tem?
Quanto vale e quanto custa?
Quais as conseqüências?
Conseqüências das Ciências da
Computação
-Tecnológicas
-Sociais
-Filosóficas
-Políticas
Quando começou a Ciência da
Computação?
-2500 a.c.
-Babilônia, Egito e Fenícia -Sistema de numeração, silabários,
ideogramas,
alfabetos e algorítmos. Representações abstratas -Século III a.c. até século I d.c.
-Grécia - Criptografia, sistemas mecânicos de cálculo (computadores!), lógica, método axiomático
-Século VIII até século XII
-Paises Árabes e Índia - Álgebra, sistema numérico posicional, algarismos
-Século XI Europa
-Automatização do raciocínio -Século XVI
- Lógica moderna, autômatos, máquinas de cálculo mecânico (mais computadores!!), caixas de música
-Século XVIII
- Teares automáticos -Século XIX
- Censo do EUA. Criação de uma máquina mecânica programável.
- Álgebra booleana. Um dos problemas de Hilbert: A “máquina de gerar enunciados verdadeiros”
-Século XX
- Gödel - Esta máquina não existe
- Turing - Conceitualização matemática da noção de algoritmo. Máquina de Turing
- Tese de Church-Turing
- Computadores analógicos eletrônicos -1925 Analisador diferencial (Bush) - Computadores digitais
- ABC(Atanasoff-Berry), Z3 (Zuse), Mark I (Aiken), Collosus (Turing-Neuman) - reles e válvulas eletrônicas
- Invenção do transístor (1948)
- Criação do Fortran e do primeiro SO(1954) - Criação do Algol (1956)
- Primeiro computador com transístores (1959) - Primeiro disco removível (1960)
- Criado o mouse (1964)
- Primeiro doutoramento em Ciência da Computação (1965)
- Primeira calculadora de estado sólido (1966) - Criado o primeiro sistema de janelas (1968)
- Primeiro compilador Pascal, é desenvolvido o Unix, é criado a ARPANET (1969)
-Primeiro microprocessador em escala industrial (1971)
- Criação da linguagem C (1972)
- Criação do Prolog, do primeiro supercomputador e do primeiro computador com sistema de janelas integrado com rede usando protocolo Ethernet(1973)
- Kenbak I - Primeiro microcomputador, A ARPANET se une a outras redes estas são chamadas por Internet (1974)
- É fundada a Microsoft (1975) - É fundada a Apple (1977)
- Microsoft cria o Xenix, versão do Unix (1980) - Criado o computador pessoal da IBM (1981) - É criada a Free Software Foundation (1985)
- Primeiros processadores RISC comerciais (1986) - A Cray produz o Cray-MP (US$20 milhões) (1988) - Primeiro verme de computador (1988)
- Linus Torvalds remete o e-mail que lança o Linux com a versão 0.01 (1992)
- Lançado o Windows 3.1 (1992)
- Mosaic, primeiro navegador de Internet (1993)
- Lançado o navegador Netscape e o Linux 1.0 (1994)
- Lançado o navegador Internet Explorer (1995) - Lançado o Mac OS X (2001)
- Lançado o Mozilla (2002)
- O número de distribuições Linux chega a casa dos milhares (2004)
- A utilização FireFox cresce exponencialmente (2005)
Como fazer um programa?
- Abstração -Conceitos -Informação -Estrutura - Lógica- Uso indevido de argumentos (Sofistas, Zenão, etc) - PlatãoxAristóteles: Conteúdo mental e realidade
Silogismos, Modalidades, silogismos modais - Euclides e o método axiomático
- Algoritmo
- Al Kharazmi: Ábaco x escrita dos cálculos - Eficácia - Eficiência - Complexidade - Granularidade - Recursividade - Máquina de Turing - Tese de Church-Turing
- Linguagem
"um conjunto de elementos (símbolos) e um conjunto de métodos (regras) para combinar estes elementos, usado e entendido por uma determinada comunidade".
- Sintaxe > Ligação entre elementos - Gramática > Regras - Semântica > Significado - Linguagens formais - Linguagens naturais - Protocolos de comunicação - Linguagens de programação
Linguagens de programação
Tipicamente.... - Compiladas Pascal C C++ Fortran- Interpretadas (ou de script) Perl Python Javascript - Mistas Java Parrot Forth
Linguagens de programação
- Não estruturadas Fortran Lisp - Estruturadas Algol Pascal C C++ - Orientadas a objeto C++ Eiffel Objective CLinguagens de programação - Baixo nível Assembly - Alto nível Cobol Fortran Algol Pascal - Médio nível C C++ Forth
Linguagens de formatação ou
Linguagem de especificação
Não devem ser confundidas com linguagens de programação
- TEX - HTML - UML - XML
Alguns tópicos sobre linguagens
- Padronização - Flexibilidade - Eficiência(s) - Aceitação - Sistematização - Portabilidade de códigoVisitas recomendadas
http://www.cotianet.com.br/BIT/hist/Default.
htm
Outros microcomputadores
http://www.winuae.hpg.ig.com.br/historia/index.htm http://www.old-computers.com/museum/ http://www.amigau.com/aig/riscisc.html http://www.guiadohardware.net/ http://gec.di.uminho.pt/discip/TextoAC/indice.html http://www.organizacaodecomputadores.kit.net/ http://www.numaboa.com.br/criptologia/historia/linha.phpVisitas recomendadas
http://www.uff.br/logicacomputacao/logica.htm
http://pt.wikipedia.org/wiki/Linguagem_de_programa%C3%A7%C3% A3o
Visitas recomendadas
-História da Computação
http://www.clubedohardware.com.br/milenio1.html
-Museu do Computador
http://www.hitmill.com/computers/
-Museu do computador analógico:
http://dcoward.best.vwh.net/analog/ http://www.computerhope.com/