Curso POO teoria #08a - Relacionamento de Agregação

175.35k views5390 WordsCopy TextShare
Curso em Vídeo
Nessa aula de POO, vamos aprender como realizar um relacionamento de agregação entre classes para ge...
Video Transcript:
Olá pequeno gafanhoto seja bem-vindo a primeira aula de Android você queria né mas infelizmente não mas eu vim aqui com bug Droid e a gente tá começando agora mais uma aula do curso de programação orientada objeto que eu gravei alguns vídeos aqui no Google não sei se vai servir para todas as aulas não sei se vai funcionar mas sempre que tiver vai ter um vídeo legalzinho para você nunca se esqueça você pode ver o vídeo completo da minha visita aqui clicando no izinho de interatividade que tá desse lado ou desse lado não sei mais onde
funciona bora pra aula meu querido Bons estudos [Música] Olá pequeno gafanhoto seja bem-vindo a mais uma aula teórica do seu curso de programação orientada ao objeto o meu nome é Gustavo Guanabara eu sou o seu prof professor e agora nós chegamos a aula 8 A e na aula 8 a a gente vai continuar aquele exercício que a gente estava falando na aula anterior que é o relacionamento entre classes e a gente vai dar continuidade àquele exercício do Ultra emoj Combat lembra que a gente fez na aula passada então é muito importante que eu te diga
o seguinte não adianta você assistir essa aula oito sem assistir a aula sete eu sempre vou falar isso no curso em vídeo mas essa aula oito em especial é a continuação do exercício anterior então se você ainda não fez os códigos da aula anterior você não vai conseguir acompanhar essa isso porque que a gente vai continuar a gente vai onde a gente parou na aula 7ete a gente vai continuar pra aula oito então você precisa daquelas linhas tanto para algoritmo quanto pra linguagem que você escolheu acompanhar esse curso Então vamos dar uma recapitulada como é
que tava anteriormente como é que tava a nossa classe na aula anterior se você se lembra muito bem a gente criou essa classe que tá sendo construída aí a classe lutador na classe lutador eu tinha os atributos todos os atributos eram privados isso porque a gente começou a utilizar o conceito de encapsulamento todos os métodos públicos estão representados aqui do lado e a gente tinha ainda o método Construtor os métodos getters e os métodos setters tudo isso foi construído na aula anterior pra classe lutador Então eu tinha como tá aparecendo aí ó nome nacionalidade idade
altura peso categoria o quantidade de vitórias a quantidade de derrotas e a quantidade de empate eram os atributos dessa classe os métodos que a gente tornou principais ali apresentar apresentar o lutador mostrar o status aquela Barrinha pequenininha embaixo ganhar perder e empatar uma luta são os métodos que eu tornei principais ali a a gente fez também os métodos do Set nome get nome set nacionalidade get nacionalidade a gente fez tudo isso na aula anterior e na aula anterior a gente conseguiu construir objetos de lutador então tenho lá um objeto lutador ali a gente fez a
construção eu mostrei passo a passo para você e você não precisava utilizar a classe para construir um único objeto você poderia construir vários objetos então eu representei outro caso aqui outra Instância da classe lutador então como eu disse anteriormente objetos são instâncias de classes eu preciso ter uma classe para eu conseguir instanciar objetos eu não consigo ter objetos sem ter uma classe definindo Qual é a estrutura dele isso tudo tem que estar muito Claro na sua cabeça e você tem que ter praticado bastante por isso que cada aula eu vou criando um exercício diferente para
que a gente não precise criar aquela sequência né E que vá crescendo vai crescendo e que se você não entendeu uma aula anterior você não consegue fazer a próxima cada aula é um exercício diferente pra gente dar sempre uma retornados seus exercícios maiores e o que eu venho fazer nessa aula Como eu disse lá no título é mostrar como eu relaciono uma classe com a outra uma classe ela já é bem poderosa porque ela encapsula dados e funcionalidades não é isso que a gente viu lá no iniciozinho ela é mais poderosa ainda porque além de
encapsular dados e funcionalidades eu consigo relacionar classes eu consigo ligar uma classe com a outra existem vários tipos de relacionamento o que a gente vai ver nessa aula é um relacionamento específico chamado agregação deixa eu explicar melhor aqui você tá olhando aí do lado tem dois objetos lutador todos eles foram baseados na mesma classe eles são lutadores diferentes eles têm estados diferentes mas eles compartilham os mesmos atributos e métodos se o lutador da esquerda tem nome o da direita também tem nome se o da esquerda tem nacionalidade o da direita também se o da esquerda
tem total de lutas vencidas o também da direita também tem e agora eu vou criar o seguinte eu vou criar uma classe para eles poderem lutar entre si sendo assim eu vou criar a classe luta aqui embaixo vou fazer a mesma coisa um retângulo coloca lá luta em cima que é o nome da classe primeira letra maiúscula e o nome da classe em e vou ter duas áreas a área de atributos e a área de métodos os atributos que eu Previ aqui para essa classe para ficar bem simples eu Previ o atributo desafiado desafiante e
você vai falar puxa pera aí desafiado desafiante né uma luta tem quem desafiou e quem foi o desafiado n é isso todo atributo ele tem um tipo né ele pode ser inteiro ele pode ser real ele pode ser né caracter ele pode ser ser lógico esses atributos são o quê aí você vai falar pô são caracteres o desafiado e o desafiante são caracteres só que não em programação orientado do objeto a gente pode criar o que a gente chama de tipo abstrato de dados e transformar as nossas classes em determinados tipos deixa eu explicar melhor
o desafiante e o desafiado eles não são caracteres eles são lutadores eles são instâncias da classe lutador e se você não entendeu isso ainda fica calmo que já já você vai compreender além do desafiado e do desafio ante eu vou colocar para cada luta a quantidade de rounds que ela tem E se ela está aprovada ou não se ela pode acontecer ou não já já eu vou mostrar para você Quais são as regras das lutas do Ultra emoji Combat todos esses atributos que estão aparecendo aí do lado seguindo a nosso primeiro Pilar que é o
encapsulamento vão se tornar privados todos eles em relação a métodos eu vou ter o método de marcar luta e o método de lutar é claro que você pode imaginar aí pô mas tem mais coisa pode ter mais coisa para esse nosso exercício eu tenho tentei dar uma abstraída maior pra gente poder fazer menos coisa e não ficar tanta coisa para digitar e sim coisas para aprender nada impede de que você durante a aula crie uma luta melhor uma classe luta melhor do que a minha e colocar nos comentários é assim que funciona o curso é
isso que eu sempre vou incentivar se você criar uma classe melhor do que a minha que você julgue melhor do que a minha e não é muito difícil criar Até porque eu tenho pouco tempo para fazer isso faça isso e coloca nos comentários aqui qual foi sua proposta da classe Quais são os métodos adicionais que você tá propondo coloca lá porque com certeza toda a ajuda vai ser de grande importância pra comunidade pros alunos que vão chegando e vão olhando ih pera aí ele pode fazer melhor ele pode criar olha um exemplo aqui faz isso
que é bem legal gafanhota e as visibilidades dos métodos que a gente colocou ali eu vou colocar como públicas Então essa daqui é a nossa representação básica Mas ela tá longe de ser oficial a representação oficial utilizando ml ficaria mais ou menos assim vou trazer de volta aqui a nossa classe lutador e vou representar a classe luta então o nosso exercício vai se basear nessas duas classes que estão aparecendo aí do lado existe alguma relação existe alguma ligação entre lutador e luta existe um lutador participa de uma luta um lutador faz uma luta Enfim então
existe uma ligação como é que eu faço essa ligação eu faço uma linha como essa linha como essa relação é do tipo agregação Como eu disse anteriormente eu vou representar ela como uma linha sólida e com um losango branco na ponta sempre que eu represento alguma coisa assim num diagrama de classes eu estou representando uma agregação Todo relacionamento ele também tem um papel que é um nome Então nesse caso aqui eu coloquei lá disputa todo lutador disputa uma luta você também tem um sentido que é essa setinha preta aí que tem que tá aparecendo aqui
do lado então o lutador disputa uma luta uma luta é disputada por lutadores E por falar em lutadores falar no plural eu também tenho que colocar dentro do diagrama de classe o que a gente chama de multiplicidade basicamente é o seguinte er aqui ó deixa eu fazer na tela para você eu tenho cada lutador pode participar de quantas lutas cada lutador ele pode participar de no mínimo nenhuma e no máximo várias lutas então eu vou colocar a multiplicidade aqui do lado ó z0 ponto ponto asterisco significa essa multiplicidade o quê ele pode participar de no
mínimo nenhuma luta e no máximo várias lutas fazendo o papel contrário agora cada luta ela pode ter quantos lutadores não pode existir uma luta com nenhum lutador nem uma luta com um lutador existem lutas com dois lutadores ou vários lutadores então eu vou colocar ali do lado aqui ó coloquei um asterisco aqui do lado isso significa que um lutador pode disputar nenhuma ou várias lutas agora o contrário uma luta pode ser disputada por vários lutadores não existe uma multiplicidade mínima ali e se você fez o nosso curso de banco de dados você deve estar olhando
assim espa aí eu já vi esse negócio em algum lugar eu já vi isso no curso de banco de dados o diagrama de entidade e relacionamento eu tinha uma entidade eu tinha outra e eu tinha um relacionamento Agora eu tenho uma classe eu tenho outra classe e eu tenho uma relação eu tinha no diagrama de entidade de relacionamento o que a gente chamava de cardinalidade Agora eu tenho no diagrama de classes multiplicidade Será que existe alguma relação eu vou te contar um segredo pequeno gafanhoto existe sim o diagrama de classes que tá aparecendo aí do
lado é basicamente uma evolução da aquilo que estava sendo previsto no modelo entidade de relacionamento naquele diagrama entidade de relacionamento que a gente viu lá no curso de banco de dados Tá vendo como as coisas começa a se reunir e qual é a diferença entre um diagrama entidade de relacionamento e um diagrama de classes o diagrama de relacionamentos só contém dentro das entidades dados no caso do diagrama de classes eu tenho dados e funções Essa é a evolução da programação orientada objeto eu trouxe aquilo que foi evoluindo e eles acabaram se tornando outros tipos de
paradigmas outros tipos de diagramas outros tipos de técnicas Ficou claro você já tinha pensado nisso se não pensou agora você já sabe então vamos agora criar a nossa classe luta diretamente no código para criar nossa classe luta é simples é fácil Vamos começar lá criando o código da classe então coloquei ali ó classe luta e fim de classe logo em seguida vamos declarar todos os atributos aí eu coloquei lá ó presta atenção aqui ó Vamos aos riscos eu tenho os atributos desafi ado desafiante rounds e aprovada todos eles privados e eu tenho rounds do tipo
inteiro isso por quantos rounds tem a luta 3 5 10 rounds são números inteiros eu tenho também o aprovada que é lógico isso é a luta pode acontecer ou não pode acontecer então é um tipo lógico e Se você prestar atenção aqui ó eu ainda não coloquei os tipos de desafiado e desafiante E aí a maioria das pessoas pensam assim ah vou botar aqui caractere só que se você botar caractere você vai ter que colocar Sei lá o nome do lutador e existe uma maneira mais legal em vez de utilizar um tipo primitivo eu vou
colocar um tipo abstrato como é que eu utilizaria esse tipo abstrato eu faria isso aqui ó eu colocaria desafiado é um lutador e o que que é lutador foi aquela classe que eu criei anteriormente então eu acabei de dizer que desafiado vai ser uma Instância da classe lutadora isso é vai ser um objeto de lutador eu posso fazer isso Isso se chama tipo abstrato de dados sendo assim eu vou ter uma inst de lutador e essa Instância de lutador vai ser o meu desafiado então eu crio uma relação entre esse tipo abstrato e uma Instância
de uma determinada classe vou fazer a mesma coisa pro desafiante o desafiante também é um lutador que é outra Instância da mesma classe já já você vai ver como ISO tudo funciona na prática depois de definir nossos atributos nós vamos definir nossos métodos como eu Previ ali você pode ver lá em cima no diagrama de classes que tá representado eu coloquei os métodos um método público marcar luta e o outro método público lutar então tenho esses dois métodos já montei o esqueleto aqui da minha classe e percebe que essa minha classe está se relacionando com
outra Classe A partir do diagrama que você pode ver ali em cima Os atributos desafiado e desafiantes são instâncias de outra classe Acabei de fazer uma ligação a agregação Ela é conhecida como um relacionamento do tipo tem um isso é uma luta tem um lutador Na verdade uma luta tem mais de um Então esse eu tenho duas agregações ali então o tem um é um relacionamento do tipo tem um Então sempre que você for criar uma relação e você botar assim sei lá a classe B tem um atributo que é da Classe A esse relacionamento
do tipo tem um é o que a gente chama de agregação e além desses métodos tradicionais a gente tem os métodos especiais vamos dar uma olhada aqui do lado olha só eu criei dois métodos especiais só para você poder entender para não precisar ficar repetindo todas as vezes faz getter faz Setter botei um aqui que é um especial que eu vou mostrar para você olha só o método set desafiado e o set desafiante eles vão receber um parâmetro não vão esse parâmetro que eu chamei de DD ele vai ser do tipo lutador eu posso utilizar
tipo abstrato também como parâmetros não tem problema nenhum então o desafiado recebe DD então eu tenho que receber um lutador aqui pro set desafiado e o get desafiado também retorna desafiado que é do tipo lutador também vou fazer isso tanto pro desafiado quanto pro desafiante quando você for pra linguagem de programação ou Java ou PHP você vai entender como isso é representado na hora de colocar nas linhas práticas da definição da classe nas linguagens que você escolher e chegou a hora da gente definir os métodos principais aqueles métodos públicos que foram colocados ali em cima
você olhar ali em cima ó tá escrito ali ó marcar luta e lutar então marcar luta e lutar são os dois métodos públicos que a gente vai ter que definir nesse nosso exercício mas antes disso a gente tem que ver quais são as regras dessa luta que que eu defini aqui para esse exercício como regras de uma luta uma luta no uec para ela acontecer ela tem que ter as seguintes regras só pode ser marcada entre lutadores da mesma categoria isso é eu não posso botar um peso leve para lutar com um peso pesado eu
não posso colocar um peso médio para lutar com um peso leve e assim sucessivamente leve só luta com leve médio só luta com médio pesado só luta com pesado uma outra regra que é meio estúpida mas você precisa testar ela eu só posso fazer com que o desafiado e o desafiante devem ser lutadores diferentes isso é eu não posso botar o João para lutar com João Então o meu código tem que prevenir isso tem que falar P pera aí você tá botando o mesmo lutador para lutar com ele mesmo Como é que vai ter essa
luta o cara vai ficar socando a cara dele são coisas que são óbvias mas que você programador tem que definir dentro da sua classe A outra regra que a gente vai colocar aqui é que só pode acontecer se essa luta estiver aprovada isso é eu não posso começar uma luta se ela não estiver aprovada então eu vou ter que na hora de marcar a luta eu tenho que ver se ela aprova ou não uma vez que a luta V começar eu tenho que testar se ela está aprovada anteriormente eu tenho mais uma regra que é
só pode ter como resultado a vitória de um dos lutadores ou então o empate então eu não posso ter né o o não compareceu e nada mais nesse nosso programa pra gente ficar né no nosso nível de abstração a coisa mais simples nós vamos colocar que só pode primeiro o desafiante vencer o desafiado vencer ou então empatar os dois essas Então são nossas classes Vamos partir agora pra Construção do método de marcar a luta para marcar a luta eu vou fazer o seguinte tá você criou uma luta para marcar a luta eu tem que dizer
qual é o desafiante qual é o desafiado Então vamos criar o cabeçalho aqui ó no nosso marcar a luta eu coloquei ali ó Eu tenho dois atributos vou passar marcar a luta L1 e L2 que são do tipo lutador isso é eu vou definir tá quem é que vai lutar o Joãozinho com o Pedrinho então eu defino no marcar a luta passando como parâmetro os lutadores então eu não vou passar o nome do lutador eu vou passar um objeto lutador e você vai ver como é que a gente faz isso agora seguindo aquelas regras que
a gente viu anteriormente Vamos criar a nossa condição para que a luta possa ser marcada ou não dá uma olhadinha nessa condição que eu coloquei aqui ó eu só vou poder marcar a luta se o L1 pget categoria for igual a L2 PG categoria eu coloquei o get categoria aqui numa outra cor para você entender o seguinte get categoria é um método de outra classe da classe lutador que a gente criou na aula passada eu tinha get categoria lá então se eu utilizo um objeto uma distância um tipo abstrato de dados eu posso utilizar também
todos os métodos desse lutador então eu posso pegar a categoria desse lutador através de um parâmetro que veio no método então Eu verifiquei lá se eles são da mesma categoria E se o lutador um for diferente de lutador dois isso é a luta só vai acontecer se eles forem da categoria igual e se forem lutadores diferentes eu não posso Como eu disse anteriormente botar o Joãozinho para lutar com Joãozinho eu tenho que ter o Joãozinho com o Pedrinho e todos os dois t que ser da mesma categoria eu acho que Ficou claro de você ler
ali Se isso for verdade a nossa luta está aprovada nós vamos fazer o seguinte o primeiro parâmetro que foi passado ali é sempre o desafiado então se a luta for aprovado o desafiado é o L1 e o desafiante é o L2 então eu fiz a definição aqui dos atributos dessa minha classe da minha classe luta senão Se ele chegar nessa área sen não é porque ou ele não tem a mesma categoria ou então porque eles são o mesmo lutador então ele vai fazer o aprovado falo o desafiante e o desafiado vão receber o valor nulo
isso é não existe desafiante não existe desafiado então esse código que tá aparecendo aqui do lado é o código do nosso método marcar luta Vamos partir agora pro método lutar que é o outro método que vai ser o nosso maior método essa luta ela vai acontecer assim ela vai gerar um valor aleatório pra gente poder ver quem foi que ganhou E aí sim eu vou definir lá a quantidade de vitórias a quantidade de derrotas de cada um dos lutadores e isso vai ficar gravado no Cartel dele vai vai ficar gravado no objeto lutador Então eu
tenho aqui a classe luta e nós vamos começar o método lutar então eu coloquei lá o método lutar e o fim do método lá embaixo Como eu disse anteriormente lá nas regras da luta uma luta só pode acontecer se ela for aprovada não é isso então vou colocar lá ó se a luta for aprovada então eu boto um si grandão percebe ali embaixo ó tem um se não e um fim C se a luta tiver aprovada ela vai acontecer senão já vou fazer o senão logo de cara olha lá embaixo senão escreva luta não pode
acontecer então aqui embaixo eu já fiz o sinão Agora se a luta estiver aprovada ela vai rolar E aí como é que começa uma luta sempre o apresentador apresentando lutador não é isso Então olha lá olha aqui do lado o desafiado vai ser apresentado mais uma vez eu te digo desafiado é um objeto do tipo lutador então eu posso utilizar os métodos desse objeto sem problema algum vou fazer também a apresentação do desafiante E aí eu vou criar uma variável chamada vencedora aqui que ela vai receber um valor aleatório entre zero e do sendo do
zero empate um o primeiro lutador que ganhou e dois o segundo lutador que ganhou simples assim não vou verificar se o cara tem mais vitórias mais derrota maior peso menos peso se ele tem vantagem de alguma coisa E aí vai uma dica se você quiser criar um código para conseguir dar peso às coisas por exemplo se o cara for mais alto ele tem maior vantagem se ele tem maior número de vitórias ou que o outro você pode criar uma fórmula maluca lá faz seu código bota aqui nos comentários tenta melhorar esse meu esse meu exercício
é um valor randômico um valor aleatório que vai ser gerado zero um ou dois se for zero empataram se for um o primeiro lutador Ganhou se for dois o segundo lutador ganhou E aí eu vou verificar o resultado que foi gerado então eu botei lá escolha vencedor Isso é se o vencedor eu vou botar os casos ali ó Então eu tenho escolha o fim escolha lá embaixo e eu vou criar os casos caso Zero foi empate caso um ganhou o desafiado caso dois ganhou desafiante como eu já disse anteriormente vamos V pro caso zero primeiro
caso seja empate Caso seja empate ele vai escrever empatou obviamente porque empatou eu também vou chamar desafiado ponto empatou Luta então chamando o método empatar luta a luta foi empatada no empatar luta ele vai chamar esse método lá no lutador e se você viu na aula anterior ele vai fazer o total de empates desse lutador ser o total de empates mais um lembra disso deu como é que uma aula depende da outra e vou fazer com que o desafiante também empate então se a luta for empatada tanto o desafiante quanto o desafiado vão ganhar Um
empate no seu cartel no caso um o desafiado ganhou então eu vou escrever lá o nome do desafiado lá desafiado p get nome vou fazer com que o desafiado ganhe a luta e o desafiante perca a luta e aí quando eu chamo esse método ele Adiciona uma vitória em um e adiciona uma derrota no outro vou fazer a mesma coisa no caso dois que é o ganhou o desafiante Então na hora que o desafiante ganha eu escrevo o nome do desafiante faço com que o desafiante ganhe a luta e com que o desafiado perca a
luta esse método ganhar luta vai fazer com que o número de vitórias de um aumente o número de derrotas de outro aumente isso porque acontece né uma luta um ganha o outro perde ou se for empate os dois aumentam o número de empat então esses dois foram os métodos principais que a gente vai utilizar nesse exercício Eu espero que você tenha entendido e eu espero que você que assistiu a aula sete fala assim pera aí a aula sete fala sobre relacionamento entre classes e eu não vi nenhum de relacionamento isso porque a gente estava construindo
um exemplo grande para poder chegar aqui e mostrar para você o que que é uma agregação é claro que existem outros tipos de relação existem associações existem um monte de relação entre classes no nosso caso aqui eu resolvi nesse exemplo criar um caso de agregação que é uma relação um tanto quanto complexa não é da mais simplesinha mas que você vai entender sempre que você precisar ligar um objeto no outro utilizando os tipos abstratos de dados agora chegou o momento de programar então eu vou colocar ó aqui embaixo eu vou deixar as nossas classes não
e considera aquele código todo que foi criado durante as aulas eu tenho a classe lutador e a classe luta agora a gente vai voltar ao nosso programa principal lembra que a gente criou um programa principal na aula passada na aula sete então tinha lá ó no programa principal eu tinha um vetor l de seis posições vai da posição zero até a posição CCO E aí eu atribuí dados eu atribuí informações pelo Construtor na hora que eu criei lá então botei assim ó l0 é novo lutador isso é l0 vai ser um objeto ele vai ser
um novo lutador L1 também é um novo lutador então eu criei lá dois lutadores coloquei no Construtor na chamada pro Construtor coloquei lá os dados importantes então ó pro lutador vai me importar o nome pretty Boy a nacionalidade que é França que ele tem 31 anos 1,75 m de altura 68,9 kg de peso el também tem 11 vitórias três derrotas e Um empate o segundo lutador era o script O Lutador um né o primeiro lutador é o zero o segundo é o um o script ele veio do Brasil ele tem 29 anos 1,68 m de
altura 57,8 kg de peso ele tem 14 vitórias duas derrotas e três empates e fiz a mesma coisa para todos os outros lutadores do lutador zero até o lutador 5 total atualizando os seis lutadores lembra que na aula passada a gente viu que a categoria dele é atualizada automaticamente pelo set categoria Quando eu uso o set peso ele já faz o set categoria lembra disso da aula passada e se você não tá praticando Com certeza você vai começar a se enrolar com esses negócios não adianta Só assistir a aula assiste e pratica escolhe uma linguagem
e pratica nela Então vou fazer lá ó pro dois pro três O Lutador quatro O Lutador cinco então todos os lutadores eu fiz do lutador zer até o lutador 5 agora eu posso criar um objeto do tipo luta esse código que tá aqui do lado só criou objetos do tipo lutador Olha lá em cima tá criando a classe do lutador novo lutador todos eles são novos lutadores agora vamos criar uma luta como é que eu crio eu botei lá o sc01 é uma nova luta meu Construtor ali tá vazio eu não vou fazer chamada nenhum
parâmetro e eu vou marcar uma luta para marcar uma luta eu chamo o método desse objeto que eu acabei de criar o uec 01 Então vou botar uec 01 pon marcar luta entre o lutador zero e o lutador um que que tá acontecendo ali eu estou passando Ó lutador zero e lutador um como parâmetro e se você lembra quando a gente fez o método marcar luta ele recebia dois lutadores como parâmetro colocava um como desafiado e outro como desafiante l0 é o pretty Boy L1 é o script aí ele vai verificar l0 e L1 são
da mesma categoria um pesa 68.9 outro pesa 57.8 e se você der uma olhada lá na nossa tabela da aula passada os dois são pesos leves Então ele pode acontecer l0 é diferente de L1 né um é o pretty Boy outro é o script então ele vai permitir essa luta essa luta marcada vai ficar aprovada E aí eu posso fazer com que a luta aconteça eu vou botar lá o EC pon lutar quando eu chamar o método lutar a luta vai acontecer vai verificar se a luta está válida ou não se ela foi aprovada ou
não vai gerar um número aleatório entre empate vitória do desafiante ou vitória do desafiado e tudo tudo isso vai funcionar em conjunto Se eu tentar marcar uma luta sei lá do lutador zero com lutador zero ele vai ver que são iguais não vai Aprovar Na hora de lutar ele vai dizer essa luta não pode acontecer se eu mandar lutador zero lutar com o lutador cinco por exemplo que é um peso pesado ele também não vai deixar e na hora da luta acontecer ele vai dar um erro dizendo que essa luta não pode acontecer tudo isso
vai ser feito automaticamente graças à programação orientada objeto então dá uma olhada esse aqui é o tamanho do meu código principal isso é na hora que você for programar você só vai programar isso aqui a classe lutadora e a classe luta já foram previamente cadastrados então eu posso fazer quantas lutas eu quiser agora eu posso fazer quantos lutadores eu quiser agora sabe quando a gente faz um um filme em 3D que a gente diz assim ah o filme 3D é mais fácil de fazer não o filme 3D ele não precisa de atores os atores são
virtuais mas eu tenho que levar um tempão fazendo aquele personagem né Não sei se você já pesquisou por exemplo um filme como Toy Story Procurando Nemo leva anos para eles construírem os personagens e depois ele leva um um pouquinho menos de tempo para poder fazer esses personagens se mexerem a partir daí ele pode fazer esses personagens se mexerem e criar procurando meso 1 2 3 4 isso porque ele já tem a base isso porque ele já fez aqui fazendo uma relação com programação orientada do objeto você leva um tempão fazendo uma classe mas depois você
pode criar quantos objetos você quiser e fica tudo muito mais fácil tudo muito mais simples e se ficou alguma dúvida de toda essa teoria que a gente viu a partir de agora chegou o momento de você escolher aquilo de sempre aquele momento de sempre escolha uma das linguagens a gente tem como opção aqui durante a gravação dessas aulas a gente tem o PHP e o Java aqui embaixo Então você clicando em qualquer um desses ícones você vai diretamente pra Playlist desses cursos E aí você vai escolher a aula 08b desse determinado curso Pode ser que
mais pra frente no curso em vídeo na história do curso em vídeo a gente lance programação orientada objeto em outra linguagem essa aula teórica ela é base para tudo e aí na aula prática você vai escolher não vai ter só essas duas opções vai ter outra mas aí você já vai estar assistindo da playlist você vai entender tudo bonitinho beleza pequeno gafanhoto a gente se encontra daqui a alguns instantes em uma das aulas práticas que você escolheu um forte abraço e até já [Música] já Y
Copyright © 2024. Made with ♥ in London by YTScribe.com