A apresentação está carregando. Por favor, espere

A apresentação está carregando. Por favor, espere

Orientação a Objetos Erick Luis Moraes de Sousa

Apresentações semelhantes


Apresentação em tema: "Orientação a Objetos Erick Luis Moraes de Sousa"— Transcrição da apresentação:

1

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” );}}


Carregar ppt "Orientação a Objetos Erick Luis Moraes de Sousa"

Apresentações semelhantes


Anúncios Google