Pare de Usar TypeScript - Interfaces (Types vs. Interfaces)

  Рет қаралды 43,751

Lucas Montano

Lucas Montano

10 күн бұрын

✅ Torne-se membro para obter aulas técnicas exclusivas comigo:
/ @lucasmontano
Article: Stop Using TypeScript Interfaces
dev.to/afzalimdad9/stop-using...
💜Comunidade do Discord: / discord
❤️ Ajude o Rio Grande do Sul, informações em lucasmontano.com/
✅ Meu site parece que foi feito por um DEV backend né?! Mas lá tu encontra tudo que precisa saber sobre o que tenho feito e onde estou:
lucasmontano.com/
✅ 𝗢𝗦 𝗠𝗘𝗟𝗛𝗢𝗥𝗘𝗦 𝗩𝗜𝗗𝗘𝗢𝗦 𝗗𝗢 𝗖𝗔𝗡𝗔𝗟
▸ 3,700,000 requests do MrBeast na API do X (eu tentei e não foi barato)
• 3,700,000 requests do ...
▸ Programação realmente é muito difícil?
• Programação realmente ...
▸ DEV Precificando Projeto tipo Netflix (bem simples)
• DEV Precificando Proje...
▸ Gemini Impressiona ao Superar Humanos : Nova IA do Google • Gemini Impressiona ao ...
▸ OpenAI choca o mundo +1 (mas Sora não é sobre gerar videos)
• OpenAI Sora não é apen...
▸ IA que utilizo & a mentira da Gemini (Nova IA do Google)
• IA que utilizo & a men...

Пікірлер: 229
@luizhenriquelobo
@luizhenriquelobo 8 күн бұрын
Esse final com o Lucas dando like no comentário e o mesmo virando um NaN e ele "isso foi feito em TS" eu rachei, KKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKKK
@ApenasmaisumDev
@ApenasmaisumDev 8 күн бұрын
O Cara escreve um artigo sem saber usar direito, deve ser um Sênior de 6 meses.
@filipeleonelbatista
@filipeleonelbatista 8 күн бұрын
Ou gerado por IA 😂
@potors
@potors 8 күн бұрын
@@filipeleonelbatista foi o que eu pensei, ele com certeza mudou alguma coisa mas tava muito bêbado porquê esse final não teve nexo nenhum
@NetoNeto
@NetoNeto 8 күн бұрын
@@filipeleonelbatista lendo o texto, eu notei umas palavras fora do lugar, e aí pensei que o cara usou um translate da vida para copiar texto de artigo gringo. Para piorar, o exemplo do cara é o mesmo da documentação original... tudo muito estranho os elementos usados para construir o artigo do cara. Pode mesmo ter sido algo gerado automaticamente
@randerins
@randerins 7 күн бұрын
traduzido pelo Google
@LucasLima-hj5sg
@LucasLima-hj5sg 7 күн бұрын
"Quando eu virar sênior, não vou falar sobre o que não sei. Tem que ser humilde né kkk" Eu com 2 meses de sênior: "Saiba porque você deve usar 'x' e não 'y'"
@tarcisiome
@tarcisiome 8 күн бұрын
O melhor é você fazer um código/tipo mais fácil e legível para o próximo DEV, porque o próximo DEV pode ser você.
@filipeleonelbatista
@filipeleonelbatista 8 күн бұрын
Python no C# do proximo dev. Ninguem pensou em mim na minha vez.
@tarcisiome
@tarcisiome 8 күн бұрын
@@filipeleonelbatista essa foi boa kkk
@peristiloperis7789
@peristiloperis7789 8 күн бұрын
No meu caso o próximo dev sempre sou eu. E eu nunca entendo o que eu mesmo escrevi. Só preciso de 3 dias pra tudo tudo ser apagado da memória lol
@jbfaneto
@jbfaneto 8 күн бұрын
vou colocar essa gambiarra aqui, vai ser a ultima vez que eu irei mexer no código -> eu mesmo na semana que vem sofrendo para lembrar o que foi aquilo que eu fiz hahaha
@peristiloperis7789
@peristiloperis7789 7 күн бұрын
@@jbfaneto exato! mas aí que vc começa a melhorar d verdade.
@lucasjsantos2260
@lucasjsantos2260 8 күн бұрын
Amigos. Type existe até em Haskell que é uma linguagem puramente funcional. Interface é um conceito específico de OO. Comparar Type com Interface faz tanto sentido quanto comparar um alicate com uma escova de dente.
@douglasmiguel7149
@douglasmiguel7149 8 күн бұрын
a melhor analogia para este exemplo de interface e implementacao que ja vi foi quando decompilei o minecraft.. la temos a interface block e todos os outros blocos implementa essa interface, é muito legal! fica aqui o exemplo: interface Block {} class RedStone implements Block {}
@ps_layne
@ps_layne 8 күн бұрын
5:40 "eu só posso tá ficando maluco" esse é o sentimento
@246bits
@246bits 8 күн бұрын
"Person extends Job" é uma loucura que não faz nenhum sentido na minha cabeça. Uma pessoa NAO É um trabalho, ela TEM um. O Job precisaria entrar como atributo da classe Person assim como nome e idade...
@joaoperolimasaar
@joaoperolimasaar 7 күн бұрын
em go isso fica delicinha, fazer uma composition e ser feliz
@amagami1008
@amagami1008 5 күн бұрын
Mas os humanos nasceram para trabalhar e apenas isso
@magodevofficial
@magodevofficial 8 күн бұрын
Tu reconhece um javascripto quando ele vem com o papo de "qual é melhor que qual"
@brendonoliveira2142
@brendonoliveira2142 8 күн бұрын
No projeto que trabalho eu utilizo bastante a funcionalidade de Merging das interfaces para tipar os propriedades dos componentes de DSMs (cada dsm é um pacote npm). Tenho um "DSM" common que declara componentes que recebem um token de cor, mas quem de fato define quais são os valores que existem para o token de cor são os DSMs especificos. - DSM Base -> Define Interface BaseColor - DSM Components 1 -> Redefine Interface BaseColor com seus valores unicos - DSM Components 2 -> Redefine Interface BaseColor com seus valores unicos O ponto é que como um projeto pode utilizar multiplos DSMs, utilizar o Merging nas interfaces se torna muito mais escalavel e não preciso ter uma "dependencia circular" entre os pacotes.
@JonatanEdOrtiz
@JonatanEdOrtiz 8 күн бұрын
Às vezes eu acho que pra escrever esses artigos os caras simplesmente começam a estudar algo novo e então colocam dentro do artigo todas as dúvidas que eles têm enquanto elas surgem e depois no próprio artigo vão anotando o que descobrem no meio do caminho até chegar à conclusão que responde a dúvida que ele tinha. Aí escrevem isso de uma forma como se estivessem ensinando, mas na verdade estão aprendendo.
@kbarreto
@kbarreto 8 күн бұрын
Profundo
@jordhan
@jordhan 8 күн бұрын
Eu to fazendo um frontend todo em Typescript, minha regra geral é: Eu preciso limitar apenas UM valor? Type. Exemplo: type positions = "left" | "center" | "right" | undefined; Preciso de algo para garantir quais campos vão se passado de A para B? Interface.
@rodrigobleao
@rodrigobleao 3 күн бұрын
eu tbm estava trabalhando assim, mas esse vídeo começou a me fazer questionar se isso é bom kkk
@lucasfelipe-ze5sy
@lucasfelipe-ze5sy 8 күн бұрын
O único problema das interfaces no TS é realmente o type merging, pois você pode acidentalmente declarar duas interfaces com mesmo nome e usá-las no mesmo escopo, o que poderia levar a um erro que não seria imediatamente identificável
@GabrielSouza-sz5ju
@GabrielSouza-sz5ju 8 күн бұрын
Você também pode usar `implements` com tipos em TypeScript. Tipos possuem todas as funcionalidades de interfaces (menos a habilidade de ser modificado, o que pode na verdade ser um benefício) com uma sintaxe mais simples. Além disso tipos são mais versáteis, podendo conter não apenas objetos como também pode ser um apelido pra outro tipo mais simples ou union (como mostrado no vídeo). O recomendado é usar tipo por padrão a não ser que você queira que seu contrato seja modificado. Pra quem quiser saber mais sobre tipos x interfaces checa esses vídeos (em inglês): /watch?v=zM9UPcIyyhQ /watch?v=Idf0zh9f3qQ /watch?v=oiFo2z8ILNo
@TheJunioGG
@TheJunioGG 7 күн бұрын
Ótimo comentário, o Lucas no geral tem razão, o problema é que a abordagem do Typescript para interfaces e tipos ficou uma PORCARIA. sem contar que o cara aprendeu Typescript somente para front e usar no projeto react dele, onde ele só precisa passar tipos ou interfaces para uma Props de um Component. Isso faz pensarmos em pq as pessoas estão realmente usando Typescript no frontend é um monte de copia e cola.
@nathanmiguel76
@nathanmiguel76 8 күн бұрын
Montano tá ficando igual o Vegeta.
@phlimma
@phlimma 8 күн бұрын
Ele está virando o Pica-Pau com esse topete dele.
@israelpablocoelho2229
@israelpablocoelho2229 8 күн бұрын
ahahhaahhaahahhaha
@TheDanilove90
@TheDanilove90 8 күн бұрын
Ele vai ser escalado na continuação de Dragon Ball Evolution
@williamroger9375
@williamroger9375 8 күн бұрын
Mais um excelente vídeo, gosto muito de ver os vídeos do Montano porque tem sempre uma pequena aula dentro do vídeo.
@mateuscardoso9635
@mateuscardoso9635 3 күн бұрын
Muito foda, não tinha parado pra ver esse canal ainda.
@bcampera
@bcampera 8 күн бұрын
Como javeiro, não entendo a ideia interfaces com campos 😢 pra mim deveria ser definição de comportamentos públicos
@davidalexandre4103
@davidalexandre4103 8 күн бұрын
Eu penso da mesma forma kkk, pra mim interface é contrato pra colocar actions, métodos, voids e etc, se for para colocar campos não vejo pq não usar type ou até mesmo class
@LucasSantos-oc6fx
@LucasSantos-oc6fx 8 күн бұрын
Como um c#peiro devo concordar e pra mim em todo momento que ele disse interface eu entendia como classe abstrata
@dasmonstrum27
@dasmonstrum27 8 күн бұрын
@@LucasSantos-oc6fx TypeScript veio do C# e não tem nenhuma diferença gritante nas interfaces entre eles, só um ou outro truque minúsculo novo do dotnet 9
@mso2000
@mso2000 8 күн бұрын
É porque javeiro não sabe que em linguagens modernas (kotlin, Swift, etc), você consegue expor campos apenas como leitura, então você não precisa de getters e pode colocá-los nas interfaces sem problema... 😜
@titbarros
@titbarros 8 күн бұрын
A verdade é que a nomenclatura do TS é ruim. Na real, é tudo tipo. Lembra que é js. Tudo é object. A principal diferença é a capacidade da interface ser extebdida em qq ponto da aplicação. Ela é um tipo "global". E isso é bom apenas em alguns casos e muito perigoso em outros. Esse é o ponto do artigo. Mas bem fraquinho
@menegatmarcelo
@menegatmarcelo 8 күн бұрын
Essas discuções em TS são as mais divertidas! Seja o que for o assunto, no final tudo se resume a Obejtos e prototypes. JS rules, TS sempre foi e sempre vai ser só um linter gourmentizado! 🤷‍♂
@matheusaugusto6701
@matheusaugusto6701 3 күн бұрын
Caramba, Lucas, obrigado por esse vídeo. Estou num projeto há dois anos e hoje fui revisar essa parte de tipagem que fiz lá atrás e as entidades estavam tipadas com type. Até mesmo algumas tipagens que herdavam propriedades de outras estavam declaradas como type entidade2 = entidade1 & {...}. Troquei para interface entidade2 extends entidade1 {...} Dessa forma fica muito mais semântico
@REDIDSoft
@REDIDSoft 8 күн бұрын
excelente vídeo Lucas Montano do canal Lucas Montano, se o cara fala que types são melhores que interfaces ou vice-versa, ele provavelmente não entende de types nem de interfaces kkkk, sucesso!
@devspeedrun
@devspeedrun 8 күн бұрын
Regra de um typescript, esqueça tudo que aprendeu em POO
@helciopandelo
@helciopandelo 5 күн бұрын
Nem a pau, é justamente pra vc usar. Ele tem uma "flexibilidade" que vem herdada do JS, mas é pra ser POO normal. Em resumo, n é pq te permitem fazer "cagada" que é pra vc fazer kkk
@devspeedrun
@devspeedrun 5 күн бұрын
@@helciopandelo Sei disso, mas digo pela maioria dos iniciantes ou aqueles que so utilizam a tech sem saber do background, que so copia de tutorial no yt
@joaov6727
@joaov6727 2 күн бұрын
22 min aprendendo mais doq aprendi em 1 ano de faculdade, parabéns lucas montano do canal lucas montano
@DriwChannel
@DriwChannel 8 күн бұрын
A real é que interface não existe para TypeScript, o que existe é só uma formatação, um autocomplete. No Java por exemplo você consegue ver que a interface existe por reflection, no typescript ela se quer vai existir quando virar javascript (.js). Interface é quase uma doc no TypeScript. O BO mesmo é o cara tentar explicar algo sem conhecer o básico do POO, acredito que a intenção dele seria a de tipar um objeto de GET api/... ao invés de usar interface, o objetivo aqui seria transformar o retorno da API em objeto tipado ao invés de objeto anônimo que é a mesma coisa que você faz no "let obj = { ... }" @edit se bobear com os lint da vida você consegue configurar pra não ser possível a interface ser redeclarada, até por que tem coisas que não é o typescript em si, mas sim os lints da vida
@gabrielcanuto3321
@gabrielcanuto3321 8 күн бұрын
Seguiu o mesmo roteiro do primeagen. Mas cá entre nós o conteúdo ta em português e mostra justamente que existe muito conteúdo por ai não tão bom (e as vezes dando informações erradas como este que foi avaliado). Precisamos de mais caras como você, fortalecendo os dev br. Parabéns
@LucasMontano
@LucasMontano 8 күн бұрын
não sei se ele gravou sobre esse artigo ou não, talvez… também pego conteúdo do Reddit
@brenoepic6946
@brenoepic6946 7 күн бұрын
prime mentioned
@LucasMontano
@LucasMontano 7 күн бұрын
The Name: Lucas Montano do canal Lucas Montano
@Kratos345ful
@Kratos345ful 8 күн бұрын
Eu sou expert em Java, quando eu uso TS eu tento usar classe, type e interface como se tivesse em Java, e funciona de boa. Esse drama em cima de OO é coisa de quem só aprendeu o basico de JS e foi pro riéquiti
@bishop244k
@bishop244k 8 күн бұрын
Concordo, e costumo utilizar utilizar interfaces para estabelecer contratos de classes, e tipos para todas outras coisas como DTOs etc.. a criação de tipos complexos ou variável usando types fica bem mais legível, exemplo: type Person = { name: string lastname: string } type Street = { city: string state: string n: number } type Job = { position: string joinedAt: string } type PersonalInformation = { maritalStatus: T } //junção de tudo usando types e interfaces type Master = Person & Street & Omit & PersonalInformation interface Master1 extends Person, Street, Omit, PersonalInformation {} particularmente, a escrita de types pra mim fica mais fácil de ler e em interfaces você é obrigado a adicionar {} para o Typescript entender que você quer implementar uma interface, o que não faz muito sentido.
@Diego_oliverira_dev
@Diego_oliverira_dev 8 күн бұрын
meu primeiro trampo era laravel com vue quando vi que nao usava TypeScript no vue fiquei mt feliz kkkkkkk TypeScript e mt chato
@jhony_tech
@jhony_tech 8 күн бұрын
quando vejo typescript no projeto dá até um ruim kkk
@alamo_DevFlow
@alamo_DevFlow 8 күн бұрын
eu já ao contrário. vê um projeto JS sem type me faz querer sair correndo.
@lucasfelix7788
@lucasfelix7788 7 күн бұрын
​@@alamo_DevFlowAqui também 🤚 Quando vejo um projeto em javascript que não usa typescript, a gastura vem forte 😅
@jonasfrancomatador1277
@jonasfrancomatador1277 8 күн бұрын
Eu acho que ele queria explicar as extensão das interface quando usadas em uma função: "function xxx()" onde pessoa receber a tipagem person e job. Mas seu exemplo esta vendo somente a interface sendo usada em classe. E nesse caso ele deu exemplo de um objeto que receber uma interface que receber outra interface como extensão.
@rawa1off
@rawa1off 8 күн бұрын
aproveita q ta começando no neovim e já faz um vídeo configurando o seu
@Hakunushi
@Hakunushi 4 күн бұрын
em typescript as interfaces são implícitas, ou seja, qualquer objeto que contenha as propriedades e métodos da interface mesmo sem implementa-la, serão consideradas válidas para a checagem de tipo, os tipos vão sofrer a mesma inferência. A diferença então está apenas na sintaxe e no fato que tipos não se estendem mas podem na verdade ser compostos com & e |. Como dito, tipos e interfaces não precisam necessariamente serem implementados, basta o objeto sendo inferido se encaixar dentro do tipo ou interface. Mas para mim a diferença crucial é o fato de a interface você poder implementar ela explicitamente em suas classes, deixando mais clara a intuição da classe, enquanto o tipo é apenas implícito oq faz ele mais util para inferência de camadas anêmicas de dados como dtos que carregam dados externos
@FWCODING
@FWCODING 8 күн бұрын
Esse mic é muito bom, da pra ouvir os tuc tuc do teclado bem de leves kk
@GKG0REE013
@GKG0REE013 4 күн бұрын
17:06 observe como o Angular trabalha: export class StatusComponent { constructor(private data: DataService) {} }
@keonys1
@keonys1 6 сағат бұрын
Eu prefiro utilizar types pra declaração de funções e objetos que não contenham nenhum comportamento. Dessa forma o LSP me ajuda na hora de chamar essa função me dizendo exatamente o que preciso passar pra ela, não apenas um nada informativo `interface Person` me obrigando a entrar na definição da função
@murilohasse5694
@murilohasse5694 8 күн бұрын
public class Cat extended Car @Overwride public void buzina(){ sout("Miau");} Essa é a vibe do autor do artigo
@mateuscardoso9635
@mateuscardoso9635 3 күн бұрын
Claramente você não está habituado ao incrível conceito de gatocarro que é a mais nova moda em París. kkkkkk
@felipeols9132
@felipeols9132 6 күн бұрын
Vim pelo Mano Deyvin! Recomendação boa demais!
@silasbispo01
@silasbispo01 8 күн бұрын
17:00, Sim, é possível fazer isso com Typescript kkkk injeção de dependencia isso
@nichi785
@nichi785 8 күн бұрын
Esse vídeo foi incrível kkkkkkkkkkkk
@sedraccalupeteca5769
@sedraccalupeteca5769 4 күн бұрын
Isto falo por mí, na maioria dos projectos que trabalhei com React e Vue usando TypeScript, a ideia de interface são aplicadas como DTO e tratadas como classes concretas, algo que de inicio mexeu com os meus conceitos, eu que sou do mundo Java ver uma interface com propriedades e sem nenhum método de contrato
@Bruno_Rasq
@Bruno_Rasq 8 күн бұрын
É só fazer certo que vai dar certo.
@JonatasBuenodoLivramento
@JonatasBuenodoLivramento Күн бұрын
Esse vídeo apesar de muito divertido (parabéns Lucas é sempre muito top seus vídeos) e os comentários irados contra o artigo só existiram por que vocês insistem em tentar olhar para o TS como se ele fosse uma linguagem OO, a única coisa que o TS é, é um Lint que faz o editores de textos terem um autocomplete, para que os bugs voltados a tipos sejam pegos em tempo de desenvolvimento Enquanto isso não entrar nas suas cabeça, vão ficar putos aí com o TS atoa quando comparar com linguagem OO Eu sou puto com o TS mas por outros motivos rs
@devweb7926
@devweb7926 8 күн бұрын
É exatamente isso que tu falou no início do vídeo 😂😂😂
@HelderOliveira
@HelderOliveira 5 күн бұрын
Cara qual site/app é esse de desenho pra fluxo? Achei incrível!
@christoffersantos3419
@christoffersantos3419 5 күн бұрын
Artigo compara chave philips com chave de fenda e o problema de exemplo é qual é melhor usar para pregar um quadro na parede.
@LorDudugama
@LorDudugama 4 күн бұрын
Usa Type em variáveis e usa Interfaces em classes. Um artigo inteiro resumido a isso.
@hallexcosta
@hallexcosta 7 күн бұрын
Eu sempre opto por usar interfaces apenas para métodos, e tipos para objetos mais complexos (e como via de regra não defino métodos para tipos apenas utilizo para definir propriedades que levam tipos primitivos ou outros tipos). Não sei se essa é a melhor forma de se usar mais atualmente para mim vem funcionando e consigo ter um controle nítido de quando usar cada uma delas. P.S: Alguns podem estar pensando "E quando você precisa usar uma propriedade de uma classe que implementa uma interface?" Jogo essa responsabilidade para um método getter que será definido dentro da interface e implemento.
@hallexcosta
@hallexcosta 7 күн бұрын
Tirando a parte em que o código pode acabar ficando mais verboso, vocês acham que tem algum outro ponto ruim de seguir por esse lado no uso de tipos e interfaces?
@felipeoriani
@felipeoriani 6 күн бұрын
Louco mesmo é pensar que um LLM pode ser treinado com esse artigo ai haha
@renanmachado4158
@renanmachado4158 10 сағат бұрын
Jimmy nêutron sem massagem nos palpiteiros 😂😂😂
@danilohenrique4730
@danilohenrique4730 8 күн бұрын
Eu costumo utilizar Interfaces no TS porque, como no fim das contas ele é apenas um superset do JS, ele é JS. Então os tipos são predominante dados de maneira anônima e fracamente tipada (porque é JS) e apenas obedecem o contrato da Interface, que é o principal ganho dessa bodega de TS Se não é pra usar Interface, uso o JS direto preula Esse cara do artigo ta doidão nos javascrpts
@noriller
@noriller 6 күн бұрын
Um dos problemas é que em um projeto grande, usando interfaces, uma hora vai querer usar o mesmo nome que já foi usado em outro lugar. Dai... você quer usar e vai ver que precisa implementar um monte de coisa aleatória que não precisa só por que foi definido numa interface de mesmo nome em outro lugar. E aquilo de passar o "job" no construtor do tipo... não é só generics?
@yuritavares1916
@yuritavares1916 8 күн бұрын
17:06 "Uma pessoa não é o seu trabalho. Tu é muito mais que o seu próprio trabalho" - DO CANAL LUCAS MONTANO, Lucas Montano
@felipebiondes5434
@felipebiondes5434 8 күн бұрын
Nao bugou minha mente, simplesmente faz muito mais sentimento ser assim kk
@yrds96
@yrds96 4 күн бұрын
"Person extends Job" é o Steve Jobs, galera. Não confundam
@GCoder-sl1sq
@GCoder-sl1sq 8 күн бұрын
Esse é claramente o mal de uma pessoa que só estudou Typescript no conceito de OOP... triste. Voce esta redondamente correto Lucas trabalho com typescript a alguns anos e é exatamente isso que tu falou.
@danielguirra1901
@danielguirra1901 8 күн бұрын
Obrigado Lucas Montano do Canal Lucas Montano, por liberar o almoço.
@rodrigopim7693
@rodrigopim7693 8 күн бұрын
Concordo contigo. Mostra pouca fundamentação em OOP.
@TheMathues123
@TheMathues123 8 күн бұрын
lucas montando do canal lucas montano, em typscript frequentemente se usa interface como tipo e vice versa para a mesma função, tipar algo para não ficar como "any". Acredito que por isso o autor fez o post.
@danilonamitala4209
@danilonamitala4209 8 күн бұрын
Lucas, nesse seu exemplo em Kotlin (6:48) a relação de objetos ainda não estaria errada? Para mim uma vez que Job pode ser um objetos com outras propriedades, como salario, empresa, etc o correto seria colocar como sendo uma associação, ou seja Job seria uma Propriedade de pessoa, não uma extensão
@yuribarros5826
@yuribarros5826 8 күн бұрын
Lombok ajuda muito na criação de getters e setters, ele faz full automático.
@m__c_s
@m__c_s 8 күн бұрын
interface pra OO (classes e td mais). types pra todo o resto. se n for usar classe acho q mistura conceitos
@ferrari1645
@ferrari1645 8 күн бұрын
Tive uma evolução como programador, ainda sou estudante e posso dizer que eu quase entendi esse vídeo. Kkkkk
@thairincksilva
@thairincksilva 8 күн бұрын
aiiii lucas montano
@jpcodex
@jpcodex 8 күн бұрын
Person extends Job foi de doer. Esse estudou ADS na Uni et cetera.
@devful_
@devful_ 8 күн бұрын
Em orientação a objeto eu entendo que no primeiro exemplo do Lucas, continuou como: Lucas é uma Pessoa e Lucas é um Job… ele não deveria ter Job como atributo ao invés de “implementá-lo”? Em OO é importante distinguir a diferença entre ser e ter. Apesar de que no TS, interface permite ser usada para definição de estrutura de “objetos” ao invés de apenas assinaturas de comportamentos
@zhunk1831
@zhunk1831 6 күн бұрын
Lucas , tu viu a IA que irá concorrer como parlamentar em UK ?
@pugboladao
@pugboladao 8 күн бұрын
Quais foruns que o Lucas usa para ler esses artigos?
@gleitonfranco1260
@gleitonfranco1260 8 күн бұрын
Se for UML, a seta vai para a dependência/superclasse/interface
@diegovinicius4186
@diegovinicius4186 8 күн бұрын
O maior problema no typescript quanto a types e interface e seu uso, ai o pessoal geralmente quer usar somente uma coisa, entao ou usa types em tudo ou usa interface em tudo, e em sua grande marioria e so para definir como um dado viria de um lado para o outro... algo muito simples para entender quando utilizar, e que interface e utilizado para criacao de novas classes em seu baixo nivel, ja o types deveria ser utilizado para tipar dados que serao navegador pela plataforma, como dtos e afins
@filipeleonelbatista
@filipeleonelbatista 8 күн бұрын
Const xpto:any; Esse é o jeito certo de tipar em Typescript
@user-zu2bm7bb6u
@user-zu2bm7bb6u 7 күн бұрын
Lucas Montano tá quase virando o PrimeAge hehehe
@LucasMontano
@LucasMontano 7 күн бұрын
The Name: Lucas montano do canal Lucas montano
@amar0
@amar0 8 күн бұрын
Quando estava aprendendo a utilizar o angular, que usa o TS sempre achei estranho criarem interfaces dessa maneira
@randerins
@randerins 7 күн бұрын
Atualmente, venho escrevendo (na verdade corrigindo) testes pra essa certa library promissora em TS que é gringa e gerou um grande impacto na comunidade no último ano. Esse certo arquivo de testes me foi apresentado de forma explícita, contém mais de 1200 linhas. Tenho corrigido e feito todos os testes passarem em menos de 1 hora (o que tava levando mais de 2 semanas pra eles), porém, com essa tipagem exagerada que tão mais pra warnings, fico em dúvida se ainda vale a pena filar um PR. E esses warnings não afetam em nada ao código da lib. Enfim, parece que TS gera mais problemas do que os resolve, em certas situações
@matrizoculta
@matrizoculta 8 күн бұрын
21:25 nao tankei dksksksk so nao deve ter mais artigos assim pq devem ter dado NaN na hora da postagem
@heydevs1494
@heydevs1494 8 күн бұрын
05:39 - "Como assim uma pessoa estende um job?" 05:45 - "Eu não sei, eu acho que eu fiquei maluco. Eu só posso tá maluco, cara." Eu ri muito. Kkkkkkkkkkkkkkkkkkkk!
@JuanElorriagaYT
@JuanElorriagaYT 7 күн бұрын
Desanimei com Javascript/Typescript. Recentemente decidi usar Node.js e uma biblioteca chamada whatsapp-js para fazer um bot simples para meu numero do whats (pq não tenho grana para pagar um twilio da vida nem a api oficial no momento). Depois de semanas a biblioteca começou a dar problema, fui atrás de outra e também estava/ está com problema. Fui atrás e descobri que o problema vem da própria versão do Node.js. Consegui corrigir trocando a versão e dois dias após começou a dar erro novamente, agora o erro vem do whatsapp atualizar e a biblioteca ter parado do receber suporte. Obviamente vou corrigir e atrás de solução, mas ficar pra sempre refém de atualização e um terceiro me desanima muito. Tô errado? Com certeza, mas o desânimo é real. Não sinto mais que eu tenha tempo de vida suficiente para ficar estudando e atualizando a cada semana tudo seguindo mudanças do node.js, TS e o que for.
@DanielRios549
@DanielRios549 8 күн бұрын
O negócio é usar Zod
@cebolinharenato
@cebolinharenato 8 күн бұрын
Mas no caso de Typescript na maioria dos casos de uso interface e tipo funciona igual. Você só quer definir quais os campos existem no objeto porque o objeto continua sendo algo dinâmico. Por exemplo você recebe um json de uma api, você só quer definir quais os campos esperados que vai vir nessa resposta tanto usar type como interface funciona igual. Apesar de conceitualmente serem coisas diferentes na prática funcionam como se fosse a mesma coisa por isso existe essa discussão sobre qual é melhor no caso de Typescript.
@Shaman784
@Shaman784 8 күн бұрын
Droga, achei que era um vídeo contra o TypeScript. Vim correndo. Não vejo a hora de as pessoas perceberem logo que é só não usar TS e pronto.
@RodrigoVazRocket
@RodrigoVazRocket 8 күн бұрын
O erro é usar TypeScript. Sempre prefirar depender do que extender.
@silasbuarque373
@silasbuarque373 8 күн бұрын
Salve Montano!! Tem como liberar os vídeos de GO para os membros não? To afim de maratornar, mas não da só para membros T.T
@LucasMontano
@LucasMontano 8 күн бұрын
Tem vou liberar aqui 👍
@rodrigomartins3495
@rodrigomartins3495 5 күн бұрын
poderia disponibilizar a sua config fo neovim??
@DannielCristie
@DannielCristie 8 күн бұрын
2:56 eu ri alto hahahaha
@eletricguitarguy
@eletricguitarguy 8 күн бұрын
Cara, isso me deixava meio puto no TS, mas o que eu faço é: Preciso garantir assinaturas de métodos? Sim, então uso interfcae Quero tipar um objeto / alguma coisa, uso type. Quando devo usar Type? Simples: - Está integrando alguma API e quer tipar o retorno ou dados da requisição - Precisa tipar uma requisição e resposta da sua API - Precisa tipar retorno de dados do seu db Tudo isso vai de Type, caso contrário, ou seja, se o seu propósito é abstração / assinatura de métodos / inversão de controle, vai se interface. Qual a dificuldade disso? 🤣 O problema é que no TS, ambos parecem muito similar, mas tu precisa usar seu cérebro pra usar do modo certo.
@charliesamoel8828
@charliesamoel8828 8 күн бұрын
Comecei a me arrepender da faculdade quando o professor não sabia o que era solid.
@gabiromilk
@gabiromilk 8 күн бұрын
11:56 madeira class
@henriquenas
@henriquenas 8 күн бұрын
eu tenho bastante raivinha de typescript... apesar de ter pago muitos anos de boletos meus, mas depois que eu conheci Dart, não tem como, Dart é muito bem né meu ?
@nennogabriel
@nennogabriel 8 күн бұрын
simples... se quer usar interface use o InterfaceScript, mas se está usando TypeScript use types..... precisa colocar tag de hironia?
@alexsander33set
@alexsander33set 8 күн бұрын
Bem que poderia estar liberado no nível apoiador…
@ramonmaximiliano3557
@ramonmaximiliano3557 7 күн бұрын
TypeScript é o que você usa pra evitar os erros que você não teria se não usasse TypeScript
@bruno_lpw
@bruno_lpw 8 күн бұрын
Em TS eu vejo mais problemas em usar interfaces quando deveriam ser classes do que com types.
@micasntna
@micasntna 8 күн бұрын
Ele só quer ser fancy deixa o cara Lucas kkkkk 😂
@joaoperolimasaar
@joaoperolimasaar 7 күн бұрын
Interface é para manter contratos, mas mais importante garantem a utilização do principio de liskove no seu código, então na minha cabeça de javeiro isso ae nao faz sentido msm.
@costadev8970
@costadev8970 8 күн бұрын
Person extends Job, ou seja, você é o seu trabalho.
@lucacoLg
@lucacoLg 7 күн бұрын
Que aplicativo é esse de rascunhos e diagramas que vc usa??
@VanderleiRobertoMoretto
@VanderleiRobertoMoretto 8 күн бұрын
Estou na "metade" de um sistema relativamente grande usando apenas JS (Node+Express+PostgreSQL) e sinceramente não vi necessidade de usar typeSacrifício, oops, Typescript e nem ORM - 2 coisas muito hypadas! Aah, mas não está 100% em produção, blá, blá, blá Mas duvido que, se caso apareça algo por culpa da "tipagem" , a solução vá demorar mais do que a metade do tempo que eu teria perdido com as amarras do TS!
@chuanigor797
@chuanigor797 7 күн бұрын
Alguém sabe me dizer o nome do site que ele utiliza para fazer os desenhos ?
@impervictor
@impervictor 7 күн бұрын
Person extends Job, boa sorte para cadastrar o pai do Chris no sistema
@dasmonstrum27
@dasmonstrum27 8 күн бұрын
Darei direito a dúvida e vou acreditar que o artigo foi escrito por IA (pior que parece mesmo, algumas palavras usadas entregam). Inaceitável algo além de estagiário acreditar nisso.
@smokwa7341
@smokwa7341 8 күн бұрын
Resumo do artigo: Não tem porque usar interface quando você não está trabalhando com POO...mas também não tem porque NÃO usar interface quando você não está trabalhando com POO. No fim, é só mais uma discussão boba de um assunto pouco relevante e que não agrega no seu desenvolvimento :P
@meuspequenosvideozinhos9243
@meuspequenosvideozinhos9243 7 күн бұрын
Alguém sabe o programa que é usado no vídeo para criar o diagrama?
@phw4865
@phw4865 2 күн бұрын
Alguem sabe qual app ele esta usando para desenhar ?
Javascript MENTE
15:14
Lucas Montano
Рет қаралды 25 М.
TypeScript 5.5 is a BANGER
9:16
Matt Pocock
Рет қаралды 56 М.
ОСКАР ИСПОРТИЛ ДЖОНИ ЖИЗНЬ 😢 @lenta_com
01:01
He sees meat everywhere 😄🥩
00:11
AngLova
Рет қаралды 9 МЛН
Children deceived dad #comedy
00:19
yuzvikii_family
Рет қаралды 6 МЛН
Tom & Jerry !! 😂😂
00:59
Tibo InShape
Рет қаралды 56 МЛН
Object Oriented Programming is Good | Prime Reacts
31:30
ThePrimeTime
Рет қаралды 290 М.
Complexidade de algoritmo - Entenda O(log(n)) finalmente
16:21
Kevin Beltrão
Рет қаралды 12 М.
o Pior Programador que conheço
17:52
Lucas Montano
Рет қаралды 35 М.
Live Coding: Clean architecture na prática com Rodrigo Branas
2:33:34
só dizer “Stop Using UUIDs” é uma péssima dica
21:27
Lucas Montano
Рет қаралды 52 М.
#1 A FACULDADE ENSINOU ERRADO - POO da quinta série
23:52
bero o dev
Рет қаралды 53 М.
Todo Dev JavaScript Precisa do TypeScript
18:34
Código Fonte TV
Рет қаралды 32 М.
como os DEV GenZ realmente pensam
29:18
Lucas Montano
Рет қаралды 29 М.
Depois de 20 Anos Criando Software
23:49
Lucas Montano
Рет қаралды 42 М.
Asus  VivoBook Винда за 8 часов!
1:00
Sergey Delaisy
Рет қаралды 1,1 МЛН
SSD с кулером и скоростью 1 ГБ/с
0:47
Rozetked
Рет қаралды 528 М.
ИГРОВОВЫЙ НОУТ ASUS ЗА 57 тысяч
25:33
Ремонтяш
Рет қаралды 240 М.