os métodos classes objetos são todos os termos muito utilizados dentro do dia dia de alguém que automatiza testes é por causa disso que eu trago a vocês mais um episódio da série programação para que o ex que querem automatizar seus testes e dentro desse Episódio a gente explora um pouco mais sobre cada um desses termos e os seus conceitos iniciais Essa vai ser a nossa parte número um porque na parte número dois a gente vai ver como aplicar isso na prática então força e agora a sua concentração seu foco para que você possa entender com clareza dos conceitos que eu vou mostrar para você aqui hoje para que você esteja preparado ou preparada para a próxima aula que vai ser aula prática a programação para que o Eis que querem automatizar os seus testes classes métodos e objetos dentro desse Episódio a gente vai aprender um pouco mais sobre os conceitos que estão por detrás de cada um desses termos e novamente abordando aqui de uma maneira um pouco mais trazida para a prática do seu dia a dia realmente voltado ao que você precisa saber sobre esses conceitos para conseguir performar na criação dos Testes automatizados que você tanto precisa para o seu dia a dia como sendo que o é beleza bem se você tá preparado tá preparada Então vamos seguir aqui dentro desse conjunto de informações que eu trago para você hoje a primeira coisa que a gente precisa ver aqui é um pouco mais sobre o que nós vamos aprender hoje beleza show então o que a gente vai aprender nós vamos ter uma introdução a definição de classes métodos e objetos a forma de iniciar o conhecimento no uso da programação da prática de testes automatizados em Java esse é mais um episódio da série programação para que o esse querem automatizado seus testes Eu recomendo fortemente que você já tem assistido os outros episódios antes de vir aqui e aprender um pouco mais sobre o episódio atual Ok vamos seguir vocês devem se lembrar lá atrás na nossa primeira aula dessa série nós falamos sobre o programa do Jô nas basicamente o Jonas tem uma tia que a Gaia que executa algumas ações que são ações manuais ela faz isso diariamente O que consome dela muito tempo no decorrer de toda semana e pensando nisso Jonas conversou com a tia dele entendeu o problema percebeu que dá para automatizar as ações que ela faz que é basicamente de entrar num determinado site fazer o login e lançar notas fiscais pensando nisso Jonas começou a rascunhar aqui um programa que é um programa para ajudar a Gaia tia dele a conseguir executar menos coisas de maneira manual e mais coisas de maneira automática beleza e pensando nisso Jonas escreveu um programa que por enquanto trata apenas login o que ele faça um programa para fazer login começo Abra o Chrome navegue pelo site blábláblá e clique no campo que tem um meme igual ao usuário e aí lá na primeira aula a gente também viu isso na quando a gente tá por exemplo uma aplicação web os elementos têm alguns atributos que o tornam que os tornam únicos na tela na e aqui a gente tá falando que a gente quer clicar em um elemento específico que tem um nenhum específico nem me é um atributo do do campo que é o atributo usuário depois disso a gente o programa do Jonas fala que vai digitar Gaia num determinado Campo que tem o mesmo Nemo usuário depois disso O Jonas fala com problema dele clicar no campo que tem um nem me igual a senha mudou agora tá clicando em outro Element outro Campo bom e depois disso digitar um determinado número dentro do campo de mesmo nome Campo senha depois disso clicar em um botão que tem o identificador único vai de igual a entrar esse daqui é o programa com Jonas criou para substituir parte daquele processo todo o manual que a tia dele Gaia executo bacana até aqui na bem trancando show só que quando a gente pensa em começar a transformar isso daqui na tirar esse daqui de apenas desse textual aqui em português na o que o professor Pedrão que foi um dos meus Mestres enquanto eu estava fazendo a minha primeira graduação lá atrás em 2002 1000 4/2006 mais ou menos na ele fala que antes de qualquer coisa né na antes de você começar a codificar vocês a programar Isso aqui é uma programação está dizendo aqui com textos em português o que a gente quer que fazer tá beleza a gente precisava começar a entender como como começar a transformar isso na realidade na prática lá e é por isso que a gente tem aqui apreendido na nossa esses primeiros conselhos aqui da programação para automação de testes especificamente você vê isso daqui ainda não é um teste isso por enquanto é só automação de um processo um teste precisa assim dessas dessas informações similares essa mas no final das contas um teste também faz uma validação de algo não é que é o que o ser humano teria que fazer de maneira a sem uso de ferramentas certo Por enquanto não teste mas a serve para gente ter uma relação de que isso daqui vai nos ajudar posteriormente com a criação de testes automatizados porque também faz isso segue um flor na utilizando um software qualquer a hora que a gente possa fazer aquele programa do Jonas é necessário que a gente tem alguns algumas ferramentas de suporte e aqui nesse caso você acaba de ver uma ferramenta de suporte não o leque o texto para você entender melhor bem Jonas eu posso repetir as ações da sua tia no Browser olha só que bacana hein esse nosso robozinho aqui ó super gente boa acho que você já deve ter visto o roubo em algum lugar aqui ele diz aqui por Jonas aí Jonas se você quiser meu eu posso ir lá e repetir essas ações que você programou aqui no seu programa lá no site na através do do browser navegador pode me chamar de Julho driver e para você que está assistindo esse vídeo e que já conhece sobre automação de testes já pegou a referência né Para você que é novo que a nova aqui existe uma biblioteca em Java e também diversas outras linguagens que é muito conhecida e que serve para fazer exatamente com Jonas precisa de ir lá na daquele comando que ele escreveu por exemplo o site que alguma biblioteca algum robozinho vai lá e realmente navegue pelo site abrir o browser que um robozinho vai lá e realmente Abra o browser para ele né então aqui a gente tá falando do Júlio driver Mas na vida real tem uma biblioteca que faz Exatamente isso chamada web driver mas tá sua para favorecer didática e para ajudar você entender melhor para umas coisas funciona eu tô trazendo aqui para você o nosso caro Júlio driver Imagine ele como sendo um robô um robô que através de comandos que você vai dar através do seu programa da programação que você vai criar vai poder executar algumas ações Quais são as ações ali um Júlio deve tá falando para você eu posso fazer várias coisas dentre elas Navegar para o site pegar a URL da janela atual eu acho que minha voz e roubou não tá tão boa hoje eu vou continuar falando com a minha voz e ser humano mesmo em com e no site pegar no título da janela fechar a janela do Chrome Olha só o Júlio driver que aqui um robozinho que tá sua disposição para que você através de programação possa controlá-lo pode fazer todas essas coisas aqui para você olha só que legal então ele pode sim lá abrir uma janela ele pode Navegar por um site ele pode pegar o URL da generatore pode encontrar o elemento no site ele pode pegar o título da página e pode fechar janela do câmbio bacana né isso tudo quem faça o Júlio driver puxa ajudar você é demais não mas o Júlio driver ele tá disponível em Java Júlio está o Júlio driver está disponível para que eu possa utilizá-lo gratuitamente está você pode baixar o juro driver gratuitamente fazer o download do Júlio drive gratuitamente para que você possa utilizar você pode pedir para o júnior vai fazer qualquer uma dessas coisas aqui ele vai te cobrar alguma coisa ele não vai te cobrar nada tá entendendo porque porque o Júlio e é uma biblioteca que vai estar disponível para você gratuitamente para que você possa utilizar isso daqui no nosso exemplo na vida real Júlio driver não existe que existe na verdade um lugar no jurava que faz tudo isso é o Selenium webdriver ele é uma biblioteca que você usa ela como se fosse com Júlio drive um robozinho que pode fazer essas coisas para você beleza precisamos falar agora do Selenium webdriver ainda não porque se tem ainda um caminho a percorrer nessa sua carreira como sendo alguém que sabe programar Entendi então por hora a gente vai usar que algumas metáforas algumas Abstrações só para que você possa saber entender melhor antes de você seguir para a prática em si beleza Júlio driver aqui então eu sou robozinho você tem que pensar mesmo assim o Júlio driver é um robozinho que se eu falar para ele abre o braço ele é se eu falar para ele navegue pelo site ele abre ele navega se eu falar para ele Júlio draga por favor o alimento ele clica entendeu eu só tenho que dar o comando certo para ele ok nesse programinha aqui do do Jonas ele tá falando Abra o Chrome é o Júlio driver que vai lá e abre o plano ele tá falando navegue para o site é o Júlio Drve é que vai lá e navega para servir site clique no campo é o Júlio driver que vai lá e clica naquele campo acho que você entendeu agora né show de bola o ímpio gramação orientada a objetos que a gente chama de p o que é uma uma forma de você programar tá um paradigma de programação e são o termo técnico para isso programação orientada a objetos o Júlio driver quando ativo ou seja pensa no Rio Drver nativo unidade Operativa pronto para você tá bom então Jurava com tá desligado na só é só uma definição a descrição do tá jogando acreditativo ele é um Júlio driver e o Júlio driver Nesse contexto aqui é considerado um objeto então a gente tá falando de programação orientada a objeto se você tem um objeto que pode ser utilizado porque ele já tá ali já tá prontinha para você ele é chamado de um objeto esse objeto você pode utilizá-lo para fazer as suas ações como eu tinha dito para você antes vai lá abre o browser vai navega vai lá e digita vai lá e clica Nesse contexto um objeto ok e por de trás do Júlio driver Existe algum Existem algumas especificações técnicas concorda Por exemplo existe lá uma eu não existe é assim que chama em na quando a gente fala de um de um produto como Jurubeba um robô é por detrás dele tem aqui essas plantas que fala Quais são os circuitos que tem no Júlio driver o que ele pode aquele não pode fazer é quais são as características únicas do Júri driver Sabe aquela realmente aquela que eles manuais aquelas especificações técnicas do Júlio driver em programação orientada a objetos a gente tem uma coisa chamada classe que é nessas especificações técnicas que foram utilizadas para criar para gerar o Júlio driver Então uso driver é o objeto quando ativo e as especificações técnicas dele o que que diz o que ele pode não pode fazer é o que a gente chama em orientação em programação orientada a objeto p o de Classe A o show de bola então Jurava você é um objeto o que mostra como você funciona o que você pode não fazer só uns 10 é a classe Às vezes tem as classes porque são algumas especificações técnicas Ok legal show de bola Vamos seguir bem já que a gente pode utilizar o Júlio driver para fazer aquelas ações que antes era só a Gaia ser humano que fazia isso a gente pode agora utilizar o Júlio driver para simular as ações da Gaia fazendo com que então a gente cria um robô Gaia entender aquela ideia o robô Gaia nada mais nada menos Não será nada mais nada menos do que um a imitação da Gaia fazendo tudo pagar e faria mas utilizando o Júlio driver por de trás para fazer aquilo para ela por exemplo e a Gaia antes a gente sabe que o Júlio driver pode abrir o browser pode digitar pode clicar Pode fechar na agora a gente sabe que a Gaia pode fazer login com a Gaia pode lançar uma nota não é assim então se a gente quer criar um simulador da Gaia criar uma uma gaia robô que a gente tem que fazer essa Gaia robô tem que também terá algumas ações que ela pode fazer por exemplo a Gaia roubou vai poder fazer login a Gaia roubou vai poder lançar nota Entendi então novamente vamos voltar aqui o que é o que a Quais são as especificações técnicas da raia da Gaia robô a fazer login e lançar nota Essas são as ações chegar algo pode fazer o quê que é isso isso é a classe A classe Gaia robô descreve o que a galera pode fazer Ok a classe garrow bom então descreve que agora pode fazer e lá dentro do que ela pode fazer ela vai fazer o uso do Júlio robô por isso que quando a gente fala sobre classes a gente tem dentro das classes algumas definições do que aquilo pode fazer novamente se a gente fosse pensar na vida real a a gente tem a Gaia robô que ela pronta para ir lá e fazer login ela pronta para ir lá e lançar nota ou a gente tem esse preço indicações técnicas dela que é o que ela pode ou não pode fazer Ok classe objeto objeto faz a classe define o que poderia fazer Ok legal temos aqui então essa nova versão aqui das nós a Gaia robôs e ver aqui que ela já tem um molhinho ali de Android Ela já tem um braço aqui robô também né tá muito mais tunada aqui agora certo beleza como eu tava dizendo uma classe ou um conjunto de cascos equivalem que as especificações técnicas que são as coisas que estão por detrás do nosso objeto Ok se a gente fosse pensar na Gaia é o que a Gaia pode fazer ou se a gente fosse pensar no Julho driver é o que o Júlio driver pode fazer essa essa ou Essas são as nossas classes ok uma definição técnica do que é uma classe poderia ser a seguinte fornecida pela Tec itally que é uma classe é usada na programação orientada a objetos para descrever um ou mais objetos ou seja eu descrevo aqui o que a Guy a própria Gaga roubou pode fazer e eu tenho aqui então quando Eu transformo essa definição e realmente uma não objeto uma gaia robô essa aqui então o objeto aqui então eu posso descrever aqui um ou mais objetos por exemplo eu posso ter uma classe que descreve o Júlio driver posso ter uma classe que descreve a galera roubou Costa e outras diversas classes você para fazer diversas outras coisas o que você precisa entender aqui nesse momento aqui quando a gente fala de programação orientada a objetos a gente tá falando do mundo inteiro não programa entrega um software inteiro com um monte de objetos tem um objeto que eu jurava que objeto que a Gaia robô tem outros outros diversos objetos e são eles que fazem com que o seu software funcionando por exemplo quando eu falo Gaga roubou vai lá e faça o que você tem que fazer faça seu login entendeu eu tô eu o Júlio ser humano tô falando por um software usar o objeto Gaga roubou para ir lá e fazer alguma coisa e o objeto ganhar ou botar lá e falando para o objeto Júlio driver fazer uma outra coisa entendi mas são é um mundo cheio de objetos basicamente é isso tudo que você vai pensar é um objeto então tem objeto para fazer a beleza por exemplo se agarra robô tivesse que fazer um login depois lançar nota e quando terminar emitiu são provavelmente teriam outro objeto que o objeto caixinha de som que teria lá dentro na desse objeto que a gente só a possibilidade de por exemplo tocar um alerta sonoro Então tá aqui ó Júlio driver ganha um robô caixinha de som e a caixa de som Pode Pode emitir um som ok eu posso eu posso olhar para essas três coisas aqui como objeto por aqui ó já é o Júlio driver ele pode clicar pode digitar pode abrir browse já é a Gaia já pode fazer login já pode lançar nota já é a caixinha de som já Pode emitir um som Pode ligar a caixinha pode desligar a caixinha por detrás de cada um deles tem a classe que define o Júlio driver a classe que define a Gaia Hubble a classe que define a caixinha de som entende tão Universo de programação objeto é composto por diversos e você pode criar ou que já podem estar criado por exemplo pagar roubou eu que vou definir lá o que ela pode ou não fazer mas pode ser aqui o Júlio driver Já exista eu só fiz download dele pode ser com a caixinha de som Já exista eu só fiz download dela entendeu a ideia legal então classes são as definições na as especificações técnicas ela descreveu um ou mais objetos aqui no caso do nosso exemplo defini o três objetos por três classes distintas e ela serve como modelo para criar um instanciar objetos isso negócio legal por exemplo não tem aqui a classe da Gaia que fala que ela pode fazer login ou pode lançar nota eu posso criar a partir desse uma gaia duas Graças ter esse gás 459 gás por exemplo a todas a partir de um mesmo modelo ela tem aquele modelo a Gaia né Ganhar robô pode fazer login ou pode fazer lançar nota sí eu quero que uma gaia apenas a isso eu crio um objeto Guy A partir dessa classe se eu quero que duas dessas aves eu crio dois objetos gás e talvez nesse momento esteja pressão acima julho por que que eu queria duas galhas a invés de uma puxa pode ter muitos porquês um dos porquês mais comuns é por exemplo a programação é paralela que que você faz aí em vez de você pegar apenas uma gaia para ir lá e lança nota se você vai lá e cria a pelas cinco gás porque daí se você tem sem notas e você distribuir entre 5 gás robôs você tem ali uma facilidade maior porque a cada uma delas vai fazer 20 elas podem trabalhar simultaneamente entendi Dá uma parte de uma definição de Gaia robô você pode criar vários objetos ganha um robô para ir lá e para você a invés de você simplesmente pegar aquela definição de uma gaia roubou e criar um objeto dela roubou para que Ele passa sem notas você cria cinco você queria 10 você queria 20 e distribuir entre eles aquela ação é só um assunto interessante porque assim se a gente for parar para pensar em testes se você tiver apenas uma guerra roubou para rodar sucessos e você tiver sem testes e cada teste demora um minuto você tem que ser em minutos para executar os seus testes Entendeu agora se você fala não eu quero criar dez raios 10 Galhos roubou eu quero que cada uma delas Execute da espécie de que elas trabalhem em conjunto se cada teste demora um minuto puxa vai demorar 10 minutos para você executar todos os em testes Por que você criou dez ganhasse robô entende aqui a questão então uma única definição de ganhar um pouco mas dela foi saindo um monte de gás robôs na se fosse uma forma de bolo você tem efe a definição né da nova forma de bom mais uma receita de bolsa Eu tenho aqui a definição da receita de bolo e você criou vários bolos a partir daquele lá eu pode servir muito mais pessoas aqui no caso é uma definição da Guerra bom que você vai lá e queria várias vários objetos Gaia roubou e fala para eles começarem executar o login e lançar as notas isso vai fazer com que seja muito mais rápido Júlia tem algum. Negativo quando você fala dessa questão de criar várias galhas robô tem quanto mais gás robôs você cria quanto mais objetos não classe tá classe é uma só quanto mais objetos ganha roubou você cria mais lento fica o processamento do seu computador processamento memórias são consumidos a cada vez que vocês Instância um novo objeto cria um novo objeto tira daqui da definição da Guerra robô e transforme realmente uma gaia robô que pode ir lá e fazer as coisas cada uma dessas gases robô faz com que o o lançamento da sua máquina leve mais tempo novamente puxando para testes se você tenha que magaia roubou e você vai pedir que ela Execute algum teste para você se você queria uma só demora mais para executar todos os seus testes na só que o seu computador é pouco não é nada se você cria cinco Galhos robôs para executar seus testes os testes vão ser executados mais rápidos por quê Porque se distribuiu todos aqueles sem entre 5 entretanto sua máquina pode ficar um pouco mais lento entendeu Aí dá Beleza então é mais ou menos assim em programação orientada a objeto a gente sempre tenta tenta trazer essa questão do uso de diversos objetos mas tempo ponderando com a questão de de utilização da máquina para que ela não fique tão numerada E se a gente fosse pensar é utilizando aqui uma linguagem próxima Java Como eu disse nessa parte número um intercalado de conceitos na parte de uma dois a gente fralda prática né Só se os pode trazer uma linguagem similar à Java seria mais ou menos assim para declarar a classe Gaia roubou e aqui eu tô falando da especificação técnica tá para declarar a classe As definições O que é gaia robô pode ou não fazer eu falei assim classe Gaia roubou e abriria uma chave e fechar em uma chave nesse momento não tem nada entro abrir a chave quer dizer o que quer dizer que a galera roubou Por enquanto não pode fazer nada entretanto essa daqui foi a definição da Gaia robô Beleza beleza Júlio Entendi então quer dizer que assim é a forma que programaticamente um Java eu posso criar Agar robô é isso que você quis dizer Exatamente isso Beleza show Mas como eu disse para você e nada se você definir lá né O que é a Gaia robô sem que você defina o que ela pode fazer certo sem saber o que ela pode fazer não tem muito não tem muito valor né Por exemplo agora roubou sem fazer nada não vale de nada agora Gaia roubou o que é capaz de fazer algumas ações isso é sensacional Beleza então aqui é tem uma definição para você um método é uma sub-rotina anexada a uma classe específica Então quando você vai criar um método ele serve para dar ações para aquela determinada é fácil então tá aqui a classe Gaia roubou eu quero cagar é seja capaz de fazer login eu criei um método fazer login aqui eu quero pagar e seja capaz de lançar nota fiscal eu criei um método nota fiscal aqui mas sempre quando eu for criar um método eu tenho aqui que ter então uma classe onde ele será colocado beleza é isso que eu nem e olha Então eu tenho aqui uma classe e essa classe tem lá os seus métodos e esses métodos são as ações que podem ser feito nunca vou ter um método que tá sempre lá se ele sempre vai estar em uma classe eu tô falando aqui de Java orientado a objeto Ok sempre um método está dentro de uma classe por isso que ele fala aqui que o método é uma sub-rotina um Grupo de Ações que está anexado a uma classe específica aqui no caso a classe galho vou trazer aqui para você por exemplo exemplo lá da caixinha de som a classe caixinha de som tem lá um método que o método emitir som a classe Júlio driver tem lá um método que o método clicar tem um método que o método digitar tem um método que o método abrir Browser tem um método para um método fechar browser entendeu a ideia então todo o método é uma ação que faz parte de uma classe Oi e essa Classe A classe aqui na Define um objeto no caso do Galo é robô tem lugar roubou tem os métodos fazer login lançar nota que quando cria um objeto por nossa que foi interessante em tem aqui a classe eu vi o objeto ganha um robô e eu falo que esse objeto aqui da gaiola roubou Vai lá então ideia de fazer o login e deve lançar nota e deve fazer o login e deve nossa nossa eu falar uma só uma suficiente vou criar do se eu pego aqui a classe e cria um objeto e eu tenho duas garras robôs que podem fazer login podem lançar nota pode fazer login podem Nossa nota e assim sucessivamente tá bom inclusive Elas podem fazer o mesmo tempo faz login lança nota faz login lança nota e assim sucessivamente Ok legal essa definição aqui mais uma vez uma definição até que target sobre o que é Método o que olha só como ficaria Então eu tenho a classe Gaia Hubble que eu coloquei aqui azul para ficar mais fácil para você entender Oi e aí eu tenho um método fazer login e tem um método lançar nota são as duas coisas que a Gaia poderá fazer e aqui nesse nosso exemplo por enquanto é só definição a especificação técnica ainda não tem a guerra rouba Porque eu só isso só específica aí aqui beleza isso é algo que você precisa entender também classes são definições não são objetos são coisas distintas da classe ou extrair um objeto para que ele possa assim ir lá e fazer login lança nota mas por enquanto o que a gente tá vendo aqui apenas uma definição da classe Beleza beleza método fazer login método lança Nossa olha só que interessante agora não nesse primeiro esse é o primeiro momento que a gente vê com clareza Qual é a relação entre Gaia robô e Júlio driver o dentro do método tá vendo entrou abrir e fechar do método eu tenho as ações com Júlio driver então não fazer login vai ter as ações do Júlio driver Júlio dragão Abra o browser Júlio driver clica no campo login juiz driver digita o login Júlio drive clica no campo senha no campo senha juiz dragão digita no Khan o driver clica no botão entrar daí depois ou o segundo método lançar nota Aí todas as vezes que eu chamada é a robô para lançar nota aqui que vai acontecer olha dizendo driver clica lá no botão lançar notas Júlio driver digite os dados da nota Júlio driver entendeu a ideia então a Gaia que a Gaia roubou tá chamando Júlio driver tudo isso porque porque a gente não quer cáthya Gaya perca seu tempo fazendo isso tudo manualmente a gente quer que ela tenha mais tempo né para fazer coisas mais importantes então a gente está privando ela de fazer isso tudo manualmente por quê Porque a gente está criando aqui esse o robozinho da tia Daia para fazer tudo isso para ela Oi beleza Beleza show de bola agora vamos para o objeto essa é uma parte muito importante aqui dessa nossa conversa porque até então a gente tava falando só da definição da Guerra robô agora Hubble a ainda não existe não pode ir lá fazer login e lança nota lá eu não existe Por enquanto ainda é só uma definição dela é mas agora as coisas vão mudar por que que elas vão mudar por que agora a gente vai gerar esse objeto objeto é basicamente é um tipo de dado na e pode incluir lá suas propriedades e seus métodos beleza mas na mas nesse momento nessa hora gente ainda não vai falar de propriedades a gente só tá falando de objetos e métodos e as suas classes of ok a gente não vai falar de propriedade Por que que a propriedade é assim a explicar para você propriedade agora simples só que vai ficar completamente sem contexto porque no dia a dia um não uso propriedades sozinhas eu sempre uso elas com métodos Então você dita para favorecer a didática é muito importante que você aprenda primeiro método depois a gente vencer propriedade Tá bom então por hora a gente nem vai tocar no nome propriedades essa daqui foi o único momento que você seja vai ter visto ele aqui como sendo um item que compõe um desses itens que a gente está estudando hoje aqui show Olha só ganha robô espaço minha tia Daia Você se lembra disso É nesse momento se você respondeu assim não eu vou recomendar fortemente que você retorne para aula de variáveis ok Por quê Por quê é isso daqui em preto minha tia Daia é uma variável tá vendo que ele tá escrito encaminhou Case é uma variável em Java as variáveis São escritas encaminhou questão que a gente tem uma variável chamada minha tia Daia que a gente aprendeu na aula de variáveis que sempre quando eu tenho antes do nome da variável uma um outro pedacinho no exemplo aqui traga robô isso é o tipo da variável então eu poderia ter uma variável que era do tipo string como que seria string com S maiúsculo espaço minha tia Daia é uma variável de texto né alfa numérico se fosse uma variável inteira seria assim 20 espaço minha tia Daia você vier uma variável do tipo int Double espaço minha tia Daia isso seria uma variável de ponto flutuante OK agora aqui não aqui da estudo assim Gaia robô espaço minha chegar é sabe de que é isso é uma variável do tipo garra robô como que é como que é o tipo Rael Gaia Hubble Olha só o tipo O cara roubou essa ele é uma classe que tem dois metros ela pode fazer login ou essa nota Entendi então esse é o tipo dessa minha variável minha tia Daia dentro da variável minha tia Gaia pode ter objetos minha tia Daia Então olha só que interessante eu tenho aqui a definição da minha tia Daia que é uma uma e se que pode ter dor que tem 2 m de fazer login e lançar nota Ok e aqui eu tô dizendo a variável minha tia Daia é do tipo ganha roubou juro por que que eu uso isso daqui por enquanto para nada por enquanto para nada o que você precisa saber que dentro do minha tia Daia pode ter um objeto do tipo minha tia Daia Ok e nesse momento deve estar sem Julho mas como assim pode ter um objeto minha tia Daia pensa no seguinte lembra-la da ela daquela explicação do minha da tia Daia fazendo várias coisas ao mesmo tempo então agora sim tinha aqui uma minha tia Daia é uma definição dela e a gente põe gerava o objeto e esse objeto então a gente alá executava as ações de fazer login lançar nota e se a gente quisesse a gente po Jurava outro objeto daqui e aí eles dois podiam fazer login lança nota fazer login lança nota esse daqui é o objeto certo é essa daqui é a variável eu posso colocar o objeto dentro da variável minha tia Daia vou mostrar pra você como faz olha só e ganha robô espaço minha tia Daia variável que recebe recebe o que é uma nova Gaia roubou lembra das caixinhas que eram as variáveis a na aula passada eu tinha que uma variável Então minha de chegar e que estava na com uma com um leigo aqui com uma uma tarde é inscrito olha essa variando essa caixinha minha tia Daia é do tipo Gaia Hubble eu vim aqui pego um objeto da robô e pum joga aqui dentro agora essa caixinha tem o que aqui dentro uma gaia roubou Seu Olhar lá dentro olha só tem uma gaia roubou aqui dentro sacou Então dentro dessa variável joguei uma gaia robô Ok pedir uma guerra robô não tinha que a definição eu gerei ir daquela aqui dentro essa caixinha quantas variáveis ganha roubou posso ter várias desde que o nome dela seja diferente mas é que eu tenho uma só então pensa que eu tenho uma caixinha escrito minha tia gaio eu fui lá e peguei e são aqui a classe Meet again ingerir um robô e joguei aqui dentro dessa caixinha minha chegar guarda Olha só dentro dessa caixa aqui na tem um objeto minha tia Daia tem um robozinho seu olho lá dentro tem um robozinho lá dentro falou oi robô tia Daia minha chegar ele falou pa tô aqui para fazer login e para lançar nota Me chama quando você precisar Tá bom júlia é isso que o robozinho que tá lá dentro da caixa fala para mim beleza show E então como você vê aqui a minha tia águia-robô falando a variável minha tia Guy agora um objeto e por ser um objeto pode executar algumas ações olha só que bacana eu falo assim minha tia Daia. Fazer login sabe o que acontece a tia Daia vai lá e usa o Júlio driver para fazer login abre o browser né executa as ações lá digita o login digitar senha e clica no botão a entrar e parou aqui aí se eu quero fazer ultrassom eu vou lá e coloco de novo minha th é ponto lançar nota Aí ele vai lá e na a tia Daia vai lá e falar Beleza agora eu vou prosseguir né Tem lá um browser aberto ela vai lá e clica no lançar nota preencha os dados da nota clique em salvar e beleza todas as vezes é que tá isso aqui vai fazer a mesma coisa queria uma nova th Joga lá dentro da caixinha minha tia Daia e lá dentro eu abri a caixinha e falou faz o Guinho ela vai lá e po faz o Guinho o chegar minha tia e por favor lança na aquela pulga lá é lançar nota entendeu porque agora é um processo automatizado de fazer isso então sempre quando eu quiser lançar nota basta rodar essas três linhas de código aqui e ela vai lançar nota para mim entendeu Júlio O que aconteceria se eu falasse assim minha tia Gaia.
Fechar fechar uma venda funcionaria não funcionar ia é porque não funcionaria Júlio porque a a classe Gaia robô não tem um método chamado fechar venda quer ver vou voltar aqui para você ver lá e olha só a classe guerra roubou só tem dois métodos ela não tem três metros se eu quiser pegar o robô também fecho vendas eu teria que programar aqui um outro método teu método fechar vendas ensinar o crescimento do que aquele faça para conseguir realizar essa ação que eu gostaria que ele realizasse por hora só pode fazer duas coisas então eu posso chamar sol fazer login só fazer nota ou chamar os dois juntos mas nada além disso por quê Porque somente os métodos que foram programados aqui dentro lugar robô podem ser executados aqui Ah entendeu a ideia de que a programação orientada a objeto você definir uma classe como a gente fez Gaia roubou ela não tem método nenhum você vai lá e adiciona métodos e dentro dos métodos e você adiciona acções e as acções podem então na fazer com que você consiga executar ações de maneira automatizada agora é o seguinte quando a gente tá falando do nada essas três linhas aqui em Java eu já disse para você a gente sempre tem que ter classes de objetos e já vão não adianta você só tem essas três linhas aqui e falar roda não tem isso em Java tá em Java tudo se baseia em objetos então se você quiser executar essas três linhas você tem que colocar suas três minhas dentro de um método e esse método dentro de uma classe e aí você fala Java Execute essa essa classe esse método e para que essa classe simétrico Rod esses três itens aqui eles então aconteça vai te agarra roubou possa rodar Então olha só que como que seria em Java para que a gente pudesse executar essas três linhas teve aqui eu teria que criar uma classe executora e dentro dessa classe executando também que criar um método principal e dentro desse método principal eu teria né O cara roubou a criando lá o a minha tia na minha chega e aí a minha th Fazendo login lançando a nossa então todas as vezes que executasse Alberto do principal que está na classe executora ele voltaria essas três linhas então executaria ação do login Ah entendeu então em Java tudo se baseia em objetos metros vou repetir para você quais são todas as classes que a gente viu hoje a gente falou da classe e junho teste que quando eu criei um objeto ou Desculpa um Júlio driver que quando eu crio um objeto ele vai lá então e pode clicar digitar abrir Browser a gente criou uma classe chamada Gaia robô que tinha dois métodos Quero fazer login e o lançar nota que quando eu crio um objeto ela pode ir lá e literalmente fazer login ou na lançar a nota a gente comentou sobre uma outra classe que a classe e caixa de música que quando ela cria um objeto ela pode ir lá então executar um som emitir um som certo e a gente agora tá falando aqui de uma classe executora na que tem dentro dela um método principal para rodar três linhas aqui que são as três e se cria um robozinho da gaiola Hubble que a minha chegar e faz login lança nota beleza isso daqui é um exemplo para você mas didático mas ainda assim conceitual de como é que classes métodos e objetos funcionam beleza classes métodos e objetos como aqueles função na próxima aula parte 2 dessa desse nosso Desse nosso vídeo aqui a gente vai literalmente abrir o inteligente Ui que é uma ferramenta uma ideia é para que a gente possa codificar em Java e a gente vai criar isso daqui na prática beleza mas você isso na próxima aula tá bom essa hora ainda não terminou então fica aqui comigo mais alguns minutinhos vamos seguir e nesse momento eu quero que você pratique aquilo que você aprendeu Então olha para esse texto aqui para essa essa afirmação e me disse a verdadeira ou falsa Tá bom olha só em orientação a objetos classes servem como modelos para criar ou instanciar objetos específicos dentro de um programa eu vou repetir em orientação a objetos classes servem como modelos para criar o instanciar objetos específicos dentro de um programa isso é verdadeiro ou falso se isso é verdadeiro mas você falou verdadeiro você acertou Júlio Quer dizer então que uma classe aquilo né que ela definição Zinha lá que a partir dela a gente pus cria um objeto é isso é isso Júlia O que que significa essa palavra instanciar instanciar é um nome dado ao ato de você pegar aqui a a classe e transformá-la em objeto partir de agora todos os dias que você falar em instanciar é isso é tirar que o criar um objeto a partir de uma classe ok vou fazer assim para ficar mais fácil criou um objeto a partir de uma classe porque ele a outro objeto a partir da classe outro objeto a partir da classe outro objeto a partir da classe tão a a criar a olhar para aquela definição e tirar algum ele de dentro alguém objeto que você possa literalmente utilizá-lo dentro do seu dia a dia tá bom legal Vamos então fazer um resumão aqui do que a gente viu hoje o curso classes para definir o modelo de objetos que vou usar no programa fácil objeto Ok esse daqui é só um modelo modelo é composto por uma a classe é composta por exemplo por métodos que podem ser então representados aqui na didaticamente por ações a serem executadas se um objeto de uma classe tem dois métodos quando eu crie um objeto A partir dela ela só pode executar duas coisas o método um e método 2 Porque só tinha dois se você adiciona um terceiro aqui aí você tira daqui um objeto ele pode executar três coisas beleza. Número dois aqui do nosso resumão métodos são as ações Que objetos poderão realizar então se eu tenho aqui um metro de fazer login quer dizer que quando eu instancio aqui um objeto A partir dessa classe aquele aquelas ações que ele pode fazer na verdade são os métodos que foram definidos o ponto número três objetos representam a materialização de uma classe tá o que eu tenho uma clássica só uma definição a como se fosse uma receitinha de bolo agora quando você cria um objeto ou quando você instanciar um objeto os dois termos são mesma coisa criar um instanciar ou você um cria aqui um objeto certo Quer dizer que você está materializando aquilo que já estava escrito E aí quando é a mesma coisa de quando sua mãe tinha uma receita de bolo ela falava assim olha o Júlio eu vou fazer aqui um bolo bolo gostoso você podia comer a receita não se esperava a sua mãe ir lá e criar um bolo a partir da receita aí você comia um bolo entendeu a ideia por quê Porque a receita na definição agora o bolo era a materialização da receita a receita é a classe o bolo é um objeto A sua mãe criando o bolo é a instanciação do objeto entendeu é bem com isso a gente sim pode fechar aqui essa nossa aula de hoje Espero que você tenha gostado muito dessa aula eu preparei ela com todo carinho para ajudar você a conseguir entender o que estão associar esses classes métodos e objetos e se você curtiu não deixa de deixar sua curtida aqui embaixo nesse vídeo comente se você tiver dúvidas Não deixe de se inscrever no canal e te Compartilhar esse vídeo com seus amigos também bom e se você quer saber mais sobre testes de software você também pode me seguir lá no Insta no Júlio dele mas Insta ou lá no meu telegram t.