• Nenhum resultado encontrado

Programação de Computadores

N/A
N/A
Protected

Academic year: 2021

Share "Programação de Computadores"

Copied!
15
0
0

Texto

(1)

INSTITUTO FEDERAL DE

EDUCAÇÃO, CIÊNCIA E TECNOLOGIA

RIO GRANDE DO NORTE

Programação de

Computadores

Mais objetos e

organização o programa

(2)

O que veremos hoje?

Objetos compostos de objetos

Organizando o programa

a instrução require

(3)

Objetos

Objetos são compostos

de objetos

Livro é composto de capítulos

Casa é composta de quarto,

sala, banheiro, etc

Carro é composto de pneus,

portas, motores, etc

Uma agenda é um conjunto

contatos

Um atributo de um

objeto é um outro objeto

(4)

Objetos

Um triângulo pode ser definido a partir de 3

pontos no plano cartesiano

(5)

Objetos

Um triângulo pode ser definido a partir de 3

pontos no plano cartesiano

Triangulo

- ponto1

- ponto2

- ponto3

Ponto

- cordenada_x

- cordenada_y

class Ponto

(6)

Objetos

A composição de objetos

é uma questão de

“modelagem”

Pode haver mais de uma

forma de modelar um

problema

Uma reta pode ser modelada:

Dois pontos (cordenada

x,y

)

no plano cartesiano

Dois inteiros na equação

ax+b

Ambas estão corretas

y

x

(0,0)

(1,1)

(7)

Organizar o programa

Um programa pode ter muitas classes

Necessário organizar em arquivos separados

Um arquivo por classe?

Um arquivo por “grupo” de classes

Um arquivos por método???? (exagero)

Um diretório por grupo de classes e um arquivo por classe?

E se houver uma dependência entre uma classe/

método de dois arquivos diferentes?

(8)

Organização de programas

class Ponto

(9)

Organização de programas

class Ponto

def initialize (x,y) @cordenada_x = x @cordenada_y = y end ... end class Triangulo def initialize(p1,p2,p3) @ponto1 = p1 @ponto2 = p2 @ponto3 = p3 end ... end

ponto.rb

triangulo.rb

O programa precisa das

definições das classes

(10)

Organização de programas

require

'ponto'

require

'triangulo'

p1 = Ponto.new (1,1)

p2 = Ponto.new (4,3)

p3 = ...

...

meu_programa.rb

(11)

Organização de programas

require

'ponto'

require

'triangulo'

p1 = Ponto.new (1,1)

p2 = Ponto.new (4,3)

p3 = ...

...

meu_programa.rb

Para que o ruby conheça

a classe

Ponto

e

Triangulo

Informar no arquivo

meu_programa.rb

que o

arquivo

ponto.rb

e

triangulo.rb

são

requeridos (

require

)

O

.rb

é opcional

Recomendado colocar no

início do arquivo

meu_programa.rb

(12)

Organizar programa

Onde o ruby deve

procurar os arquivos?

Necessário informar em

quais diretórios o require

deve procurar

Variável global

$LOAD_PATH

Array com os diretórios onde

o require deve procurar os

arquivos

Adicionar diretório atual:

(13)

Organizar programa

Onde o ruby deve

procurar os arquivos?

Necessário informar em

quais diretórios o require

deve procurar

Variável global

$LOAD_PATH

Array com os diretórios onde

o require deve procurar os

arquivos

Adicionar diretório atual:

(14)

Finalmente

$LOAD_PATH << '.' require 'ponto' require 'triangulo' p1 = Ponto.new (1,1) p2 = Ponto.new (4,3) p3 = ... ... triangulo = Triangulo.new (p1,p2,p3) puts triangulo.tipo class Ponto

(15)

Referências

Documentos relacionados

Figueiredo 202013 31/07/2013 406147600001-03 Serv Electrin Serviços Elétricos e Instrumentação Ltda Execução de serviços especializados de manutenção preventiva e corretiva nas

Uso obrigatório de toalha Inscrições e informações: maisvida.info@gmail.com (até dia 27 de junho) Organização: Mais Vida Portugal. AULA

Em Mulheres, raça e classe, Angela Davis, filósofa estadunidense, negra, feminista, ativista radical dos anos 1970, trouxe grande contribuição para repensar as relações

O método stepwise diz respeito à forma como as possíveis variáveis explicativas são testadas na modelagem pesquisada pela análise de regressão linear, isto é, ele

A prova do ENADE/2011, aplicada aos estudantes da Área de Tecnologia em Redes de Computadores, com duração total de 4 horas, apresentou questões discursivas e de múltipla

O dever necessário, mas muito negligenciado, de tirar proveito de nosso Batismo deve ser cum- prido por nós durante toda a nossa vida, especialmente no tempo de tentação,

(UNIFESP) Para distinguir uma solução aquosa de HF (ácido fraco) de outra de HCl (ácido forte), de mesma concentração, foram efetuados os seguintes procedimentos independentes

Depois disso inicia-se o processo de cálculos e seleção dos elementos de projeto tais como área superficial da estrutura, composição do meio filtrante, vegetação, zona