computação: do ábaco aos dias atuais rodrigo assad
TRANSCRIPT
![Page 1: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/1.jpg)
Computação: do Computação: do ábaco aos dias atuaisábaco aos dias atuais
Computação: do Computação: do ábaco aos dias atuaisábaco aos dias atuais
Rodrigo AssadRodrigo Assad
![Page 2: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/2.jpg)
Agenda• Introdução• O Inicio• Grandes áreas• O que vem por ai ....
![Page 3: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/3.jpg)
Introdução• Atualmente a sociedade não vive
mais sem a utilização de computadores e os seus sistemas de informação.
• Mas o que é um computador?
![Page 4: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/4.jpg)
Introdução• Para muitos um computador simboliza o
futuro.• No cinema e na televisão vemos maquinas
grandes, complexas, cheias de luzes • Geralmente o computador tem
personalidade: frio, calculista, impessoal.• O operador do computador é visto como
gênio, misterioso uma pessoa diferente.
![Page 5: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/5.jpg)
Introdução• Mas o que é verdade
![Page 6: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/6.jpg)
Introdução• O cenário é bem teatral• O computador não é resultado de
um cientista maluco• Ele surgiu da necessidade
crescente de se fazer cálculos• Os ancestrais do computador tem
mais de 3000 anos
![Page 7: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/7.jpg)
O Início• Se levarmos em conta que o termo
COMPUTAR, significa fazer cálculos, contar, efetuar operações aritméticas, COMPUTADOR seria então o mecanismo ou máquina que auxilia essa tarefa, com vantagens no tempo gasto e na precisão.
![Page 8: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/8.jpg)
O Início• Inicialmente o homem utilizou
seus próprios dedos para essa tarefa, dando origem ao sistema DECIMAL e aos termos DIGITAL e DIGITO . Para auxílio deste método, eram usados gravetos, contas ou marcas na parede
![Page 9: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/9.jpg)
O Início• Tábuas de argila foram desenterradas
por arqueólogos no Oriente Médio, próximo à Babilônia, contendo tabuadas de multiplicação e recíprocos, acredita-se que tenham sido escritas por volta de 1700 a.C. e usavam o sistema sexagesimal (base 60), dando origem às nossas atuais unidades de tempo
![Page 10: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/10.jpg)
O Início
TimeLine
![Page 11: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/11.jpg)
Grandes áreas• Engenharia de Software• Arquitetura de Computadores• Redes e Sistemas Distribuídos• Teoria da Computação• Inteligência Artificial
![Page 12: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/12.jpg)
Grandes áreas• Engenharia de software
– Não mais aprendemos uma linguagem que atenda uma determinada necessidade
– Atualmente temos plataformas de desenvolvimento
– Uma briga enorme entre Java e .NET– Funcionam em quase qualquer dispositivo
![Page 13: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/13.jpg)
Grandes áreas
![Page 14: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/14.jpg)
Programação OO• OO significa orientada a objetos• Não vemos mais programas como
rotinas mas sim como objetos• O código fica mais fácil• A manutenção fica mais fácil• A reusabilidade fica mais fácil• É o paradigma mais utilizado atualmente• Java e VB são bons exemplos
![Page 15: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/15.jpg)
Novos paradigmas• Temos a programação orientada a
agentes– Vemos o mundo como unidades que
podem interoperar
• Programação orientada a aspectos– Os aspectos do mundo são quem nos
interessam
![Page 16: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/16.jpg)
Conceitos • Como vemos programar é a arte de
representar situações do mundo real dentro de um software
• Para isso o ferramental esta ai• Agora so basta escolher seu
compilador e começar????• Será so isso?
![Page 17: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/17.jpg)
Linguagens• C : Para programação baixo nível• Assembler : Para programação baixo nível• Java : sistemas servidores e embarcados• .Net : sistemas servidores, sistemas em
descktop e embarcados (especialmente C#)• Delphi : sistemas em descktop• Visual Basic : sistemas em descktop• PHP: Web• Natural e Cobol: Para Mainframes
![Page 18: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/18.jpg)
Frameworks • Inicialmente se escrevia código
em uma linguagem e este código so funcionava em uma plataforma
• As linguagens foram portadas para as plataformas mas parte dos códigos precisavam ser rescritos
• Isso é custoso mas já é bom
![Page 19: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/19.jpg)
Frameworks • Os frameworks de desenvolvimento
estão facilitando as escrita de apenas um código que possa funcionar em qualquer tipo de dispositivo– Supercomputadores, servidores, PC’s,
palmtops, celulares, smart cards
![Page 20: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/20.jpg)
Frameworks• Atualmente existe uma briga no mercado
– Java x .NET– Para celuares: Java x .NET x Brew x Symbian
• Cada uma tem seus pontos fortes e fracos mas sem dúvida serão as linguagens que terão mais espaço no mercado
![Page 21: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/21.jpg)
Ferramentas• Compiladores: usados para
“compilar” o programa escrito em uma linguagem (Delphi, Visual C, Eclipse, JBuilder, WSAD, Visual Studio .NET, ...)
• Gerencia de configuração: CVS, Clercase, Subversion, ...
![Page 22: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/22.jpg)
Ferramentas• Modelagem: Rose, together, visio,
Jude, Erwin, ...• Acompanhamento de projeto:
Bugzilla, Project, Xplanner, ... • Testes : Ant, JMeter, Wast, Junit, ...
![Page 23: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/23.jpg)
Metodologias• RUP• XP
![Page 24: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/24.jpg)
Processo• ProSCes, baseado no RUP• Define os entregáveis : modelos de
dados, arquitetura de aplicação, ...• Em caso de uma falha no sistema
entregue o processo auxilia a definir onde houve a falha e o que se deve fazer para que ela não ocorra mais
![Page 25: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/25.jpg)
Cargos• Testador de software• Engenheiro de software• Arquiteto de software• Arquiteto de teste• Gerente de configuração• Engenheiro de testes• Analista de sistemas• Gerente de projetos
![Page 26: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/26.jpg)
Componentes • Atualmente se quebra o software em
componentes que podem ser reutilizados
• Temos hoje componentes para a maioria das tarefas
• Existem empresas que apenas produzem e vendem componentes no mercado
![Page 27: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/27.jpg)
Componentes• Sistemas operacionais se utilizam
muito deste conceito• Facilitam a reutilização de código• Facilitam o desenvolvimento de
grandes sistemas• Facilitam o desenvolvimento de
softwares por empresas diferentes
![Page 28: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/28.jpg)
Grandes áreas• Arquitetura de computadores
– Será que vem ai o computador quantico?
– Novas tecnologias que permitam cada vez mais a miniatuarização e aumento da capacidade de processamento
– Clusters– Processamento paralelo
![Page 29: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/29.jpg)
Grandes áreas• Redes e sistemas distribuídos
– Segurança da Informação– Protocolos de rede– Wireless– Topologias– Sistemas redundantes– Alta disponibilidade– Tolerância a falhas
![Page 30: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/30.jpg)
Grandes áreas• Banco de Dados• Computadores são adequados para
armazenar e manipular dados rapidamente• O SGBD (Sistema de Gerenciamento de Banco
de Dados) é o software responsável por estas funcionalidades
• Existes SGBD para cada tipo de aplicações:– Pequeno volume e pequenos sistemas: Access,
FoxPro, Paradox, dBase IV, MySql, Postgres– Grande porte: Oracle, DB2, SQLServer, Ingres e
Informix
![Page 31: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/31.jpg)
O SGBD• O SGBD é um programa que armazena os
dados e permite que eles sejam acessados qualquer momento
• SGBD’s podem armazenar vários Gb dados • Independente do tamanho dos arquivos de
dados o acesso aos dados deve ser rápido• Outra vantagem do SGBD é a existência
de uma linguagem de manipulação para os dados (SQL)
![Page 32: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/32.jpg)
O SGBD• Assim como os sistemas
operacionais o SGBD pode ser acesso pelo usuário como por outro programa
• O SGBD também possui um núcleo que tem a responsabilidade de manipular com os arquivos.
![Page 33: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/33.jpg)
Fundamentos de Bancos de Dados
• Toda informação em um SGBD fica armazenado em uma tabela
• Cada linha recebe o nome de registro• Cada coluna recebe o nome de
campo, cada campo possui um tipo que é definido pelo pessoa que criou a tabela
![Page 34: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/34.jpg)
Fundamentos de Bancos de Dados
• Mas um sistema não é composto apenas por uma tabela. Então como os dados passam a ter sentido?
• Atualmente a maneira mais usual é a de se relacionar os dados utilizando funcionalidades do SGBD.
• Tais bancos de dados são chamados de bancos de dados relacionais
![Page 35: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/35.jpg)
Fundamentos de Bancos de Dados
• Além dos sistemas relacionais existem ainda modelos hierárquicos e orientados a objetos
• Podemos relacionar os dados em uma tabela de várias maneiras:– Um pra um– Um pra muitos– Muitos para muitos
![Page 36: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/36.jpg)
Linguagem de manipulação de dados
• SQL – É a linguagem que esta no coração
do SGBD– É semelhante a uma linguagem de
programação– Foi desenvolvida pela IBM
![Page 37: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/37.jpg)
Considerações finais• Os bancos de dados podem ser
distribuídos– Permitem a utilização de dados
localizados em servidores geograficamente distantes
– Devido as limitações das redes geralmente esta distribuição e feita em servidores localizados na rede local
![Page 38: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/38.jpg)
Considerações finais• A utilização de um servidor de
banco de dados favorece o modelo cliente servidor
• Nele temos um servidor central de banco de dados sendo acessado por diversos programas localizados na estações de trabalho
![Page 39: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/39.jpg)
Grandes áreas• Inteligência Artificial
– Agentes inteligentes– Jogos– Sistemas especialistas– Tomada de decisão
![Page 40: Computação: do ábaco aos dias atuais Rodrigo Assad](https://reader035.vdocuments.mx/reader035/viewer/2022081602/552fc14a497959413d8e2017/html5/thumbnails/40.jpg)
O que vem por ai ...• O mercado esta cada vez mais saturado• Certificações são cada vez mais exigidas• Comprovação de experiência• Convergência , o que chamamos de NG• TV Digital• Sistemas estarão cada vez mais voltados a WEB• Centralização do processamento• Empresas de telefonia virando empresas de redes• ....