Carregar apresentação
A apresentação está carregando. Por favor, espere
PublicouTomás Rodriguez Alterado mais de 9 anos atrás
2
Orientação a Objetos Erick Luis Moraes de Sousa puyolzits@gmail.com http://forum.gamux.com.br
3
REVISÃO
4
- 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;
5
OBJETIVOS
6
Objetivos Entender a “filosofia” da Orientação a Objetos; Conceitos básicos que envolvem a Orientação a Objetos. 6
7
TeoriaPrática
8
Teoria Orientação a Objetos IntroduçãoAplicaçõesEstruturasHerança Modificadores de Acesso
9
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.
10
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.
11
Teoria Orientação a Objetos EstruturasClasseObjetoMétodosOutrosHerança Modificadores de Acesso
12
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 }
13
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
14
Teoria Orientação a Objetos EstruturasClasseObjetoMétodoConstrutorPropriedadeOutrosHerança Modificadores de Acesso
15
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 }
16
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. }
17
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;
18
Teoria Orientação a Objetos EstruturasClasseObjetoMétodoOutrosHerança Modificadores de Acesso
19
Outros 19 Namespace; Atributos; Delegates; Reflection; Constraints.
20
Teoria Orientação a Objetos EstruturasHerançaSobrecarga Modificadores de Acesso
21
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;
22
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;
23
Teoria Orientação a Objetos EstruturasHerança Modificadores de Acesso PrincipaisOutros
24
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.
25
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.
26
Modificadores 26 – Override: Quando herdamos de uma superclasse e queremos re- implementar os métodos daquela, utilizamos o modificador override;
27
Outros 27 – Const; – Extern; – Event; – Abstract; – Partial; – Readonly; – Unsafe; – Virtual; – Volatile.
28
TeoriaPrática
29
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.
30
Agradecimentos 30 public class palestra { public void fim() { Console.WriteLine ( “Obrigado!\n” ); Console.WriteLine ( “Obrigado!\n” );}}
Apresentações semelhantes
© 2024 SlidePlayer.com.br Inc.
All rights reserved.