31
Introdução à Programação Aula 01 Prof. Max Santana Rolemberg Farias [email protected] Colegiado de Engenharia de Computação

Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

Embed Size (px)

Citation preview

Page 1: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

Introdução à Programação Aula 01

Prof. Max Santana Rolemberg Farias [email protected]

Colegiado de Engenharia de Computação

Page 2: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

QUAL O OBJETIVO DA DISCIPLINA?

Page 3: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Tornar vocês (alunos) capazes de visualizar soluções computacionais para problemas reais.

– Através da construção de programas, em linguagem de alto nível estruturada

Objetivo

3

Page 4: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

QUAL É A EMENTA DO CURSO?

Page 5: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Conceitos básicos de linguagens de programação.

• Histórico, classificação e principais aplicações de linguagens de programação.

• Modelos de execução de programas.

• Ferramentas de desenvolvimento.

Ementa

5

Page 6: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Tipos de dados. Constantes e variáveis.

• Expressões.

• Comandos de estruturação de fluxo de controle.

• Modularização. Escopo de nomes e tempo de vida de variáveis.

Ementa (continuação)

6

Page 7: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Passagem de parâmetros.

• Recursividade.

• Tipos de dados definidos pelo usuário.

• Arquivos.

Ementa (continuação)

7

Page 8: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

COMO SERÁ AS AVALIAÇÕES?

Page 9: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• A avaliação será realizada mediante duas provas e um trabalho.

• A média do discente resultará da média aritmética das notas obtidas.

Avaliação

9

Page 10: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

O QUE É UM SISTEMA COMPUTACIONAL?

Page 11: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• São dispositivos eletrônicos (hardware) que funcionam com base em instruções e que são capazes de tratar automaticamente informações e processar dados de acordo com um programa (Software).

Sistemas Computacionais

11

Page 12: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Desde a antiguidade o homem vem desenvolvendo hardware elétrico-eletrônicos.

Histórico dos Sistemas Computacionais

12

Page 13: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Dos anos 1960 até os anos 1970 (Mainframes) – Grandes computadores para executar

aplicações capazes de processar uma

grande quantidade de dados.

• Dos anos 1980 até os anos 1990 (Desktop) – Um computador por mesa para

fazer tarefas pessoais e de

negócios.

– Surgimento da Internet

Evolução dos Sistemas Computacionais

13

Page 14: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Século 21 (Sistemas embarcados)

– Vários dispositivos computacionais

em todos os lugares/pessoas

– Milhões de desktop

– Bilhões de processadores

embarcados

– Internet das coisas

– Sistemas Ciberfísico

Evolução dos Sistemas Computacionais (continuação)

14

Page 15: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

ONDE PODEMOS ENCONTRAR SISTEMAS COMPUTACIONAIS?

Page 16: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Basta olhar ao redor par perceber que estão em quase todos os lugares...

Sistemas Computacionais

Sen

sore

s

Ind

ust

rias

Smar

t Sp

ace

Tran

spo

rte

Me

dic

o

16

Page 17: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Desktop

• Servidores/Clusters

• Embarcados

• Dispositivos móveis pessoais (PMD)

Categorias de Sistemas Computacionais

17

Page 18: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Tipo mais popular

• Computador pessoal que roda aplicativos genéricos – Editor de texto, browser, media player, jogos etc.

• Alia bom desempenho a baixo custo

• Fatia importante do mercado de computadores – Impulsionou boa parte dos avanços tecnológicos

dos últimos 30 anos.

Sistemas Computacionais: Desktops

18

Page 19: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Roda aplicações complexas

– Foco em disponibilidade, escalabilidade e throughput

• Usado para rodar aplicações que atendem muitos usuários simultaneamente

– Servidor web, sistema de gerenciamento de BD, cloud computing

• Acessados geralmente via rede

• Grande poder de processamento e armazenamento

Sistemas Computacionais: Servidores/Clusters

19

Page 20: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Estão em todos os lugares

– Carro, avião, televisão, cameras digitais etc

• Rodam uma aplicação específica ou classe de aplicações relacionadas

– Aplicações com forte integração com HW

• Aplicações devem ser otimizadas para conseguir o máximo desempenho em um HW que deve ter custo e consumo de energia reduzido

• Devem ser robustos

Sistemas Computacionais: Embarcados

20

Page 21: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Dispositivos pequenos móveis capazes de executar diversos aplicativos – Smartphone, tablets

• Têm como características marcantes: – Capacidade de comunicação com Internet e outros

dispositivos (wi-fi, bluetooth, GPS etc)

– Dependência de bateria

• Possuem características de desktops e embarcados – Variedade de dispositivos de E/S, capazes de rodar vários

aplicativos diferentes

– Restrições de memória e processamento, e otimiza consumo de energia

Sistemas Computacionais: Dispositivos Móveis Pessoais

21

Page 22: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

DO QUE É COMPOSTO UM SISTEMA COMPUTACIONAL?

Page 23: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

Sistema Computacional = Hardware + Software

• Hardware

– Parte física do computador

• Chips, monitores, teclados, etc.

• Software

– Programas e dados

• Editores de textos, navegadores, sistemas operacionais, etc

Componentes Básicos de um Sistema Computacional

23

Page 24: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

Componentes Básicos de um Sistema Computacional

24

Page 25: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

Componentes de um Sistema Computacional

Compilador

Montador

Sistema operacional

Hardware

Repertório de Instruções da Arquitetura

Software

Aplicação

Processador Memória Sistema de E/S

Datapath & Controle

Projeto Digital

Projeto de Circuito

Transistores

Sistemas digitais

Interface

Computador

Software de sistema

25

Page 26: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

Softwares de um Sistema Computacional

26

Page 27: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Software aplicativo/usuário tem uma função muito bem definida.

– Dar instruções que serão executadas pelo sistema operacional (software de sistema)

– Sem esse elemento os sistemas computacionais seriam apenas um conjunto de componentes eletrônicos.

Software Aplicativo

27

Page 28: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• O sistema operacional (SO) é um software básico que trabalha como intermediário entre os aplicativos/usuários e o hardware.

– Fornecendo um ambiente com um conjunto de ferramentas necessárias para o funcionamento de um sistema computacional.

– O SO é responsável pelo gerenciamento de todos os dispositivos como: processador, memória, disco, dispositivos de entrada e saída, entre outros.

Software de Sistema: Sistema Operacional

28

Page 29: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

O SISTEMA COMPUTACIONAL É UM SISTEMA DE PROCESSAMENTO DE

DADOS?

Page 30: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Um sistema de processamento de dados precisa de um programa (software).

– Para processar os dados de entrada.

– Gerar as informações na saída.

Sistema de Processamento de Dados

30

Alan Turing

Page 31: Introdução à Programação Aula 01 - univasf.edu.brmax.santana/material/introprog/aula01-introPro... · Aula 01 Prof. Max Santana Rolemberg Farias ... Constantes e variáveis

• Um sistema computacional tem como finalidade principal realizar a tarefa de processamento de dados .

Sistema Computacional como Maquina de Processamento

31