Orientação a Objetos Erick Luis Moraes de Sousa

Slides:



Advertisements
Apresentações semelhantes
Análise e Projeto Orientado a Objetos
Advertisements

ABSTRAÇÃO processo de representar um grupo de entidades através de seus atributos comuns feita a abstração, cada entidade particular (instância) do grupo.
Paulo Marques Hernâni Pedroso
PHPOO Erick Souza. Conceitos de Orientação a Objetos Objeto é um conceito ou item(concreto ou abstrato). Software orientado a objetos Uma classe é uma.
Prof. Thiago Pereira Rique
Perspectivas baseadas em procedimentos e orientadas por objectos Conceitos principais: Encapsulamento, Herança, Polimorfismo (Encapsulation, Hierarchy,
De 17 1 Linguagens de Programação Orientadas a Objetos Pós-Gradução(Lato-Sensu) em Sistemas de Banco de Dados - UFPa Marco Fagundes Aula.
Listas lineares Listas Lineares Fila Dupla Pilha Fila Saída restrita
Expressões, controle de fluxo, wrappers e strings Profa
Introdução ao paradigma de programação: Orientado a Objetos
Alexandre Parra Site: Linguagem Java Alexandre Parra Site:
Diagrama de Classes.
Linguagem PHP Prof.: Sergio Pacheco Prof.: Sergio Pacheco 1 1.
1 Professor Rogério B. de Andrade - Aula 001- Dez/2008 Técnicas e Linguagem de Programação.
Área de Desenvolvimento de Sistemas
A linguagem C#.
Herança e Polimorfismo
Classes e objetos P. O. O. Prof. Grace.
Curso de extensão em Desenvolvimento Web
INPUT Alexandre Tolstenko Nogueira
Programação Orientada a Objetos com Java
Aula prática 13 Orientação a Objetos – C++ Parte 1
C# Sharp Shooters.NET Universidade Federal de Pernambuco Centro de Informática Recife, 23/09/2002 Autor: Marden Menezes Costa Propriedades.
Linguagens de Programação
Conceitos básicos de orientação a objetos
Sobrecarga e Encapsulamento
GEJAVA IV SCJA – Certificação Sun java associado exame cx
Programação I Aula 2 (Métodos)
Métodos de Construção de Software: Orientação a Objetos
Linguagem de Programação JAVA
Paradigmas da Programação – Semestre 1 – Aula 2 Professores: Eduardo Mantovani Fábio de Paula.
Tipos Abstratos de Dados
Classes, Objetos, Atributos e Métodos JAVA
Erick Luis Moraes de Sousa
PHP Orientado a Objetos Análise e Desenvolvimento de Sistemas Prof
Orientação a Objetos Parte I
Programação Orientada à Objetos
Definição Classe Objeto Construtor de Classes Manipulando o objeto Namespace Utilização do namespace Herança Polimorfismo Encapsulamento Propriedades.
Curso de Aprendizado Industrial Desenvolvedor WEB Disciplina: Programação Orientada a Objetos I Professora: Cheli Mendes Costa Membro Static.
Desenvolvimento de Jogos e Entretenimento Digital Oficina temática: Algoritmos e Programação Orientação a Objetos: herança Professor: Sandro Rigo.
INTRODUÇÃO À ORIENTAÇÃO A OBJETOS EM JAVA
Aula prática 14 Orientação a Objetos – C++ Parte 2
Implementação Orientada a Objetos – Aula 03
Estruturas de Dados Aula 17: Estruturas Genéricas
Paradigmas da Programação – Semestre 2 – Aula 13 Professor: Eduardo Mantovani Prof. Fábio de Paula Santos
Programação Orientada à Objetos
Regras de escopo Escopo: trecho de codificação no qual o identificador possui significado Escopo de função: identificador válido dentro do trecho de uma.
Classes Abstratas P. O. O. Prof. Ângela e Grace.
Aula Prática 4 Monitoria IP/CC (~if669).
1 Marcio de Carvalho Victorino JAVA. 2 Declaração de Atributos [ ] [transient] [volatile] [static] [final] ; controle de acesso –public, package (default),
Paradigmas da Programação – Semestre 2 – Aula 1 Professores: Fábio de Paula Santos Eduardo Mantovani
Programação II Prof. Mateus Raeder Universidade do Vale do Rio dos Sinos - São Leopoldo -
Construtores e Destrutores
Copyright 1998, Departamento de Informática da UFPE. Todos os direitos reservados sob a legislação em vigor. Variáveis e métodos estáticos, Passagem de.
Paradigmas da Programação – Semestre 1 – Aula 8 Professor: Eduardo Mantovani )
Bruno Inojosa MCP .NET Framework
Modificadores Programação II.
Conceitos de OO em Java Parte I
Módulo II Capítulo 1: Orientação a Objetos
UCSal – Bacharelado em Informática Tópicos Especiais em Informática II Profa. Semíramis Assis
Programação Orientada a Objetos para Redes de Computadores Prof. Miguel Elias Mitre Campista POO para Redes de Computadores.
Implementação Orientada a Objetos – Aula 03 Atributos e Encapsulamento Prof. Danielle Martin/ Marcia Bissaco Universidade de Mogi das Cruzes
Tipo Abstrato de Dados (TAD) Estrutura de Dados Professor: Rodrigo Alves Sarmento Professor: André Cypriano.
1. 2 Programação Orientada a Objetos II Prof. Maurício Rodrigues de Morais
Alocação Dinâmica Dilvan Moreira. Objetivos  Entender o que são e como usar:  Gerenciamento de Memória  Alocação Dinâmica em C.
Herança em Java Curso: Informática Disciplina: Programação Orientada a Objetos Prof. Abrahão Lopes
1.
Laboratório de Computação Aula 06 e 07 – Implementação de classes Prof. Fábio Dias
Linguagem de Programação – Aula 04 Prof. Me. Ronnison Reges Vidal.
Transcrição da apresentação:

Orientação a Objetos Erick Luis Moraes de Sousa

REVISÃO

- Revisão Loops : – While; – Dowhile; – Foreach; Declaração de Tipos Básicos: – Vetor; – List; – Linked List; – Pilha; – Fila; – Struct; – Enum; – Dicionário. Incluir outras classes: – using nomeDaClasse;

OBJETIVOS

Objetivos Entender a “filosofia” da Orientação a Objetos; Conceitos básicos que envolvem a Orientação a Objetos. 6

TeoriaPrática

Teoria Orientação a Objetos IntroduçãoAplicaçõesEstruturasHerança Modificadores de Acesso

Introdução 9 Esse “novo” paradigma começou a surgir na década 60: – Necessidade de resolver problemas no desenvolvimento de softwares complexos; – Reduzir o custo de manutenção; Principal característica “filosófica” da Orientação a Objetos: – “Nova” forma de representação do mundo; Características atraentes para a programação: – Permite um maior reaproveitamento de código; – Linguagem mais alto-nível; Sketchpad: O primeiro editor gráfico orientado a objetos.

Aplicações 10 Programas de Edição de Imagem: – Photoshop, Corel Draw; Jogos: – Tibia, Fatal Racing, World of Warcraft; Programas de Edição de Som: – Fruityloops, Guitar Pro; Sistemas Operacionais: – Windows; Vários outros segmentos do mercado de software.

Teoria Orientação a Objetos EstruturasClasseObjetoMétodosOutrosHerança Modificadores de Acesso

Classe 12 Estrutura utilizada para abstrair objetos com características similares; Exemplo: Animais, carros, partículas, formas geométricas, objetos; A classe é meramente uma representação, não possui ‘vida’; Declaração de uma classe em C#: class suaClasse { //Lógica do programa aqui }

Objeto 13 É uma maneira de representar o mundo em uma forma computacional; Pode representar uma entidade concreta (arquivos,camelos) ou conceitos (estratégias,leis); Características desejáveis: Alta coesão; Baixa dependência; Criando um objeto em C#: List = new List (); //Cria um novo objeto que é uma lista de //inteiros

Teoria Orientação a Objetos EstruturasClasseObjetoMétodoConstrutorPropriedadeOutrosHerança Modificadores de Acesso

Métodos 15 Métodos são ações internas de uma classe pode realizar; Métodos de uma Lista Ligada: Ordenar, Inserir, Remover; Três tipos de métodos especiais: Construtores; Destrutores; Propriedades; Declaração de um método: ModAcesso TipoDoRetorno NomeDoMetodo ( Parâmetros ) { //Lógica do Método }

Construtor 16 Cria uma instância de uma classe e inicializa-a; Comparativo com C: Alocação dinâmica de memória usando o malloc; Por padrão, toda classe já possui um construtor que retorna um objeto vazio; Declaração de um construtor: ModAcesso NomeDaClasse ( Parâmetros ) { //Inicializar variáveis, instanciar objetos, dentre outras ações. }

Propriedades 17 Métodos específicos para a manipulação de variáveis; Garantem o acesso e a modificação seguros às variáveis de uma classe/objeto: Em C# há dois comandos específicos para isso: get e set; Declaração de uma propriedade: ModAcesso TipoDaVariável NomeDaPropriedade { get { return nomeDaVariável; } set { nomeDaVariável = value; } } NomeDaPropriedade = valor; //Atribui um determinado valor à variável; variável = NomeDaPropriedade;

Teoria Orientação a Objetos EstruturasClasseObjetoMétodoOutrosHerança Modificadores de Acesso

Outros 19 Namespace; Atributos; Delegates; Reflection; Constraints.

Teoria Orientação a Objetos EstruturasHerançaSobrecarga Modificadores de Acesso

Herança 21 Herança é a possibilidade de uma classe herdar características de uma superclasse; Objetivo: Re-aproveitamento de código; Classes mais específicas herdam de classes menos específicas: – Gatos herdam de Felinos, que herdam de Animais;

Herança 22 Herdando em C#: class nomeDaClasse: nomeDaSuperClasse { } Acessando membros de uma classe derivada(herdada): – Utilizada a palavra-chave ‘base’; – base.metodo(parametros);, base.variavel;

Teoria Orientação a Objetos EstruturasHerança Modificadores de Acesso PrincipaisOutros

Modificadores 24 Modificadores de Acesso: – Public: O membro declarado como public pode ser acessado de qualquer outra classe do jogo; – Private: Só pode ser acessada dentro do escopo no qual foi declarada; – Internal: Só pode ser acessada por membros do mesmo código; – Protected: Só pode ser acessada da classe em que foi declarada ou de classes que herdem da primeira.

Modificadores 25 – Static: Quando se declara algo como static, o mesmo é armazenado numa posição de memória, podendo-se utilizá-la e alterá-la sem ter de criar novas instâncias dela; Não existe construtor; Métodos e variáveis são acessados diretamente; – Sealed: Nenhuma classe pode herdar de outra classe que possua o modificador sealed.

Modificadores 26 – Override: Quando herdamos de uma superclasse e queremos re- implementar os métodos daquela, utilizamos o modificador override;

Outros 27 – Const; – Extern; – Event; – Abstract; – Partial; – Readonly; – Unsafe; – Virtual; – Volatile.

TeoriaPrática

Prática 29 Re-implementar o Pong em XNA utilizando orientação a Objetos; Implementar um Space Invaders em XNA; Implementar um sistema simples de compras e vendas de uma loja em um jogo de RPG em modo texto; Criar um sistema que armazena um herói/monstro/NPC de RPG em uma estrutura de dados.

Agradecimentos 30 public class palestra { public void fim() { Console.WriteLine ( “Obrigado!\n” ); Console.WriteLine ( “Obrigado!\n” );}}