Introdução à Programação Aula 20 Definição de classes

Tamanho: px
Começar a partir da página:

Download "Introdução à Programação Aula 20 Definição de classes"

Transcrição

1 Introdução à Programação Aula 20 Definição de classes Pedro Vasconcelos DCC/FCUP 2014 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

2 Nesta aula 1 Definição de classes 2 Exemplo: contas bancárias Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

3 Programação com objetos Na aula passada: conceitos básicos de programação com objetos. Noção de objeto: identidade, estado e comportamento Noção de método, construtor e classe Exemplos de programação com objetos do módulo turtle Nesta aula: definição de novas classes. Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

4 Nesta aula 1 Definição de classes 2 Exemplo: contas bancárias Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

5 Classes Objetos dum mesmo tipo pertem à mesma classe: todos os objetos duma classe têm os mesmos métodos; cada objeto duma classe tem o seu estado e identidade privados. Exemplo: módulo turtle. os objetos tartaruga pertencem à classe Turtle; todos suportam os mesmo comandos; os valores de posição, orientação, etc. são específicos de cada objeto. Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

6 Definição de classes class nome:. definições de métodos. Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

7 Nesta aula 1 Definição de classes 2 Exemplo: contas bancárias Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

8 Contas bancárias Vamos definir uma classe para contas bancária: estado titular e valor depositado; métodos depositar, levantar e transferir valores. Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

9 Contas bancárias (cont.) Implementação inicial (sem funcionalidade). class Conta: "Classe para representar uma conta bancária." pass Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

10 Atributos Podemos definir estado associado ao objeto usando atributos. >>> conta = Conta() >>> conta.nome = "Pedro" >>> conta.balanço = 1000 O objeto tem agora dois atributos: uma cadeia e um inteiro. Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

11 Atributos (cont.) Podemos aceder aos atributos de um objeto com a notação objeto.atributo: modificar o seu valor; usar em expressões. >>> conta.nome Pedro >>> conta.balanço += 200 >>> conta.balanço 1200 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

12 Métodos class Conta: "Classe para representar uma conta bancária." def depositar(self, valor): self.balanço += valor def levantar(self, valor): self.balanço -= valor O primeiro argumento (self) é o objeto sobre o qual opera O segundo argumento (valor) é o valor a depositar ou levantar Ambos os métodos modificam o balanço da conta Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

13 Exemplo de uso >>> conta = Conta() >>> conta.balanço = 1000 >>> conta.depositar(200) >>> conta.balanço 1200 >>> conta.levantar(50) >>> conta.balanço 1150 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

14 Inicialização Os métodos falham se o atributo balanço não existir: >>> conta = Conta() >>> conta.depositar(200) AttributeError: Conta object has no attribute balanço Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

15 Inicialização (cont.) Podemos garantir que o atributo existe sempre definindo um método inicializador. class Conta:... def init (self): self.balanço = 0... # balanço inicial >>> conta = Conta() >>> conta.depositar(200) >>> conta.balanço 200 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

16 Inicialização (cont.) Podemos usar o inicializador para definir outros atributos. class Conta:... def init (self, nome): self.balanço = 0 # balanço inicial self.nome = nome # titular da conta... >>> conta = Conta("Pedro") >>> conta.depositar(200) >>> conta.nome Pedro >>> conta.balanço 200 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

17 Conversão para texto Por omissão não é muito informativa: >>> conta = Conta("Pedro") >>> print(conta) < main.conta object at 0x7fd15f7ffb10> >>> str(conta) < main.conta object at 0x7fd15f7ffb10> Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

18 Conversão para texto (cont.) Podemos definir o método str para converter o objeto para texto; deve retornar uma cadeia. class Conta:... def str (self): return "%s : %d EUR" % (self.nome,self.balanço) >>> conta = Conta("Pedro") >>> conta.depositar(200) >>> print(conta) Pedro : 200 EUR >>> str(conta) Pedro : 200 EUR Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

19 Transferências Podemos tranferir valores de uma conta para outra. >>> c1 = Conta("Pedro") >>> c1.depositar(1000) >>> c2 = Conta("Beatriz") >>> c1.levantar(300) >>> c2.depositar(300) >>> print(c1) Pedro : 700 EUR >>> print(c2) Beatriz : 300 EUR Vamos definir um método para automatizar este processo. Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

20 Transferências (cont.) class Conta:... def transferir(self, valor, dest): # transferir da conta self para dest self.levantar(valor) dest.depositar(valor) >>> c1 = Conta("Pedro") >>> c1.depositar(1000) >>> c2 = Conta("Beatriz") >>> c1.transferir(300, c2) >>> print(c1) Pedro : 700 EUR >>> print(c2) Beatriz : 300 EUR Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

21 Encapsulamento Optamos por usar métodos levantar() e depositar() para fazer a transferência Podiamos ter modificado os atributos diretamente: def transferir(self, valor, dest): self.balanço -= valor dest.balanço += valor A primeira opção garante encapsulamento: o estado interno de cada objeto só é acedido pelos seus métodos Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

22 Encapsulamento (cont.) Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

23 Encapsulamento (cont.) Em Python não podemos proibir o acesso aos atributos de objetos Contudo: é boa prática limitar o acesso aos atributos aos métodos do objeto Podemos definir métodos só para consultar o valor de atributos. class Conta:... def saldo(self): # retornar o balanço atual return self.balanço Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 20 Definição de classes / 23

MAB224 Programação de Computadores II. Prof. Franklin Marquezino Universidade Federal do Rio de Janeiro

MAB224 Programação de Computadores II. Prof. Franklin Marquezino Universidade Federal do Rio de Janeiro MAB224 Programação de Computadores II Prof. Franklin Marquezino Universidade Federal do Rio de Janeiro Parte IV Conceitos de Orientação a Objetos em Python Atenção: Slides em constante atualização. Consultem

Leia mais

Orientação a Objetos com Java

Orientação a Objetos com Java Orientação a Objetos com Java Julio Cesar Nardi julionardi@yahoo.com.br 2011/2 Apresentação 3: Orientação Objetos: Conceitos Básicos Objetivos: Compreender os Conceitos Básicos da Orientação a Objetos;

Leia mais

Python Intermediário. terça-feira, 4 de agosto de 15

Python Intermediário. terça-feira, 4 de agosto de 15 Python Intermediário I FUNÇÕES Módulo Python (Intermediário) Função Uma função é uma sequência de comandos que desempenham algum tipo de tarefa no seu programa Evita duplicação de código Facilita alterações:

Leia mais

Luciano Ramalho luciano@ramalho.org. setembro/2012. Objetos Pythonicos. Orientação a objetos e padrões de projeto em Python

Luciano Ramalho luciano@ramalho.org. setembro/2012. Objetos Pythonicos. Orientação a objetos e padrões de projeto em Python Luciano Ramalho luciano@ramalho.org 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

Leia mais

Introdução à Programação Aula 15 Definições recursivas

Introdução à Programação Aula 15 Definições recursivas Introdução à Programação Aula 15 Definições recursivas Pedro Vasconcelos DCC/FCUP 2014 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 15 Definições recursivas 2014 1 / 27 Nesta aula 1 Definições

Leia mais

Introdução à Programação Aula 19 Programação com objetos

Introdução à Programação Aula 19 Programação com objetos Introdução à Programação Aula 19 Programação com objetos Pedro Vasconcelos DCC/FCUP 2015 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 19 Programação com objetos 2015 1 / 20 Nesta aula 1 Programação

Leia mais

Introdução à Programação Aula 11 Mais sobre ciclos e iteração

Introdução à Programação Aula 11 Mais sobre ciclos e iteração Introdução à Programação Aula 11 Mais sobre ciclos e iteração Pedro Vasconcelos DCC/FCUP 2014 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 11 Mais sobre ciclos e iteração 2014 1 / 26 Nesta

Leia mais

Python Orientação a Objetos Parte 1. Introdução à Programação SI1

Python Orientação a Objetos Parte 1. Introdução à Programação SI1 Python Orientação a Objetos Parte 1 Introdução à Programação SI1 Conteúdo Orientação a objetos Objeto Classe Herança Encapsulamento Polimorfismo 2 Motivação Realidade Atual Sistemas de alta complexidade

Leia mais

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. 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

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 6: Herança e Polimorfismo LEEC@IST Java 1/52 Herança revisão A herança é um mecanismo em que a subclasse constitui uma especialização da superclasse. A superclasse pode

Leia mais

Python Orientação a Objetos Parte 1. Introdução à Programação SI1

Python Orientação a Objetos Parte 1. Introdução à Programação SI1 Python Orientação a Objetos Parte 1 Introdução à Programação SI1 Conteúdo Orientação a objetos Objeto Classe Herança Encapsulamento Polimorfismo 2 Motivação Realidade Atual Sistemas de alta complexidade

Leia mais

Luciano Ramalho luciano@ramalho.org. setembro/2012. Objetos Pythonicos. Orientação a objetos e padrões de projeto em Python

Luciano Ramalho luciano@ramalho.org. setembro/2012. Objetos Pythonicos. Orientação a objetos e padrões de projeto em Python Luciano Ramalho luciano@ramalho.org 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

Leia mais

Conceito de classe em C++

Conceito de classe em C++ Introdução à Programação com Classes em C++ Ana Paula Rocha, Luís Paulo Reis, João Pascoal Faria FEUP - MIEEC Programação 2-2008/2009 Conceito de classe em C++ Classe em sentido lato: tipo de dados definido

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 2: Classes e objectos LEEC@IST Java 1/24 Classes (1) Sintaxe Qualif* class Ident [ extends IdentC] [ implements IdentI [,IdentI]* ] { [ Atributos Métodos ]* Qualif:

Leia mais

Prof. Jhonatan Fernando

Prof. Jhonatan Fernando Prof. Jhonatan Fernando Métodos Programação OO Instâncias de variáveis (objetos) Mensagens Classes Herança Polimorfismo Encapsulamento Abstração Programação Estruturada Procedimentos e funções Variáveis

Leia mais

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO)

Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Análise e Desenvolvimento de Sistemas ADS Programação Orientada a Obejeto POO 3º Semestre AULA 03 - INTRODUÇÃO À PROGRAMAÇÃO ORIENTADA A OBJETO (POO) Parte: 1 Prof. Cristóvão Cunha Objetivos de aprendizagem

Leia mais

5. Generics, Iterators e Comparable em Java. Tipos de Dados Abstractos Generics em Java

5. Generics, Iterators e Comparable em Java. Tipos de Dados Abstractos Generics em Java 5. Generics, Iterators e Comparable em Java Fernando Silva DCC-FCUP Estruturas de Dados Fernando Silva (DCC-FCUP) 5. Generics, Iterators e Comparable em Java Estruturas de Dados 1 / 12 Tipos de Dados Abstractos

Leia mais

Roteiro do Programa e Entrada/Saída

Roteiro do Programa e Entrada/Saída Roteiro do Programa e Entrada/Saída c Professores de ALPRO I Faculdade de Informática PUCRS 03/2012 ALPRO I (FACIN) Roteiro do Programa e E/S 03/2012 1 / 32 Sumário 1 Relembrando 2 Programa Definição de

Leia mais

Programação Orientada a Objeto em Python

Programação Orientada a Objeto em Python Programação Orientada a Objeto em Python Seminário de LP III Por: ¹Adriana Nery Ramos, ¹Daniel Andersen Cerqueira Lima,¹Fabilone Santos da Silva, ¹Janaina C.C. G. Reis, ¹Jonisson S. Santos, ¹Roberta Idelfonso

Leia mais

Danilo Borges da Silva daniloborges_@hotmail.com

Danilo Borges da Silva daniloborges_@hotmail.com Danilo Borges da Silva daniloborges_@hotmail.com Simples o suficiente para um curso introdutório Muitos recursos Orientação a Objetos Escalável (módulos, classes, controle de exceções) Biblioteca embutida

Leia mais

Introdução à Programação Aula 16 Mais exemplos de recursão

Introdução à Programação Aula 16 Mais exemplos de recursão Introdução à Programação Aula 16 Mais exemplos de recursão Pedro Vasconcelos DCC/FCUP 2014 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 16 Mais exemplos de recursão 2014 1 / 22 Nesta aula

Leia mais

Universidade Federal do Pará Centro de Tecnologia da Informação e Comunicação Grupo de Trabalho SET. Tutorial PyQT4

Universidade Federal do Pará Centro de Tecnologia da Informação e Comunicação Grupo de Trabalho SET. Tutorial PyQT4 Universidade Federal do Pará Centro de Tecnologia da Informação e Comunicação Grupo de Trabalho SET Tutorial PyQT4 16 de Agosto de 2011 1 Sumário 1 Introdução 3 2 Criando a interface da aplicação 3 2.1

Leia mais

Pedro Vasconcelos DCC/FCUP. Programação Funcional 14 a Aula Tipos abstratos de dados

Pedro Vasconcelos DCC/FCUP. Programação Funcional 14 a Aula Tipos abstratos de dados Programação Funcional 14 a Aula Tipos abstratos de dados Pedro Vasconcelos DCC/FCUP 2012 Tipos concretos de dados Até agora definimos um novo tipo de dados listamos os seus construtores. data Bool = False

Leia mais

Introdução à Programação Aula 14 Dicionários

Introdução à Programação Aula 14 Dicionários Introdução à Programação Aula 14 Dicionários Pedro Vasconcelos DCC/FCUP 2015 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 14 Dicionários 2015 1 / 25 Nesta aula 1 Dicionários 2 Contar ocorrências

Leia mais

ProgramaTchê programatche.net Programação OO com PHP

ProgramaTchê programatche.net Programação OO com PHP Roteiro 2 Objetivos: * Apresentar a sintaxe básica para utilização de Orientação a Objetos em PHP. Ferramentas necessárias Navegador, NetBeans, Servidor Apache. 1 Orientação a Objetos em PHP PHP é uma

Leia mais

Orientação a Objetos

Orientação a Objetos Orientação a Objetos 1. Sobrecarga (Overloading) Os clientes dos bancos costumam consultar periodicamente informações relativas às suas contas. Geralmente, essas informações são obtidas através de extratos.

Leia mais

Orientação a Objetos

Orientação a Objetos 1. Domínio e Aplicação Orientação a Objetos Um domínio é composto pelas entidades, informações e processos relacionados a um determinado contexto. Uma aplicação pode ser desenvolvida para automatizar ou

Leia mais

Programação por Objectos. Java

Programação por Objectos. Java Programação por Objectos Java Parte 3: Métodos LEEC@IST Java 1/45 Métodos (1) Sintaxe Qualif Tipo Ident ( [ TipoP IdentP [, TipoP IdentP]* ] ) { [ Variável_local Instrução ]* Qualif: qualificador (visibilidade,

Leia mais

Java Threads. Introdução

Java Threads. Introdução Java Threads mleal@inf.puc-rio.br 1 Introdução O único mecanismo de concorrência suportado explicitamente pela linguagem Java é multi-threading. threading. Os mecanismos de gerenciamento e sicronização

Leia mais

Gustavo Callou gcallou@gmail.com

Gustavo Callou gcallou@gmail.com Gustavo Callou gcallou@gmail.com 1 Conceitos de Orientação a Objetos Objeto Classe Herança Composição Polimorfismo 2 Um paradigma é uma forma de abordar um problema. O paradigma da orientação a objetos

Leia mais

PROPOSTA COMERCIAL PARA TREINAMENTOS DE TI

PROPOSTA COMERCIAL PARA TREINAMENTOS DE TI PROPOSTA COMERCIAL PARA TREINAMENTOS DE TI Curso: Formação para certificação MCSA em Windows Server 2012 Prepara para as provas: 70-410, 70-411 e 70-412 Em parceria com Pág. 1 Objetivo Adquirindo a formação

Leia mais

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE ALAGOAS CURSO TECNICO EM INFORMATICA DISCIPLINA:

INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE ALAGOAS CURSO TECNICO EM INFORMATICA DISCIPLINA: INSTITUTO FEDERAL DE EDUCAÇÃO, CIÊNCIA E TECNOLOGIA DE ALAGOAS CURSO TECNICO EM INFORMATICA DISCIPLINA: PROGRAMAÇÃO ORIENTADA A OBJETOS PROFESSOR: REINALDO GOMES ASSUNTO: REVISÃO DA INTRODUÇÃO A ORIENTAÇÃO

Leia mais

Laboratório I Aula 4

Laboratório I Aula 4 Laboratório I Aula 4 Prof. Msc. Anderson da Cruz 1. Faça o diagrama de classe UML e programe a classe Data com três atributos inteiros: dia, mês e ano. Faça dois construtores: 1. Um construtor com três

Leia mais

QUITETURA AVANÇADA DE SISTEMAS

QUITETURA AVANÇADA DE SISTEMAS QUITETURA AVANÇADA DE SISTEMAS ICARDO MENDÃO SILVA RMSILVA AT UAL DOT PT MARÇO 2015 AAS OUTLINE INTRODUÇÃO COMENTÁRIOS VARIÁVEIS OPERADORES IF STATEMENT FUNÇÕES CICLO FOR CICLO WHILE STRINGS LISTAS TUPLAS

Leia mais

Introdução à Linguagem

Introdução à Linguagem Introdução à Linguagem Curso de Nivelamento do PPGMNE Janeiro / 2011 Juliano J. Scremin jjscremin@jjscremin.t5.com.br Um pouco de história Um pouco de história: Nascimento do Python Um pouco de história:

Leia mais

PROGRAMAÇÃO ORIENTADA A OBJETO EM PHP

PROGRAMAÇÃO ORIENTADA A OBJETO EM PHP PROGRAMAÇÃO ORIENTADA A OBJETO EM PHP O PHP através da versão 5, veio desenvolvido com suporte a programação orientada a objetos. O que significa isso? Que a partir da versão 5 é possível criar bibliotecas

Leia mais

Curso de PHP. FATEC - Jundiaí. A programação orientada a objetos (object-oriented oriented programming

Curso de PHP. FATEC - Jundiaí. A programação orientada a objetos (object-oriented oriented programming Curso de PHP FATEC - Jundiaí A programação orientada a objetos (object-oriented oriented programming OOP) é um conjunto de técnicas t para organizar o código c em torno de entidades ou objetos representados

Leia mais

Divisão e Conquista. Túlio Toffolo www.toffolo.com.br Marco Antônio Carvalho marco.opt@gmail.com. BCC402 Aula 08 Algoritmos e Programação Avançada

Divisão e Conquista. Túlio Toffolo www.toffolo.com.br Marco Antônio Carvalho marco.opt@gmail.com. BCC402 Aula 08 Algoritmos e Programação Avançada Divisão e Conquista Túlio Toffolo www.toffolo.com.br Marco Antônio Carvalho marco.opt@gmail.com BCC402 Aula 08 Algoritmos e Programação Avançada Motivação É preciso revolver um problema com uma entrada

Leia mais

Introdução à Programação Aula 18 Método de eliminação de Gauss

Introdução à Programação Aula 18 Método de eliminação de Gauss Introdução à Programação Aula 18 Método de eliminação de Gauss Pedro Vasconcelos DCC/FCUP 2015 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 18 Método de eliminação de Gauss 2015 1 / 23 Nesta

Leia mais

Pedro Vasconcelos DCC/FCUP. Programação Funcional 15 a Aula Árvores de pesquisa

Pedro Vasconcelos DCC/FCUP. Programação Funcional 15 a Aula Árvores de pesquisa Programação Funcional 15 a Aula Árvores de pesquisa Pedro Vasconcelos DCC/FCUP 2014 Árvores binárias Um árvore binária é um grafo dirigido, conexo e acíclico em que cada vértice é de um de dois tipos:

Leia mais

Desenvolvimento Web TCC-00.226 Turma A-1 / 2013.2

Desenvolvimento Web TCC-00.226 Turma A-1 / 2013.2 1 Desenvolvimento Web TCC-00.226 Turma A-1 / 2013.2 Professor Leandro A. F. Fernandes Instituto de Computação Universidade Federal Fluminense Lista de Exercícios 02 Orientação a Objetos 1) Identifique

Leia mais

Lab de Programação de sistemas I

Lab de Programação de sistemas I Lab de Programação de sistemas I Apresentação Prof Daves Martins Msc Computação de Alto Desempenho Email: daves.martins@ifsudestemg.edu.br Agenda Orientação a Objetos Conceitos e Práticas Programação OO

Leia mais

Gestão de Redes e Sistemas Distribuídos

Gestão de Redes e Sistemas Distribuídos Gestão de Redes e Sistemas Distribuídos Setembro 2006 Conceitos fundamentais Modelos de estruturação da Gestão (parte II) Arquitectura genérica dum sistema de gestão Sumário???? Módulo I: Conceitos fundamentais

Leia mais

Aula 1 Tipo Abstrato de Dados

Aula 1 Tipo Abstrato de Dados Aula 1 Tipo Abstrato de Dados Luiz Chaimowicz e Raquel O. Prates Livro Projeto de Algoritmos Capítulo 1 2009-1 O que é um algoritmo? O que é um programa? Algoritmos Sequência de ações executáveis para

Leia mais

Introdução à Programação Aula 2 Introdução à linguagem Python

Introdução à Programação Aula 2 Introdução à linguagem Python Introdução à Programação Aula 2 Introdução à linguagem Python Pedro Vasconcelos DCC/FCUP 2015 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 2 Introdução à linguagem Python 2015 1 / 24 Nesta

Leia mais

Bases de Dados 1. Proposta de resolução de 3 exercícios da 1ª aula prática

Bases de Dados 1. Proposta de resolução de 3 exercícios da 1ª aula prática Bases de Dados 1 Proposta de resolução de 3 exercícios da 1ª aula prática Nas páginas seguintes encontram-se algumas propostas de resoluções das 3 primeiras situações da ficha nº1. Referente à primeira

Leia mais

Processamento da Informação Teoria. Algoritmos e Tipos de dados

Processamento da Informação Teoria. Algoritmos e Tipos de dados Processamento da Informação Teoria Algoritmos e Tipos de dados Semana 01 Prof. Jesús P. Mena-Chalco 24/04/2013 (*) Slides adaptados das aulas do Prof. Harlen Costa Batagelo Algumas definições de algoritmo

Leia mais

Java 2 Standard Edition Como criar classes e objetos

Java 2 Standard Edition Como criar classes e objetos Java 2 Standard Edition Como criar classes e objetos Helder da Rocha www.argonavis.com.br 1 Assuntos abordados Este módulo explora detalhes da construção de classes e objetos Construtores Implicações da

Leia mais

Lição 9 Trabalhando com bibliotecas de classes

Lição 9 Trabalhando com bibliotecas de classes Lição 9 Trabalhando com bibliotecas de classes Introdução à Programação I 1 Objetivos Ao final da lição, o estudante deverá estar apto a: Explicar o que é programação orientada a objetos e alguns de seus

Leia mais

Computação 1 - Python Aula 8 - Teórica: Estrutura de Repetição : for 1/ 10

Computação 1 - Python Aula 8 - Teórica: Estrutura de Repetição : for 1/ 10 Computação 1 - Python Aula 8 - Teórica: Estrutura de Repetição : for 1/ 10 Estrutura de Repetição while Estrutura que permite a repetição de um conjunto de comandos. Até o momento vimos o while: while

Leia mais

Algoritmos e Estrutura de Dados. Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira

Algoritmos e Estrutura de Dados. Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira Algoritmos e Estrutura de Dados Aula 1 Introdução a Linguagem Python (Parte I) Prof. Tiago A. E. Ferreira Linguagem a ser Utilizada? Nossa disciplina é de Algoritmos e Estrutura de Dados, e não de linguagem

Leia mais

CONVENÇÃO DE CÓDIGO JAVA

CONVENÇÃO DE CÓDIGO JAVA CONVENÇÃO DE CÓDIGO JAVA Eligiane Ceron - Abril de 2012 Versão 1.0 Conteúdo Considerações iniciais... 2 Introdução... 2 Extensão de arquivos... 2 Arquivos de código Java... 2 Comentários iniciais... 2

Leia mais

Folha Prática 2. Lab. 2

Folha Prática 2. Lab. 2 Programação Folha Prática 2 Lab. 2 Departamento de Informática Universidade da Beira Interior Portugal 2010 Copyright 2010 All rights reserved. 1. Revisão dos conceitos fundamentais da programação de computadores

Leia mais

3 Classes e instanciação de objectos (em Java)

3 Classes e instanciação de objectos (em Java) 3 Classes e instanciação de objectos (em Java) Suponhamos que queremos criar uma classe que especifique a estrutura e o comportamento de objectos do tipo Contador. As instâncias da classe Contador devem

Leia mais

Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans.

Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans. 1 - Criando uma classe em Java Para desenvolver a atividade a atividade desta aula utilizaremos o ambiente de desenvolvimento integrado NetBeans. Antes de criarmos a(s) classe(s) é necessário criar o projeto

Leia mais

AULA 4 VISÃO BÁSICA DE CLASSES EM PHP

AULA 4 VISÃO BÁSICA DE CLASSES EM PHP AULA 4 VISÃO BÁSICA DE CLASSES EM PHP Antes de mais nada, vamos conhecer alguns conceitos, que serão importantes para o entendimento mais efetivos dos assuntos que trataremos durante a leitura desta apostila.

Leia mais

Programação Orientada a Objetos. Encapsulamento

Programação Orientada a Objetos. Encapsulamento Programação Orientada a Objetos Encapsulamento de Dados Ocultação de dados Garante a transparência de utilização dos componentes do software, facilitando: Entendimento Reuso Manutenção Minimiza as interdependências

Leia mais

Desenvolvendo plugins WordPress usando Orientação a Objetos

Desenvolvendo plugins WordPress usando Orientação a Objetos Desenvolvendo plugins WordPress usando Orientação a Objetos por Daniel Antunes danieldeveloper.com @danieldeveloper Introdução Desenvolver plugins WordPress é mais que programar: é obter grandes resultados

Leia mais

Introdução à Programação com Classes em C++

Introdução à Programação com Classes em C++ 1 FEUP/LEEC/AED/2001-2002 Introdução à Programação com Classes em C++ João Pascoal Faria http://www.fe.up.pt/~jpf FEUP/LEEC/AED/ 2000-2001 Conceito de classe em C++ 2 Classe em sentido lato: tipo de dados

Leia mais

Programas simples em C

Programas simples em C Programas simples em C Problema 1. Escreve um programa em C que dados dois inteiros indique se são iguais ou qual o maior. Utilizar a construção em 5 etapas... quais? 1. Perceber o problema 2. Ideia da

Leia mais

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS

EXERCÍCIOS SOBRE ORIENTAÇÃO A OBJETOS Campus Cachoeiro de Itapemirim Curso Técnico em Informática Disciplina: Análise e Projeto de Sistemas Professor: Rafael Vargas Mesquita Este exercício deve ser manuscrito e entregue na próxima aula; Valor

Leia mais

EMENTA DO CURSO. Tópicos:

EMENTA DO CURSO. Tópicos: EMENTA DO CURSO O Curso Preparatório para a Certificação Oracle Certified Professional, Java SE 6 Programmer (Java Básico) será dividido em 2 módulos e deverá ter os seguintes objetivos e conter os seguintes

Leia mais

Visual Basic.NET Programação Orientada a Objetos Lista de Exercícios

Visual Basic.NET Programação Orientada a Objetos Lista de Exercícios Ministério da Educação UNIVERSIDADE TECNOLÓGICA FEDERAL DO PARANÁ Campus Pato Branco Visual Basic.NET Programação Orientada a Objetos Lista de Exercícios A lista de questões a seguir aborda a criação de

Leia mais

Minicurso de Python Aula 1. Raphael Lupchinski Marcelo Millani

Minicurso de Python Aula 1. Raphael Lupchinski Marcelo Millani Minicurso de Python Aula 1 Raphael Lupchinski Marcelo Millani Introdução Python é uma linguagem de programação poderosa e fácil de aprender Possui estruturas de dados eficientes e de alto nível, além de

Leia mais

Pagamento de Faturas

Pagamento de Faturas Pagamento de Faturas Aqui apresentamos o processo de pagamento de faturas da GFarias via boleto bancário e via cartão de crédito. É importante destacar que em ambos os casos a GFarias não tem contato algum

Leia mais

Programação Orientada a Objetos Classes Abstratas Técnico em Informática. Prof. Marcos André Pisching, M.Sc.

Programação Orientada a Objetos Classes Abstratas Técnico em Informática. Prof. Marcos André Pisching, M.Sc. Classes Abstratas Técnico em Informática, M.Sc. Classes Abstratas 2 Classes Abstratas Abstração Devemos considerar as qualidades e comportamentos independentes dos objetos a que pertencem, isolamos seus

Leia mais

O que é um algoritmo? O que é um programa? Algoritmos. Programas. Aula 1 Tipo Abstrato de Dados

O que é um algoritmo? O que é um programa? Algoritmos. Programas. Aula 1 Tipo Abstrato de Dados Aula 1 Tipo Abstrato de Dados O que é um algoritmo? Luiz Chaimowicz e Raquel O. Prates Livro Projeto de Algoritmos Capítulo 1 O que é um programa? 2009-1 Algoritmos Sequência de ações executáveis para

Leia mais

Flying Circus Documentation

Flying Circus Documentation Flying Circus Documentation Release 0.1.0 Carlo E. T. Oliveira June 27, 2016 Contents 1 Sumário 3 1.1 Como brincar com os desafios...................................... 3 1.2 Criando uma Câmara com Constantes..................................

Leia mais

Encapsulamento de Dados

Encapsulamento de Dados Encapsulamento de Dados Universidade Católica de Pernambuco Ciência da Computação Prof. Márcio Bueno poonoite@marciobueno.com Fonte: Material da Profª Karina Oliveira Modificadores de Visibilidade Especificam

Leia mais

Copyright 1999-2001 Restinfor, Lda

Copyright 1999-2001 Restinfor, Lda WinREST FrontOffice A Restauração do Séc. XXI Manual de Transição para uro Copyright 1999-2001 Restinfor, Lda Índice Pag. Transição para o Euro... 3 1. Módulo de conversão de valores... 3 2. Interface

Leia mais

Linguagem de Programação III

Linguagem de Programação III Linguagem de Programação III Aula-3 Criando Classes em Java Prof. Esbel Tomás Valero Orellana Da Aula Anterior Classes em Java, sintaxe básica Tipos básicos de dados em Java, como escolher o tipo apropriado

Leia mais

Lista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição

Lista de Contas: Assinatura. Lista de Contas. Listas de Contas: Descrição. Listas de Contas: Descrição. Listas de Contas: Descrição Lista de Contas Lista de Contas: Assinatura null Quais são os métodos necessários? class ListaDeContas { void inserir (Conta c) { void retirar (Conta c) { Conta procurar (String num) { Listas de Contas:

Leia mais

Luciano Ramalho luciano@ramalho.org. setembro/2012. Objetos Pythonicos. Orientação a objetos e padrões de projeto em Python

Luciano Ramalho luciano@ramalho.org. setembro/2012. Objetos Pythonicos. Orientação a objetos e padrões de projeto em Python Luciano Ramalho luciano@ramalho.org setembro/2012 Objetos Pythonicos Orientação a objetos e padrões de projeto em Python Para me encontrar Juntem-se a Oficinas Turing no Google Groups solicite um convite

Leia mais

Programação com Acesso a BD. Programação com OO Acesso em Java

Programação com Acesso a BD. Programação com OO Acesso em Java Programação com OO Acesso em Java a BD Curso: Técnico em Informática Campus: Ipanguaçu José Maria Monteiro Pontifícia Universidade Católica do Rio de Janeiro PUC-Rio Departamento Clayton Maciel de Informática

Leia mais

Introdução à Programação Aula 4 Definição de funções

Introdução à Programação Aula 4 Definição de funções Introdução à Programação Aula 4 Definição de funções Pedro Vasconcelos DCC/FCUP 2015 Pedro Vasconcelos (DCC/FCUP) Introdução à Programação Aula 4 Definição de funções 2015 1 / 28 Nesta aula... 1 Definição

Leia mais

Python: Funções. Claudio Esperança

Python: Funções. Claudio Esperança Python: Funções Claudio Esperança Abstração É uma técnica de programação que nos permite pensar num problema em diversos níveis A idéia é que quando estamos pensando num problema macroscopicamente, não

Leia mais

Curso Adonai QUESTÕES Disciplina Linguagem JAVA

Curso Adonai QUESTÕES Disciplina Linguagem JAVA 1) Qual será o valor da string c, caso o programa rode com a seguinte linha de comando? > java Teste um dois tres public class Teste { public static void main(string[] args) { String a = args[0]; String

Leia mais

Capítulo 3. Programação por objectos em Java

Capítulo 3. Programação por objectos em Java Capítulo 3. Programação por objectos em Java 1/46 Índice Indice 3.1 - Qualificadores de visualização 3.2 - Classe 3.3 - Objecto 3.4 - Métodos 3.5 - Herança 3.6 - Reescrita de métodos 3.7 - Classes abstractas

Leia mais

Introdução à orientação a objetos. João Tito Almeida Vianna 25/05/2013

Introdução à orientação a objetos. João Tito Almeida Vianna 25/05/2013 Introdução à orientação a objetos João Tito Almeida Vianna 25/05/2013 Roteiro Aula 2 Motivação Revisão dos conceitos da aula 1 Preparação para os exercícios Exercícios propostos 2 Motivação A orientação

Leia mais

PROGRAMAÇÃO SERVIDOR PADRÕES DAO, VIEW CONTROL E FRONT CONTROL EM SISTEMAS WEB. Prof. Dr. Daniel Caetano 2012-1

PROGRAMAÇÃO SERVIDOR PADRÕES DAO, VIEW CONTROL E FRONT CONTROL EM SISTEMAS WEB. Prof. Dr. Daniel Caetano 2012-1 PROGRAMAÇÃO SERVIDOR EM SISTEMAS WEB PADRÕES DAO, VIEW CONTROL E FRONT CONTROL Prof. Dr. Daniel Caetano 2012-1 Objetivos Capacitar para a implementação seguindo o padrão DAO Compreender a implementação

Leia mais

Programação Orientada a Objeto

Programação Orientada a Objeto Programação Orientada a Objeto Classes, Atributos, Métodos e Objetos Programação de Computadores II Professor: Edwar Saliba Júnior 1) Java é uma linguagem orientada a objetos. Para que possamos fazer uso

Leia mais

Módulo 07 Características Avançadas de Classes

Módulo 07 Características Avançadas de Classes Módulo 07 Características Avançadas de Classes Última Atualização: 15/06/2010 1 Objetivos Descrever variáveis, métodos e iniciadores static Descrever a semântica do modificador final em classes, métodos

Leia mais

Ficha de Informação Normalizada para Depósitos Depósitos à Ordem

Ficha de Informação Normalizada para Depósitos Depósitos à Ordem Designação Condições de Acesso Modalidade Meios de Movimentação Conta Completa Clientes Particulares, maiores de 18 anos, que sejam trabalhadores por conta de outrem e que aceitem domiciliar ou transferir,

Leia mais

Programação Orientada a Objetos. Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br

Programação Orientada a Objetos. Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Programação Orientada a Objetos Prof. Diemesleno Souza Carvalho diemesleno@iftm.edu.br http://www.diemesleno.com.br Programação Orientada a Objetos Na aula passada, vimos: Encapsulamento Programação Orientada

Leia mais

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza. josineys@inf.ufpr.br

Fundamentos de Programação. Turma CI-240-EST. Josiney de Souza. josineys@inf.ufpr.br Fundamentos de Programação Turma CI-240-EST Josiney de Souza josineys@inf.ufpr.br Agenda do Dia Aula 2 (07/08/15) Introdução ao Python História Características Estrutura dos código-fonte Primeiros elementos

Leia mais

DEFINIÇÃO DE MÉTODOS

DEFINIÇÃO DE MÉTODOS Cursos: Análise, Ciência da Computação e Sistemas de Informação Programação I - Prof. Aníbal Notas de aula 2 DEFINIÇÃO DE MÉTODOS Todo o processamento que um programa Java faz está definido dentro dos

Leia mais

Composição de classes

Composição de classes Programação com Classes em C++ (cont.) FEUP - MIEEC Programação 2-2008/2009 Composição de classes Uma classe pode ter como membros objectos doutras classes Membros-objecto são inicializados antes dos objectos

Leia mais

Revisão OO Básico. Orientação a Objetos em Java

Revisão OO Básico. Orientação a Objetos em Java Revisão OO Básico Orientação a Objetos em Java Grupo de Linguagens de Programação Departamento de Informática PUC-Rio Nomenclatura A unidade básica de programação em linguagens orientadas a objetos é a

Leia mais

PROGRAMANDO EM C# ORIENTADO A OBJETOS

PROGRAMANDO EM C# ORIENTADO A OBJETOS PROGRAMANDO EM C# ORIENTADO A OBJETOS AGENDA MÓDULO 2 Domínio e Aplicação Objetos, Atributos e Métodos Classes em C# Criando Objetos em C# Referências em C# Manipulando Atributos Valores Padrão Exercícios

Leia mais

Departamento de Informática

Departamento de Informática Departamento de Informática Licenciatura em Engenharia Informática Sistemas Distribuídos época de recurso, 28 de Janeiro de 2009 1º Semestre, 2008/2009 NOTAS: Leia com atenção cada questão antes de responder.

Leia mais

Introdução. A verificação de tipos pode ser estática e dinâmica

Introdução. A verificação de tipos pode ser estática e dinâmica Análise Semântica Introdução Verifica se as construções sintaticamente corretas possuem significado lógico dentro da linguagem Verifica a consistência da declaração e uso dos identificadores Além disso,

Leia mais

Um objeto é uma instância de uma 'classe'. Você define uma classe utilizando o trecho de código abaixo;

Um objeto é uma instância de uma 'classe'. Você define uma classe utilizando o trecho de código abaixo; um objeto; é definido; Um objeto é uma instância de uma 'classe'. Você define uma classe utilizando o trecho de código abaixo; class ClasseBase{ é instanciado; $objetobase = new ClasseBase; Caso queira,

Leia mais

Linguagens de programação

Linguagens de programação Prof. André Backes Linguagens de programação Linguagem de Máquina Computador entende apenas pulsos elétricos Presença ou não de pulso 1 ou 0 Tudo no computador deve ser descrito em termos de 1 s ou 0 s

Leia mais

Manual do GesFiliais

Manual do GesFiliais Manual do GesFiliais Introdução... 3 Arquitectura e Interligação dos elementos do sistema... 4 Configuração do GesPOS Back-Office... 7 Utilização do GesFiliais... 12 Outros modos de utilização do GesFiliais...

Leia mais

Ficha de Informação Normalizada para Depósitos Depósitos à ordem

Ficha de Informação Normalizada para Depósitos Depósitos à ordem Designação Condições de Acesso Modalidade Meios de Movimentação Moeda Conta Super Jovem Clientes Particulares, com idade entre os 18 e os 30 anos (inclusive). Depósito à Ordem. Esta conta pode ser movimentada

Leia mais

Orientação a Objetos. Thiago Messias Evangelista UESC Universidade Estadual de Santa Cruz Version 2012-11-08. 1 LibreOffice Productivity Suite

Orientação a Objetos. Thiago Messias Evangelista UESC Universidade Estadual de Santa Cruz Version 2012-11-08. 1 LibreOffice Productivity Suite Orientação a Objetos Thiago Messias Evangelista UESC Universidade Estadual de Santa Cruz Version 2012-11-08 1 Abordagens História; ; Benefícios / Limitações; Referências; 2 História Tudo tem um começo...

Leia mais

INTERFACE GRÁFICA EM PYTHON

INTERFACE GRÁFICA EM PYTHON Computadores e Programação Engª Biomédica Departamento de Física Faculdade de Ciências e Tecnologia da Universidade de Coimbra Ano Lectivo 2003/2004 FICHA 11 INTERFACE GRÁFICA EM PYTHON 11. Objectivos

Leia mais