Luciano Ramalho setembro/2012. Objetos Pythonicos. Orientação a objetos e padrões de projeto em Python
|
|
|
- Sônia Lameira Schmidt
- 8 Há anos
- Visualizações:
Transcrição
1 Luciano Ramalho setembro/2012 Objetos Pythonicos Orientação a objetos e padrões de projeto em Python
2 Aula 3 Variáveis e referências + Iteráveis, iteradores e geradores
3 Objetivos desta aula Apresentar os conceitos de referências e aliasing Iniciar a discussão sobre padrões de projeto, mostrando iteradores em Python
4 Implementação da tômbola # coding: utf-8 import random class Tombola(object): itens = None def carregar(self, seq): self.itens = list(seq) def carregada(self): return bool(self.itens) Python 2.2 a 2.7 def misturar(self): random.shuffle(self.itens) def sortear(self): return self.itens.pop()
5 Uma tômbola com defeito Esta implementação tem um bug sutil, porém grave # coding: utf-8 # COM DEFEITO!!! import random class Tombola(object): itens = [] def carregar(self, seq): self.itens.extend(seq) def carregada(self): return bool(self.itens) def misturar(self): random.shuffle(self.itens) def sortear(self): return self.itens.pop() oopy/exemplos/tombola_bug.py
6 Mutabilidade Em Python, alguns objetos são mutáveis, outros são imutáveis Objetos mutáveis possuem conteúdo ou estado interno que pode ser alterado (campos ou atributos de valor) ao longo da sua existência Objetos imutáveis não podem alterados de nenhuma maneira. Seu estado é congelado no momento da inicialização.
7 Mutabilidade: exemplos Alguns tipos mutáveis: list dict set objetos que permitem a alteração de atributos por acesso direto, setters ou outros métodos Alguns tipos imutáveis: str unicode int float tuple frozenset
8 Aliasing ( apelidamento ) Edson Pelé Uma pessoa pode ser chamada por dois ou mais nomes diferentes Um objeto pode ser referenciado através de duas ou mais variáveis diferentes
9 Aliasing ( apelidamento ) Em Python, as variáveis não contém objetos, apenas referências para objetos Esqueça a metáfora da variável como caixa Isso significa que duas variáveis podem apontar para o mesmo objeto Adote a metáfora da variável como rótulo O mesmo objeto pode ter dois rótulos
10 Variáveis e referências Atribuição nunca faz cópias! apenas associa rótulos ou muda os rótulos de lugar a = [1,2,3] b = a a = 'zoo'
11 Variáveis e referências Atribuição nunca faz cópias! apenas associa rótulos ou muda os rótulos de lugar a = [1,2,3] b = a a = 'zoo'
12 Variáveis e referências Atribuição nunca faz cópias! apenas associa rótulos ou muda os rótulos de lugar a = [1,2,3] b = a a = 'zoo'
13 Aliasing: demonstração >>> a = [21, 52, 73] >>> b = a >>> c = a[:] >>> b is a True >>> c is a False >>> b == a True >>> c == a True >>> a, b, c ([21, 52, 73], [21, 52, 73], [21, 52, 73]) >>> b[1] = 999 >>> a, b, c ([21, 999, 73], [21, 999, 73], [21, 52, 73])
14 Identidade e igualdade Use id(o) para ver a identidade de um objeto Duas variáveis podem apontar para o mesmo objeto Neste caso, seus valores são idênticos a is b True Duas variáveis podem apontar para objetos distintos com conteúdos iguais a == b True
15 Comparando com Java Em Java o operador que compara referências é == também usado para os tipos primitivos (int etc.) Em Python, comparação de referências é com is Este operador não pode ser sobrecarregado
16 Comparando com Java (2) Em Java, igualdade entre objetos é testada com o método.equals().equals() é um método, portanto x.equals(y) não funciona se x é null Em Python, usamos o operador == O operador == pode ser sobrecarregado em qualquer classe, redefinindo o método eq Em Python, None é um objeto e suporta == Mas o teste x is None é mais eficiente
17 Iteráveis, iteradores e geradores
18 Comparando: C e Python #include <stdio.h> int main(int argc, char *argv[]) { int i; for(i = 0; i < argc; i++) printf("%s\n", argv[i]); return 0; } import sys for arg in sys.argv: print arg
19 Iteração em Java class Argumentos { public static void main(string[] args) { for (int i=0; i < args.length; i++) System.out.println(args[i]); } } $ java Argumentos alfa bravo charlie alfa bravo charlie
20 Iteração em Java 1.5 ano: 2004 Enhanced for (for melhorado) class Argumentos2 { public static void main(string[] args) { for (String arg : args) System.out.println(arg); } } $ java Argumentos2 alfa bravo charlie alfa bravo charlie
21
22 ano: 1984!
23 Exemplos de iteração Iteração em Python não se limita a tipos primitivos Exemplos string arquivo Django QuerySet Baralho (em: OO em Python sem Sotaque )
24 List comprehensions Expressões que consomem iteráveis e produzem listas qualquer iterável resultado: uma lista >>> s = 'abracadabra' >>> l = [ord(c) for c in s] >>> [ord(c) for c in s] [97, 98, 114, 97, 99, 97, 100, 97, 98, 114, 97]
25 Set & dict comprehensions Expressões que consomem iteráveis e produzem sets ou dicts >>> s = 'abracadabra' >>> {c for c in s} set(['a', 'r', 'b', 'c', 'd']) >>> {c:ord(c) for c in s} {'a': 97, 'r': 114, 'b': 98, 'c': 99, 'd': 100}
26 Em Python o comando for itera sobre... iteráveis Definicão preliminar informal: iterável = que pode ser iterado assim como: desmontável = que pode ser desmontado Iteráveis podem ser usados em outros contextos além do laço for
27 Tipos iteráveis embutidos basestring str unicode dict file frozenset list set tuple xrange
28 Funções embutidas que consomem iteráveis all any filter iter len map max min reduce sorted sum zip
29 Operações com iteráveis Desempacotamento de tupla em atribuições em chamadas de funções >>> def soma(a, b):... return a + b... >>> soma(1, 2) 3 >>> t = (3, 4) >>> soma(t) Traceback (most recent call last): File "<stdin>", line 1, in <module> TypeError: soma() takes exactly 2 arguments (1 given) >>> soma(*t) 7 >>> a, b, c = 'XYZ' >>> a 'X' >>> b 'Y' >>> c 'Z' >>> g = (n for n in [1, 2, 3]) >>> a, b, c = g >>> a 1 >>> b 2 >>> c 3
30 Em Python, um iterável é... Um objeto a partir do qual a função iter consegue obter um iterador. A chamada iter(x): invoca x. iter () para obter um iterador ou, se x. iter não existe: fabrica um iterador que acessa os itens de x sequenciamente fazendo x[0], x[1], x[2] etc.
31 Protocolo de sequência >>> t = Trem(4) >>> len(t) 4 >>> t[0] 'vagao #1' >>> t[3] 'vagao #4' >>> t[-1] 'vagao #4' >>> for vagao in t:... print(vagao) vagao #1 vagao #2 vagao #3 vagao #4 len getitem getitem
32 Protocolo de sequência implementação informal da interface class Trem(object): def init (self, num_vagoes): self.num_vagoes = num_vagoes def len (self): return self.num_vagoes def getitem (self, pos): indice = pos if pos >= 0 else self.num_vagoes + pos if 0 <= indice < self.num_vagoes: # indice 2 -> vagao #3 return 'vagao #%s' % (indice+1) else: raise IndexError('vagao inexistente %s' % pos)
33 Interface Sequence collections.sequence from collections import Sequence class Trem(Sequence): def init (self, num_vagoes): self.num_vagoes = num_vagoes def len (self): return self.num_vagoes def getitem (self, pos): indice = pos if pos >= 0 else self.num_vagoes + pos if 0 <= indice < self.num_vagoes: # indice 2 -> vagao #3 return 'vagao #%s' % (indice+1) else: raise IndexError('vagao inexistente %s' % pos)
34 Herança de Sequence >>> t = Trem(4) >>> 'vagao #2' in t True >>> 'vagao #5' in t False >>> for i in reversed(t): print i... vagao #4 vagao #3 vagao #2 vagao #1 >>> t.index('vagao #2') 1 >>> t.index('vagao #7') Traceback (most recent call last):... ValueError from collections import Seque class Trem(Sequence): def init (self, num_va self.num_vagoes = num def len (self): return self.num_vagoe def getitem (self, pos indice = pos if pos >
35 Interface Iterable Iterable provê um método iter O método iter devolve uma instância de Iterator
36 Iterator é... um padrão de projeto Design Patterns Gamma, Helm, Johnson & Vlissides Addison-Wesley, ISBN
37 Head First Design Patterns Poster O'Reilly, ISBN
38 O padrão Iterator permite acessar os itens de uma coleção sequencialmente, isolando o cliente da implementação da coleção. Head First Design Patterns Poster O'Reilly, ISBN
39 Trem com iterator iter(t) class Trem(object): def init (self, num_vagoes): self.num_vagoes = num_vagoes def iter (self): return IteradorTrem(self.num_vagoes) class IteradorTrem(object): def init (self, num_vagoes): self.atual = 0 self.ultimo_vagao = num_vagoes - 1 def next(self): if self.atual <= self.ultimo_vagao: self.atual += 1 return 'vagao #%s' % (self.atual) else: raise StopIteration() for vagao in t: >>> t = Trem(4) >>> for vagao in t:... print(vagao) vagao #1 vagao #2 vagao #3 vagao #4 invoca iter(t) devolve IteradorTrem invoca itrem.next() até que ele levante StopIteration
40 Em Python, um iterável é... Um objeto a partir do qual a função iter consegue obter um iterador. A chamada iter(x): interface Iterable invoca x. iter () para obter um iterador ou, se x. iter não existe: fabrica um iterador que acessa os itens de x sequenciamente fazendo x[0], x[1], x[2] etc. protocolo de sequência
41 Iteração em C (exemplo 2) #include <stdio.h> int main(int argc, char *argv[]) { } int i; for(i = 0; i < argc; i++) printf("%d : %s\n", i, argv[i]); return 0; $./args2 alfa bravo charlie 0 :./args2 1 : alfa 2 : bravo 3 : charlie
42 Iteração em Python (ex. 2) import sys for i, arg in enumerate(sys.argv): print i, ':', arg $ python args2.py alfa bravo charlie 0 : args2.py 1 : alfa 2 : bravo 3 : charlie
43 Iterator x generator Gerador é uma generalização do iterador assunto para a aula 4...
Luciano Ramalho [email protected] @ramalhoorg. Iteráveis, geradores & cia: o caminho pythonico
Luciano Ramalho [email protected] Iteráveis, geradores & cia: o caminho pythonico Luciano Ramalho Arquiteto de soluções Web desde 1994 1º diretor técnico do Brasil Online, na Abril S/A Muitos clientes
Luciano Ramalho [email protected]. setembro/2012. Objetos Pythonicos. Orientação a objetos e padrões de projeto em Python
Luciano Ramalho [email protected] setembro/2012 Objetos Pythonicos Orientação a objetos e padrões de projeto em Python Aula 4 Recapitulando iteráveis etc. Herança múltipla, MRO e super Propriedades Polimorfismo
Python: Exceções, Iteradores e Geradores. Claudio Esperança
Python: Exceções, Iteradores e Geradores Claudio Esperança Exceções Quando um programa encontra dificuldades não previstas, diz se que uma condição excepcional ou uma exceção ocorreu Um erro é uma exceção
Python para quem sabe Python
Python para quem sabe Python Turma 0, aula 4 Metaclasses, programação funcional e programação assíncrona Exercício: execucao.py Para entender como o interpretador Python lê um arquivo.py Tudo é executável
Computação 1 - Python Aula 10 - Teórica: Estrutura de Dados - Dicionário. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 18
Computação 1 - Python Aula 10 - Teórica: Estrutura de Dados - 1/ 18 Considere que você precisa fazer uma função que guarde o nome e o telefone de seus amigos. Sua função também deve permitir a consulta
Ponteiros e Tabelas. K&R: Capítulo 5
Ponteiros e Tabelas K&R: Capítulo 5 Ponteiros e Tabelas Ponteiros e endereços Ponteiros e argumentos de funções Ponteiros e tabelas Alocação dinâmica de memória Aritmética de ponteiros Tabelas de ponteiros
Estruturas de Dados em Python
Estruturas de Dados em Python Carlos Camarão de Março de 7 Introdução Na segunda parte do curso vamos aprender a programar com estruturas (ou coleções) de dados, em Python. Python é uma linguagem orientada
Computação 1 - Python Aula 6 - Teórica: Listas 1/ 28
Computação 1 - Python Aula 6 - Teórica: Listas 1/ 28 Listas - Fatias Podemos usar a notação de fatias (slices) em listas: [start : end] : vai do índice start até o índice end-1 [start : ] : vai de start
Python: Listas. Claudio Esperança
Python: Listas Claudio Esperança Estruturas de dados Maneira de organizar dados de maneira a facilitar seu acesso Algumas formas são clássicas: Listas Arrays (vetores e matrizes) Tuplas (registros) Árvores
Computação II (MAB 225)
Computação II (MAB 225) Fabio Mascarenhas - 2015.1 http://www.dcc.ufrj.br/~fabiom/pythonoo Sobrecarga de operadores Quase todos os operadores de Python são como == e!=: podemos definir métodos para sobrecarregá-los
Luciano Ramalho dezembro/2012. Objetos Pythonicos. Orientação a objetos e padrões de projeto em Python
Luciano Ramalho [email protected] dezembro/2012 Objetos Pythonicos Orientação a objetos e padrões de projeto em Python Exemplo prático com funções geradoras Funções geradoras para desacoplar laços de
Computação I - Python Aula 1 - Teórica: Manipulação de Strings, Tuplas e Listas
Computação I - Python Aula 1 - Teórica: Manipulação de Strings, Tuplas e Listas João C. P. da Silva Carla A. D. M. Delgado Ana Luisa Duboc Dept. Ciência da Computação - UFRJ http://www.dcc.ufrj.br/ pythonufrj/
Algoritmos e estrutura de dados
Algoritmos e estrutura de dados Introdução Marco A L Barbosa cba Este trabalho está licenciado com uma Licença Creative Commons - Atribuição-CompartilhaIgual 4.0 Internacional. Conteúdo A linguagem Python
Luciano Ramalho [email protected]. setembro/2012. Objetos Pythonicos. Orientação a objetos e padrões de projeto em Python
Luciano Ramalho [email protected] setembro/2012 Objetos Pythonicos Orientação a objetos e padrões de projeto em Python Aula 2 Introdução à Orientação Objetos em Python (continuação) Objetivos desta aula
Conceitos de Linguagens de Programação
Conceitos de Linguagens de Programação Aula 09 Programação Funcional (Haskell) Edirlei Soares de Lima Programação Funcional A programação funcional modela um problema computacional
Produtividade e qualidade em Python através da metaprogramação
Produtividade e qualidade em Python através da metaprogramação ou a visão radical na prática Luciano Ramalho [email protected] @ramalhoorg Fluent Python (O Reilly) Early Release: out/2014 First Edition:
Curso de Python em 5 Horas
Curso de Python em 5 Horas Classes e Trabalhando com Arquivo Gustavo Sverzut Barbieri GPSL - UNICAMP 12 de maio de 2005 ustavo Sverzut Barbieri (GPSL - UNICAMP) Curso de Python em 5 Horas 12 de maio de
CIÊNCIA DA COMPUTAÇÃO - LINGUAGEM DE PROGRAMAÇÃO II REVISÃO POO
REVISÃO POO INTRODUÇÃO À LINGUAGEM JAVA CRIANDO CLASSES EM JAVA Convenção de Nomes em Java Classes iniciam com letras maiúsculas Métodos, atributos e variáveis locais iniciam com minúsculas. Declaração
Funções. Prof. Alberto Costa Neto Programação em Python
Funções Prof. Alberto Costa Neto Programação em Python Passos armazenados (e reusados) def imprimir(): Programa: imprimir() print 'Zip' imprimir() print 'Hello' print 'Fun' def imprimir(): print 'Hello'
1 Expressões, valores e tipos 1. 2 Variáveis e atribuições 5. cálculo de expressões segue a estrutura de parênteses e as prioridades dos operadores
Nesta aula... Conteúdo 1 Expressões, valores e tipos 1 2 Variáveis e atribuições 5 1 Expressões, valores e tipos Expressões e valores Tipos programas calculam expressões para produzir valores cálculo de
Osvaldo Santana Thiago Galesi
Osvaldo Santana Thiago Galesi Novatec Copyright 2010 da Novatec Editora Ltda. Todos os direitos reservados e protegidos pela Lei 9.610 de 19/02/1998. É proibida a reprodução desta obra, mesmo parcial,
Computação II (MAB 225)
Computação II (MAB 225) Fabio Mascarenhas - 2015.1 http://www.dcc.ufrj.br/~fabiom/pythonoo Introdução No curso de Computação I vocês viram os conceitos básicos de programação em Python: expressões e comandos,
Allen B. Downey. Novatec
Allen B. Downey Novatec Authorized Portuguese translation of the English edition of Think Python, 2nd Edition ISBN 9781491939369 2016 Allen B. Downey. This translation is published and sold by permission
Introdução a classes e objetos. Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis
Introdução a classes e objetos Prof. Marcelo Roberto Zorzan Prof a. Rachel Reis Estruturas de Seleção if... else Operador condicional (? : ) switch Aula de Hoje Estruturas de Repetição: while/do... while/for
Paradigmas de Programação. Java First-Tier: Aplicações. Orientação a Objetos em Java (I) Nomenclatura. Paradigma OO. Nomenclatura
Java First-Tier: Aplicações Orientação a Objetos em Java (I) Paradigmas de Programação Programação Funcional Programação Procedural Programação Orientada por Objetos Grupo de Linguagens de Programação
Orientação a Objetos e Java
Orientação a Objetos e Java Daves Martins [email protected] Mestre em Computação de Alto Desempenho pela UFRJ Especialista em Banco de Dados Analista Web Orientação a Objetos e Java Características
TAD: Tipo Abstrato de Dados (parte 2)
TAD: Tipo Abstrato de Dados (parte 2) SCC0202 Algoritmos e Estruturas de Dados I Prof. Thiago A. S. Pardo Modularização em C Programa em C pode ser dividido em vários arquivos Arquivos fonte com extensão.c
Objetivos do mini curso. Conhecer a linguagem. Noção de programação utilizando Python. Aprender o báscio.
Objetivos do mini curso Conhecer a linguagem. Noção de programação utilizando Python. Aprender o báscio. Conteúdo Uma visão da linguagem: O modo python de programar O interpretador dinâmico Salvando e
TAD: Tipo Abstrato de Dados (parte 2)
TAD: Tipo Abstrato de Dados (parte 2) SCC0502 Algoritmos e Estruturas de Dados I Programa em C pode ser dividido em vários arquivos Arquivos fonte com extensão.c Denominados de módulos Cada módulo deve
Aula de hoje. Expressões. Expressões. Expressões. Exemplos. Programa em Python. SCC Introdução à Programação para Engenharias
SCC 124 - Introdução à Programação para Engenharias Expressões Professor: André C. P. L. F. de Carvalho, ICMC-USP Pos-doutorando: Isvani Frias-Blanco Monitor: Henrique Bonini de Britto Menezes Aula de
FUNÇÕES EM C Material adaptado da profa Silvana Maria Affonso de Lara
Universidade do Estado de Minas Gerais - UEMG Curso de Engenharia da Computação FUNÇÕES EM C 1 Material adaptado da profa Silvana Maria Affonso de Lara ROTEIRO DA AULA Definição de Função Argumentos, retornos
Iteradores. Iteradores. Isabel Harb Manssour. Roteiro. Coleções
Implementação de Genéricos, Iteradores Isabel Harb Manssour Porto Alegre, maio de 2006 Roteiro Implementação de Genéricos Coleções Conceito de Genérico Implementação Iteradores Conceito Utilização ForEach
Universidade de Mogi das Cruzes Implementação Orientada a Objetos - Profª. Danielle Martin. Guia da Sintaxe do Java
Guia da Sintaxe do Java TIPOS PRIMITIVOS DE DADOS DO JAVA São os tipos nativos de dados do Java, que podem ser usados na declaração de atributos, variáveis, parâmetros. Tipo primitivo Tamanho Valor padrão
RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em:
RESULUÇÃO DOS EXERCÍCIOS E INSTRUÇÕES DE DECISÃO (if{} e else{}) Profº André Aparecido da Silva Disponível em: http://www.oxnar.com.br/aulas/java ATIVIDADE ELABORAR O PROGRAMA DE CÁLCULOS DE ÁREAS USANDO
INTRODUÇÃO À LINGUAGEM C. Prof. Msc. Luis Filipe Alves Pereira 2015
INTRODUÇÃO À LINGUAGEM C Prof. Msc. Luis Filipe Alves Pereira 2015 INTRODUÇÃO À LINGUAGEM C 02/23 INTRODUÇÃO Criada em 1972 na AT&T Bell Labs É uma das linguagens mais populares. Existem poucas arquiteturas
Para entender o conceito de objetos em programação devemos fazer uma analogia com o mundo real:
Introdução a Orientação a Objetos com Java Autor: Professor Victor Augusto Zago Menegusso. Orientação a Objetos É um paradigma de programação que define a estrutura de um programa baseado nos conceitos
Linguagem Python. Inteligência Artificial. Características de Python. Importando módulos. Módulos. Usando Python no modo interativo
Linguagem Python Inteligência Artificial Aula 7 Profª Bianca Zadrozny http://www.ic.uff.br/~bianca/ia Introdução Características de Python Rodando programas Módulos Tipos básicos Números e variáveis Strings
Análise de Programação
Análise de Programação Fundamentos da Linguagem de Programação Java Prof. Gilberto B. Oliveira Variáveis Atributos: Variáveis Declaradas fora de um método, sem o modificador static Variáveis membro ou
Simulado de Linguagem de Programação Java
Simulado de Linguagem de Programação Java 1. Descreva o processo de criação de programas em Java, desde a criação do código-fonte até a obtenção do resultado esperado, por meio de sua execução. Cite as
Dicionários. Prof. Alberto Costa Neto Programação em Python
Dicionários Prof. Alberto Costa Neto Programação em Python O que é uma Coleção? Uma coleção permite colocar vários valores em um única variável Coleções são práticas porque permitem carregar muitos valores
Vetores. IFSC/Florianópolis - Programação Orientada a Objetos + POO - prof. Herval Daminelli
Vetores De modo geral, em linguagem de programação, vetores ou arrays são estruturas de dados que permitem que uma mesma variável possa armazenar mais de um valor; Em Java, vetores são coleções de dados,
UNIP - Ciência da Computação e Sistemas de Informação. Estrutura de Dados. AULA 5 Pilhas
UNIP - Ciência da Computação e Sistemas de Informação Estrutura de Dados AULA Pilhas Estrutura de Dados A Estrutura de Dados Pilha Pilha é uma estrutura de dados usada em programação, que tem uma regra
Linguagens de Programação Conceitos e Técnicas. Amarrações
Linguagens de Programação Conceitos e Técnicas Amarrações Conceituação Amarração (ou binding) é uma associação entre entidades de programação, tais como entre uma variável e seu valor ou entre um identificador
Computação 1 - Python Aula 3 - Teórica: Tipos de dados, Strings, Estrutura Condicional 1/ 28
Computação 1 - Python Aula 3 - Teórica: Tipos de dados, Strings, Estrutura Condicional 1/ 28 Tipos de Dados Dados Numéricos Números Inteiros: Int/Long Ponto Flutuante: Float Números Complexos: Complex
Programação Java (nível intermediário) 4. Polimorfismo
Programação Java (nível intermediário) 4 Polimorfismo Introdução Uma linguagem orientada a objetos nos permite definir novos tipos para variáveis Nós definimos um novo tipo através de uma classe Este tipo
Estruturas de Dados Aula 6: Cadeias de 28/03/2010
Estruturas de Dados Aula 6: Cadeias de Caracteres 28/03/2010 Caracteres Caracteres são representados internamente por códigos numéricos Tipo char (inteiro pequeno ) 1 byte (8 bits) 256 caracteres possíveis
Seleção Múltipla Laços (while, do-while, for) AULA 05
Introdução a Programação IF669 http://www.cin.ufpe.br/~if669 Seleção Múltipla Laços (while, do-while, for) AULA 05 Ricardo Massa F. Lima [email protected] Sérgio C. B. Soares [email protected] Até aqui...
Linguagem de Programação II Implementação
Linguagem de Programação II Implementação Prof. Alessandro Borges 2 Tópicos Criando objeto Definindo valores para os atributos do objeto Método construtor Definindo valores padrão para os atributos dos
Introdução a JAVA. Variaveis, tipos, expressões, comandos e blocos
Introdução a JAVA Variaveis, tipos, expressões, comandos e blocos Roteiro Variáveis e tipos Operadores aritméticos, lógicos, relacionais e bit-a-bit Atribuição Comandos básicos Ler, Escrever, Condicional,
TCC 00308: Programação de Computadores I Organização de programas em Python
TCC 00308: Programação de Computadores I 2017.1 Organização de programas em Python Vamos programar em Python! Como um programa é organizado? Quais são os tipos de dados disponíveis? Como variáveis podem
Linguagem Python. Processamento Estatístico da Linguagem Natural. Barra invertida em strings. Strings. Aspas triplas. Operações com Strings
Processamento Estatístico da Linguagem Natural Aula 7 Professora Bianca (Sala 302 Bloco E) [email protected] http://www.ic.uff.br/~bianca/peln/ Linguagem Python Introdução Características de Python Rodando
4 Conceito de Herança
4 Conceito de Herança Hierarquia de classes e mecanismo de ligação Herança Uma classe pode herdar operações de uma superclasse e as suas operações podem ser herdadas por subclasses. O mecanismo de herança
Programação Estruturada e Orientada a Objetos
INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DO RIO GRANDE DO NORTE Programação Estruturada e Orientada a Objetos Docente: Éberton da Silva Marinho e-mail: [email protected] [email protected]
Computação 1 - Python Aula 4 - Teórica Variáveis e Atribuição, Strings. João Carlos, Carla Delgado, Ana Luisa Duboc 1/ 30
Computação 1 - Python Aula 4 - Teórica Variáveis e Atribuição, Strings 1/ 30 Variáveis e Atribuição Dados a hora, minuto e segundo em que um corredor de uma maratona partiu, e dados a hora, minuto e segundos
Aula de hoje. Tipos de Dados e Variáveis. Constantes literais. Dados. Variáveis. Tipagem dinâmica. SCC Introdução à Programação para Engenharias
SCC 12 - Introdução à Programação para Engenharias Tipos de Dados e Variáveis Professor: André C. P. L. F. de Carvalho, ICMC-USP Pos-doutorando: Isvani Frias-Blanco Monitor: Henrique Bonini de Britto Menezes
Pedro Vasconcelos DCC/FCUP. Programação Funcional 2 a Aula Tipos e classes
Programação Funcional 2 a Aula Tipos e classes Pedro Vasconcelos DCC/FCUP 2014 Tipos Um tipo é um nome para uma coleção de valores relacionados. Por exemplo, o tipo Bool True contém dois valores lógicos:
Programação Orientada a Objectos - P. Prata, P. Fazendeiro. Hierarquia de classes e mecanismo de ligação
4 Conceito de Herança Hierarquia de classes e mecanismo de ligação Herança Uma classe pode herdar operações de uma superclasse e as suas operações podem ser herdadas por subclasses. O mecanismo de herança
Linguagem de Programação III
Linguagem de Programação III Aula-5 Estruturas de Decisão e Controle. Arrays em Java Prof. Esbel Tomás Valero Orellana Até Aqui Modelos e POO Classes e sua implementação em Java Encapsulamento Tipos de
Aula 4 Estruturas de Controle
UNIP Universidade Paulista Ciência da Computação Aula 4 Estruturas de Controle Prof. Célio Ricardo Castelano 1 Tópicos Abordados 1) Instruções de seleção em Java: 2) Instruções de repetição em Java: 2
Programação com Objectos. Processamento de Dados I. 2. Classes, Atributos e Métodos
Programação com Objectos Processamento de Dados I 2. Classes, Atributos e Métodos 1 Classes, Atributos e Métodos Modificadores de acesso (visibilidade) Sobrecarga de métodos (method overloading) Variáveis
MCTA028 Programação Estruturada Aula 01: - Introdução à linguagem C - Teste de avaliação
MCTA028 Programação Estruturada Aula 01: - Introdução à linguagem C - Teste de avaliação Prof. João Henrique Kleinschmidt Material elaborado pelo Prof. Jesús P. Mena-Chalco 3Q-2018 Linguagens de programação
