Orientação a Objetos em Python - Variáveis e Métodos de Classe

  Рет қаралды 8,649

Programador Lhama

Programador Lhama

Күн бұрын

Пікірлер: 48
@__davips__
@__davips__ 3 жыл бұрын
Todo mundo ensinando instanciar um objeto e você foi além, muito obrigado, seu tutorial destravou meu código e estava empoeirando por um detalhe.
@ProgramadorLhama
@ProgramadorLhama 3 жыл бұрын
Parceiro, fico muito feliz em ajudar. Tamo junto e te desejo sucesso!
@jessica_barros
@jessica_barros Жыл бұрын
Suas aulas são boas demais. Obrigada! Finalmente estou começando a entender OOP.
@gabrielmiranda6556
@gabrielmiranda6556 Жыл бұрын
o melhor conteúdo de python que achei no youtube, meus parabéns mano, gostando muito dessa série
@hubdainternet4198
@hubdainternet4198 2 жыл бұрын
Muito boa explicação, quase ngm explica o conceito em si de orientação a objeto tão detalhadamente usando o código pra isso. Obrigado!
@arcanjosanthiago
@arcanjosanthiago Жыл бұрын
essa aula dá um certo nó na cabeça.... no começo fala-se do variável de classe, depois, diz que não é recomendado, daí antes vc alterava a variável de classe no objeto, depois no final seguindo o padrão com o cls, vai alterar a classe inteira e os objetos vão herdar a mudança..... tipo, tá tudo muito bem ensinado, mas se não prestar bem atenção nesses detalhes, a mente buga
@ViniciusSpreadAnalysisVSA
@ViniciusSpreadAnalysisVSA 2 жыл бұрын
Eu vou comentar e dar like em todos vídeos SIM! Eu pude entender contexto de forma simples e suave, Obrigado pela serie de aulas!
@JoaoBarbosa-cp7et
@JoaoBarbosa-cp7et 2 жыл бұрын
Vou ter que comentar de novo! Muito bom mesmo! Parabéns pela didática!
@ProgramadorLhama
@ProgramadorLhama 2 жыл бұрын
Fico muito feliz mesmo em ter ajudado :) Vlw pela confiança!
@JoaoBarbosa-cp7et
@JoaoBarbosa-cp7et 2 жыл бұрын
MUITO BOM! Depois do vídeo de SOLID, minha cabeça explodiu, nunca tinha estudado POO antes como estou estudando com você! Gratidão por você
@RicardoOliveira-sb5kp
@RicardoOliveira-sb5kp Жыл бұрын
Mano, seus vídeos são top demais. Obrigadão pelo conteúdo!
@luci_-ub9xx
@luci_-ub9xx 11 ай бұрын
Aula incrível, estou aprendendo muito e com gosto
@gambiando
@gambiando 2 жыл бұрын
Obrigado por mais uma excelente aula!
@renatoandre1656
@renatoandre1656 7 ай бұрын
Parabéns , excelente aula
@LucasThevenard
@LucasThevenard 3 жыл бұрын
Estou adorando essa série de vídeos, muito obrigado! Não venho da área de desenvolvimento, minha formação é em humanas, então assistir um curso como esse tipo de conteúdo, mais focado em teoria, está sendo ótimo para mim! Já tinha procurado, e só achava esse tipo de conteúdo em Java ou C#, mas queria algo em Python. Agradeço demais pelo excelente material que vc disponibilizou. Um detalhe: na anotação dos tipos, acho que você usou 'int' em alguns casos em que deveria ser 'float', não? Talvez valha a pena inserir um comentário no vídeo corrigindo...
@ProgramadorLhama
@ProgramadorLhama 3 жыл бұрын
Fico feliz em ajudar e espero que lhe seja útil. Obrigado pela correção, vou verificar aqui! Tamo junto!!
@dnzin2501
@dnzin2501 3 жыл бұрын
Verdade. A partir do minuto 16:13
@Pedro.H
@Pedro.H 9 ай бұрын
Execelente aula !
@cesaraugusto-kq4cz
@cesaraugusto-kq4cz 3 жыл бұрын
Mais um conteúdo de muita qualidade mano!!!
@ProgramadorLhama
@ProgramadorLhama 3 жыл бұрын
Tamo junto parceiro!
@pydata2.0
@pydata2.0 10 ай бұрын
Rafa, vc recomendaria o livro clean code pra quem está iniciando (ja sabendo os fundamentos do Python), mesmo ele abordando java no livro (se não estou errado)?
@pauloduque3032
@pauloduque3032 3 жыл бұрын
Rafa, parabéns pela série de vídeos. Estou percorrendo a série em busca do aprendizado em POO (com Python). Esses conceitos são totalmente novos pra mim e estou tendo alguma dificuldade de entendimento, em especial nessa aula sobre variáveis e métodos de classe. Alguma sugestão para reforçar o meu entendimento e avançar no aprendizado ? Obrigado
@ProgramadorLhama
@ProgramadorLhama 3 жыл бұрын
Cara, por hora só consigo te falar pra criar seus proprios projetos e tentar aplicar esses conceitos. Futuramente (logo em seguida na verdade kkk) tô querendo fazer uma playlist de exercícios em POO. Tamo junto Paulo! :)
@pauloduque3032
@pauloduque3032 3 жыл бұрын
@@ProgramadorLhama Obrigado pelo retorno. Acho que será bem legal ver estes conceitos na prática. Gostaria de sugerir também alguma coisa voltada para MVC, pode ser bem útil para os seus seguidores. Forte abraço
@marcryziusvalkerbur6037
@marcryziusvalkerbur6037 3 жыл бұрын
tem esse decorador classmethod, mas tem outro decorador que também é utilizado em classes que eu esqueci o nome dele; Poderia fazer um vídeo sobre ele também.
@lucianobatista6295
@lucianobatista6295 3 жыл бұрын
Fala Lhama, tudo bom? Cara eu to com uma dúvida, quando eu uso o cls é impossível utilizar também o self pra ter acesso aos atributos da classe? Eu tentei dessa forma, mas ele considera self como uma variável local do método. class Store: fee = 1.03 def __init__(self, adress: str) -> None: self.__adress = adress def showme_adress(self) -> None: print(self.__adress) @classmethod def sell(cls) -> None: return 40 * cls.fee @classmethod def change_fee(cls, self, new_fee: int) -> None: if self.__adress == "Center": cls.fee = new_fee else: print("You're not allowed to change this price")
@ProgramadorLhama
@ProgramadorLhama 3 жыл бұрын
Infelizmente não é possível. Cls ou self indicam qual o contexto do método desejado: (contexto/escopo de classe ou interno). Logo você vai ter que definir apenas um desses para o seu método
@lucianobatista6295
@lucianobatista6295 3 жыл бұрын
@@ProgramadorLhama tendi, vlww
@philiperiskallaleal6010
@philiperiskallaleal6010 3 жыл бұрын
@@lucianobatista6295 , apenas para completar a resposta do @Programador Lhama, a melhor alternativa para o seu problema é aplicar a técnica de injeção de dependência (ou mesmo de funções privadas contextualizadas via self) sobre o seu método de interesse. Nesta injeção, a sua classe deverá apresentar algum outro método (no contexto da instância - usando SELF) tal que ele retorne a sua class-variable de interesse (vou referir este método específico como "getStaticMethod". Com isso, você pode invocar esta função parcial dentro do seu método principal de interesse. Tendo em mãos a variável estática, juntamente da variável da instância da classe, aí, basta realizar a operação desejada. O truque para você criar aquele método "getStaticMethod" é fazer ele ser do contexto da instância (portanto utilizando SELF), e dentro dele, ao invés de usar "cls", você usa o nome completo da sua classe.
@deniby1
@deniby1 3 жыл бұрын
eu tenho uma duvida pode ser besta ou nao prestei atenção, porque ao final loja_centro.alterar_tarifa(1.50) print(loja_centro.vender()) print(loja_praia.vender()) - > aqui por que alterou o valor sendo que ali em cima so o valor da loja centro foi alterado.
@ViniciusSpreadAnalysisVSA
@ViniciusSpreadAnalysisVSA 2 жыл бұрын
Na minha leiga opinião foi porque mudou o contexto de tarifa dentro da classe toda, ou seja, não importa quem mudou o contexto, mas ele foi mudado na classe toda, por isso muda os valores das duas lojas!
@ronildosantos5282
@ronildosantos5282 Жыл бұрын
Alguém sabe me informar qual o nome do software que ele usa para fazer os modelos de diagrama?
@ProgramadorLhama
@ProgramadorLhama Жыл бұрын
Chama DIA. Uso pq não tem conexão com web. Caso queira uma opção online (que consiga se atrelar ao Google Drive) use um que se chama draw.io
@tiagojose3215
@tiagojose3215 3 жыл бұрын
Muito bom! Uma sugestão: aumenta o tamanho da fonte.
@ProgramadorLhama
@ProgramadorLhama 3 жыл бұрын
Ótima sugestão. Muito obrigado :)
@isabelatrindade1781
@isabelatrindade1781 2 жыл бұрын
Fiz um teste trocando o valor da variavel estatica no contexto do objeto e depois troquei o valor na variavel no contexto da classe, porém o valor do contexto da classe não modificou o valor anterior do objeto. A modificação da classe não deveria sobreescrever o do objeto ? class MyClass: estatico = 'lhama' # Variavel de classe/estatica def __init__(self,estado): self.estado = estado obj1 = MyClass(True) obj2 = MyClass(False) # Contexto do declarado - Objeto print(obj1.estatico) print(obj2.estatico) # Contexto geral - Classe print(MyClass.estatico) obj1.estatico = 'Programador' # Contexto do declarado - Objeto print(obj1.estatico) print(obj2.estatico) # Contexto geral - Classe print(MyClass.estatico) MyClass.estatico = 'Programador Isa' # Contexto do declarado - Objeto print(obj1.estatico) print(obj2.estatico) # Contexto geral - Classe print(MyClass.estatico)
@henriquesouza5116
@henriquesouza5116 3 жыл бұрын
Mano, tem uma coisa que eu não entendo... Eu fiz aquele último exemplo sem usar os métodos de classe. class A: def __init__(self, endereco): self.__endereco = endereco self.__tarifa = 1.03 @property def tarifa(self) -> float: return 40 * self.__tarifa def mudar_tarifa(self, tarifa) -> int: self.__tarifa = tarifa h = A("seila") print(h.tarifa) h.mudar_tarifa(1.50) print(h.tarifa) Se eu posso fazer os programas sem usar o método de classe, então para quê eu vou usá-los?
@ProgramadorLhama
@ProgramadorLhama 3 жыл бұрын
Então, essa é uma boa pergunta kkkkk O interpretador de Python aceita tranquilamente vc fazer sem utilizar classmethod e afins. Oq pega mesmo é quando tu vai usar algumas ferramentas de cuidado com o código, ex: Pylint. Ele vai pedir que vc utilize classmethod e vai acusar erro caso não use. Acaba sendo uma prática de cuidado com o código mesmo. Se eu ver um classmethod, eu entendo que aquele método não utiliza nenhum atributo da classe, então manusear tal método acaba sendo mais fácil pois não causaria uma alteração em estados da classe
@henriquesouza5116
@henriquesouza5116 3 жыл бұрын
@@ProgramadorLhama então o classmethod seria opcional? E muito obrigado por me responder!!✌
@ProgramadorLhama
@ProgramadorLhama 3 жыл бұрын
@@henriquesouza5116 então, em tese sim (já que o interpretador do Python ignora esse tipo de caso), entretanto, na grande maioria dos projetos que faço em python, eu utilizo o Pylint para cuidar do meu código e isso "força" a utilização do classmethod. Eu particularmente gosto pois ajuda o próximo desenvolvedor, mas dependendo do projeto (principalmente se for pequeno) podemos ignorar essa formalidade
@henriquesouza5116
@henriquesouza5116 3 жыл бұрын
@@ProgramadorLhama mais uma vez mano, vlw por me responder... Agr finalmente entendi esse clasmethod!! E tbm peço desculpas, pelas perguntas. Tmj✌
@ProgramadorLhama
@ProgramadorLhama 3 жыл бұрын
@@henriquesouza5116 kkkkk tá tranquilo parceiro. Pode deixar tua dúvida nos comentários que eu geralmente respondo a galera. Se tiver mais, tamo aqui. Sucesso!
@pydata2.0
@pydata2.0 10 ай бұрын
esta bugou um pouco os neuronios rsrs
@danilo_salve
@danilo_salve Жыл бұрын
Até agora esse é o único conceito que não foi bem explicado.
@popaheffner
@popaheffner Жыл бұрын
Cara, explicação mais mastigada do que essa aula ainda não vi aqui no KZbin. Até um chimpanzé de laboratório vai entender depois dessa aula.
@ProgramadorLhama
@ProgramadorLhama Жыл бұрын
Kkkkk tamo junto, vlw! :)
Orientação a Objetos em Python - Métodos Estáticos
8:21
Programador Lhama
Рет қаралды 5 М.
Accompanying my daughter to practice dance is so annoying #funny #cute#comedy
00:17
Funny daughter's daily life
Рет қаралды 20 МЛН
Как Я Брата ОБМАНУЛ (смешное видео, прикол, юмор, поржать)
00:59
Молодой боец приземлил легенду!
01:02
МИНУС БАЛЛ
Рет қаралды 2,1 МЛН
Orientação a Objetos com Python - Como criar uma Classe
20:24
Bóson Treinamentos
Рет қаралды 34 М.
Rotina de Um Analista de Testes (QA)
9:28
Izac Jr.
Рет қаралды 19 М.
Rapidinha pythonica #7 - Classe, instância e objeto
12:57
Eduardo Mendes
Рет қаралды 15 М.
Como Sair do Zero em Classes no Python - Self e Init Explicados
55:10
Hashtag Programação
Рет қаралды 209 М.
Métodos de Classes - Python Orientado a Objetos - Aula 36
11:09
Otávio Miranda
Рет қаралды 46 М.
Variáveis em Python - Curso de Python #03
7:06
CFBCursos
Рет қаралды 34 М.
Como usar Atributos em Classes - Orientação a Objetos com Python
10:05
Bóson Treinamentos
Рет қаралды 10 М.
Aulão Python sobre Classes, Objetos, Métodos, Herança, Construtor
52:15
Accompanying my daughter to practice dance is so annoying #funny #cute#comedy
00:17
Funny daughter's daily life
Рет қаралды 20 МЛН