✅ E agora eu tenho um curso que vai ensinar isso! 🎉 Se você tiver interesse em ser um Early Adopter acesse: curso.dev/ #shorts #programação #postgresql #database #bancodedados #comovoceprogramariaisso
Пікірлер: 223
@FilipeDeschamps Жыл бұрын
E agora eu tenho um curso que vai ensinar isso! 🎉 Se você tiver interesse em ser um *Early Adopter* acesse: curso.dev/
@danilovieira4442 Жыл бұрын
Cara, vc é um mito kkkk abri o vídeo de apresentação do curso e vc falando "Que? ce ta aqui? numa sexta-feira?". A experiência já começou bem daí 😂
@telmomachado1490 Жыл бұрын
Fala Felipe, quando vai sair um video novo sobre o GPT 4. abraço.
@MARIA-yp1vs11 ай бұрын
Melhor curso que tem é curso em vídeo
@rafaelnascimento60142 жыл бұрын
Ele: Como você programaria isso? Eu: Sim.
@Aleke2492 жыл бұрын
No meu caso: - não sei!🤡
@johnysants55042 жыл бұрын
O meme do neguinho de braços cruzados perguntando "o quê " haha
@fbsouza2 жыл бұрын
Adicionar o primeiro parent ID nas subsequentes deixaria a consulta muito mais simples e mais rápida, sem esse monte de union. 👍
@FilipeDeschamps2 жыл бұрын
Total!! Uma coisa que pensei foi que dessa forma você pode desconectar um nó e transformar ele num conteúdo raiz (levando consigo todos os filhos automaticamente). Mas com sua sugestão também era só questão de atualizar todos os filhos 👍
@silasbispo012 жыл бұрын
Ainda vou chegar nesse nível 👍
@MrNatsuDragneel2 жыл бұрын
@@FilipeDeschamps sim poderia guardar a árvore no servidor e toda nova mensagem filha adiciona na árvore, e na filha salva o id da árvore que ela é uma folha. Isso reduz a quantidade de procura e processamento.
@nicolasklosmacioski79162 жыл бұрын
@@FilipeDeschamps vc tem ideia de quando seu curso vai ser lançado?
@z-matrix2 жыл бұрын
@@FilipeDeschamps Carambolas, vai demorar pra eu ficar assim hein ;-;, eu acho que eu até que consigo fazer mas falando assim me deixa até deprimido kk.
@VictorGhost Жыл бұрын
Incrível, há 1 ano atrás eu ficaria espantado, hj em dia eu ja fiz algo similar, usando uma estrutura não tão diferente dessa. Muito massa!❤
@oguilherme7 Жыл бұрын
Brabo, aí sim!
@irarkia1407 Жыл бұрын
Top q o KZbin sempre me recomenda esse short e em épocas diferentes da minha vida, onde da primeira vez q ouvi isso n entendi nada e hj já entendo e até arrisco dizer q conseguiria fazer.
@wayneandrerochareis5897 Жыл бұрын
tmj tmb jkkkkkk
@gameplaydosabao2 жыл бұрын
Query recursiva vai ser pouco performática. Faça todas as tuplas da arvore compartilharem o mesmo id do primeiro pai, então você pesquisa apenas pelo id do pai para depois montar os objetos em sua estrutura correta na memória da aplicação. Mas, caso as tuplas sejam reutilizadas em mais de uma estrutura, então crie uma tabela/collection auxiliar apenas para guardar essas chaves, sem o restante do conteúdo. Como o conteúdo da collection/tabela auxiliar é formado apenas pelas chaves, ter a redundância de informações não vai impactar tanto no espaço em disco ocupado.
@ed.oliveira99 Жыл бұрын
E eu ainda aprendendo tabelas em HTML!! 🤣😭
@vitorhugodasilvamottamotta2058 Жыл бұрын
Todos tem que iniciar em algum momento.
@micaelalgarrao6043 Жыл бұрын
Mano, se vc curti criar telas para o usuário, toda essa parte gráfica, ok, continue no front. Agora, se vc apenas quer entrar no mercado da programação vá para backend
@tiagorafael9872 Жыл бұрын
E aí? Tá evoluindo?
@douglas2085 Жыл бұрын
@@micaelalgarrao6043eu vi uma Dev Full stack desenvolvendo uma API rest e o front em react... Cara, front não é nada fácil.... Fiquei de cara
@micaelalgarrao6043 Жыл бұрын
@@douglas2085 é um porre! Kkkkkk front é muito legal, mas é um caminho bem incerto e trabalhoso; frameworks toda hora, um css que todo dia tem uma fincionalidsde nova e etc
@luiz-correia2 жыл бұрын
To adorando esses "quick tips" *_*. Muita informação top, destaque pro sistema de permissões e pro terraform kkk
@RodrigoKulb2 жыл бұрын
Grande dica, já quebrei muito a cabeça alguns anos atras fazendo essa lógica de PAI e FILHO. Depois vou criar uma Issue lá, acredito que a resposta da resposta (3° nível)poderia ficar oculta igual no youtube. Porque a lista começa ficar muito grande.
@RodrigoKulb2 жыл бұрын
Exemplo 3° nível 😅
@barte.sr.7744 Жыл бұрын
@@RodrigoKulb na maioria dos casos outros niveis devem ficar ocultos pelo bem do usuario. user experience agradeçe
@lokitozap6362 Жыл бұрын
cara KKKK, curso ADS, to no 2 semestre e vendo seus vídeos sinto que não sei absolutamente nada KKKKKKK brincadeiras à parte, você oferece um ÓTIMO conteúdo amigo, parabéns!
@e.schrodinger63112 жыл бұрын
Cara, eu gosto de comer cuscuz com alguma carne, preferencialmente! Fica muito bom👍
@IsaacViolin_. Жыл бұрын
Muito bom mesmo, eu gosto com qualquer carne picada ou em pedaços, depois vc mistura, e fica MUITO MUITO MUITO BOM
@babinp29 Жыл бұрын
E eu nem entendo de cuscuz
@matheusbernardo14072 жыл бұрын
Vc é incrível cara parabéns pela habilidade, ótimo profissional, nós ensine a ser como você.
@giovanesantos90952 жыл бұрын
Cada dica é um achado que ajuda da no desenvolvimento de um sistema simples e fácil.
@brunohonda848 Жыл бұрын
Caramba, trabalho a 12 anos com programação e nunca tinha entrado em contato com essa funcionalidade de query recursiva. Muito obrigado.
@jcasper Жыл бұрын
Experiência própria, a solução mais performática é nested-set, eu implementaria cada nó raíz (parent_id null) como sua própria nested. E seja feliz carregando toda a ramificação já organizada sem recursão.
@pedd9453 Жыл бұрын
Vivendo pro dia que eu vá entender esse vídeo
@jahnomon95553 ай бұрын
C já consegue entender, mano? :V
@pedd94533 ай бұрын
@@jahnomon9555mano surpreendentemente sim Kkkkkkk inclusive muito obrigado por ter comentado, vou iniciar esse projeto agora
@AppleXumber22 күн бұрын
Como tá o projeto? @@pedd9453
@samuelsx323315 күн бұрын
@@pedd9453Parabens! É só o começo 😅
@letscia635 Жыл бұрын
Eu acho que seria mt legal fazer esses desafios com vários níveis de dificuldade, desde desafios para para iniciantes até para os mais avançados
@Redyf3 ай бұрын
Tive uma prova sobre teoria dos grafos hoje, isso é um sinal
@CraftPlaynow Жыл бұрын
To pagando estrutura de dados agora na faculdade, legal ter aparecido praticamente isso na prática
@zauza.2 жыл бұрын
Como sempre, sacada genial: Quick tips de programação no sorts do utube... Genial, Phelippe.. parabéns !
@devKaos117 Жыл бұрын
Anotado como um mini projeto para eu programar :)
@lucasramon823219 күн бұрын
Eu pensaria numa matriz de adjacências, ficaria legal. Perfomático e simples de entender
@alexaraujo8129 Жыл бұрын
Só agradece pelo o conteúdo rico
2 жыл бұрын
Eu prefiro sempre usar a lógica de "Modified Preorder Tree Traversal" ou MPTT para estruturas de árvore, onde indico no banco um valor de nó de entrada a esquerda "lft" e um nó de saída "rght" junto com a estrutura do parent_id. Existem muitos artigos de como usar o MPTT com mysql, eu estou apenas "riscando a roda". Tenho em mente sempre que criar árvores de dados é bem difícil porque sempre temos a possibilidade de criar orfãos na árvore quando os dados são excluídos.
Жыл бұрын
AMEI
@paulorodrigues8860 Жыл бұрын
Cara 👌. Quando vejo os teus vds me toco que tenho muito por aprender
@DiegodscCastro2 жыл бұрын
Quando vai ser lançado seu curso? Sou membro e estou ansioso!
@Webmaster247 Жыл бұрын
Nossa, mano. Vou fazer um diagrama deste pra já !!! Tu é bom !!!!!!!!!
@lsampaio10 Жыл бұрын
Genial como sempre!
@iagopaixao5825 Жыл бұрын
Muito bom, gostei de como ficou a árvore no bek end. 👏🏽👏🏽🤜🏽🤛🏽🤓
@mateusbarbosa99342 жыл бұрын
Cara, entendi nada mas fiquei empolgado demais com esse conteúdo. Um dia vou entender kkk
@danxd526 Жыл бұрын
Finalmente um que eu entendi levemente, comecei faz pouco tempo kkkk
@victordev10476 ай бұрын
1 ano atrás eu não entendia isso. Hoje entendo perfeitamente como isso acontece na teoria e na prática, graças ao pessoal fera que faz conteúdo de verdade sobre programação: Filipe Deschamps, Gustavo Guanabara, Código fonte TV e muitos outros que se eu citar esse comentário vai virar uma bíblia. Muito obrigado pessoal!
@Gatotocandouma Жыл бұрын
Cara, adorei a plataforma. Tem uma coisa que ajudaria muito os próprios criadores de conteúdo, que é uma forma de os usuários seguirem outros usuários, facilitando para aqueles que querem criar nichos novos, como FelipeFarinha, leoMoura e Imperatore, que no meu caso foi o que eu mais me interessei dentro da plataforma por ser um conteúdo sobre jogos
@felipedslima Жыл бұрын
Uma forma que fiz isso foi colocar um "path" com o início do id de cada uma delas, e um ponto para separar cada parentesco, e mais o parentId também. Exemplo: { id: 4, parentId: 3, path: "1.2.3" } Assim consigo procurar a recursividade pelo path, e no exemplo, o objeto está encadeado dentro de path.split(".").length parents
@FilipeDeschamps Жыл бұрын
Sensacional meu caro! Eu estava pensando em adicionar uma coluna "root_id" (com índice) para isolar o scan a apenas o que estiver dentro dele. De qualquer forma, a query hoje, com os dados de hoje, está pesada e vai ser otimizada com certeza 🤝
@carneirofernandes Жыл бұрын
Essa solução usando uma cache do path é um dos melhores modelos para esse problema. Usando esse select recursivo pode gerar um gargalo terrível no banco conforme os aninhamentos vão se aprofundando. Trabalhei em um projeto parecido com essa organização e a mudança de arquitetura para esse modelo de path melhorou a performance em 100x, apesar de ser um modelo um pouco diferente onde a gente simulava um sistema de diretórios e arquivos, mas acredito que a melhora seria notável mesmo no problema sugerido.
@henrique466352 жыл бұрын
se for buscar um único filho dessa árvore, compensa fazer uma árvore AVL, pois assim, o tempo de busca vai ser O(log n) e vai deixar o código bem mais eficiente!
@vitorjordao2 жыл бұрын
Talvez por ser pelo banco de dados uma b tree ou b+ tree tmb pode ser uma solução
@magdielnogueira67832 жыл бұрын
Incrível!!!
@luizpereira2691 Жыл бұрын
Torna o campo parentID um array, ele vai ter os IDs de toda árvore de conteúdos até a raiz. Por exemplo, se o seu post é o terceiro, ele terá 2 IDs no seu campo de ParentID. A query ainda será recursiva mas tu vai reduzir o número de interações, pois podes enviar todos os parents na consulta em uma única chamada a base de dados e ele já te trazer toda info de uma vez
@ga_per Жыл бұрын
num banco de dados relacional os valores são atômicos, então não se armazena arrays
@italomiguel6853 Жыл бұрын
Muito obrigado, estava tentondo implementar algo parecido, estou tentando recriar uma api do stack overflow, presendo fazer igual para projeto pessoal, e eu nao estava tendo ideia de como ia fazer isso
@NaygonGamer2 жыл бұрын
Um monstro , uma máquina
@felipeaugusto53752 жыл бұрын
Queria um professor desse 😎
@hil4494 ай бұрын
Adj list é so um termo complicado pra uma representação de grafos. Acho mais didático so falar q usa grafos/arvores mesmo. Ja query recursiva é uma dfs
@LorhanSohaky2 жыл бұрын
Se um pai só pode ter um filho, uma opção é fazer uma lista circular. E quando você encontrar o próprio elemento que começou a busca, isso quer dizer que você obteve a árvore inteira. Só seria necessário adicionar mais um atributo para indicar qual é o elemento raiz
@olganovikova976911 ай бұрын
Ficaria ruim o parent id ser um array de ids, com o primeiro pai sendo o ultimo id no array? Assim cada um teria em si todo o conteudo necessario. Haveriam repetições, porém o tradeoff seria ter toda a dependência em apenas uma linha de registro.
@petersonrafaelchiquettodec5363 Жыл бұрын
Showwww
@Canal_do_Zerinha Жыл бұрын
Ou poderia usar um banco orientado a grafo, uma query dessa num momento que exige maior escala, parece que vai dar problema
@lucianofsantos87511 ай бұрын
Colocaria uma coluna id auto incremento, uma coluna de id pai e outra coluna de id filhos, essa seria sequêncial, assim quando fizer um select faz um where do id Principal sobre a coluna pai e um order by pela coluna filhos
@evertonf.costasouza3692 Жыл бұрын
Eu fiz isso no front end e tb no Back end, mas usei para documento no trabalho e tive validação pq tem documento que tipo usuário poderia ver e outro não
@flavio_ever9 ай бұрын
Eu fiz semelhante mas como o prisma nao permite consultas complexas eu criei uma tabela referenciando-se e o resto foi javascript recursivo nos parents.
@rodrigodasilva84042 жыл бұрын
Lá vem o canal que torna tudo que é fácil difícil
@anonymousal52142 жыл бұрын
Faz um vídeo explicando isso. Estou criando um Backend de uma rede social - minha mesmo - e quero implementar isso.
@nathanfirmo2 жыл бұрын
Cara, eu quero muiiito ver isso!
@mallmaxshoppingvirtual3 ай бұрын
Ja vibesse video mais de 10 vezes dentro de um ano, sonagora entendi . 😮
@Diego-lu3xy2 жыл бұрын
EI Deschamps quando seu projeto vai estar pronto?
@davilyrocha87192 жыл бұрын
Vendo isso eu me pergunto se tô entrando na área certa kkkkkkkkk
@carlossantos84756 ай бұрын
Entendi tudo....agora, por onde começo???
@account-vj2tx2 жыл бұрын
E bem mais fácil você utilizar um belongsTo e trazer os resultados organizados e no final criar um component que renderize cada linha considerando a proxima linha como filho!
@manuelmateussofodao27628 ай бұрын
Sou o novo seguidor ❤
@manuelmateussofodao27628 ай бұрын
Estou no 2⁰ ano do médio (Informática De Gestão) mas preciso aprender mais...
@anars24185 ай бұрын
Eu acho essas coisas tão lindas 😂
@gabrielteles30792 жыл бұрын
Muito bom!
@samwuelgd Жыл бұрын
Já consigo imaginar um IDOR nisso
@andregn44832 жыл бұрын
Em cada post, além do pai, guarde também uma lista com todos os filhos. Assim o dado já fica pronto para ser consumido e você não precisa fazer milhões de operações em tempo real pra construir a árvore.
@marcosferreira8463Ай бұрын
Existem padroes de projeto para lidar com isso como o iterator
@fischerdev Жыл бұрын
Na prática é outra história. Mas analisando por cima: - parent_id - first_parent_id ORDER BY published_at
@matteopolizeli3557 Жыл бұрын
meu ainda é demais pra mim. mas cada vez que esse vídeo aparece, e eu entendo uma coisinha a mais, simbora.
@fernandovallervideos Жыл бұрын
Fazer eu consigo, mas falar bonito assim aí mais complicado 😂 👏
@danielmoura48212 жыл бұрын
"Estrutura de dados não é importante hoje em dia." ELES DISSERAM.... ahahaahahaa Novatos !
@heliogomesbrier4273 Жыл бұрын
Eu prog. como alternativa a sua abordagem, usando um banco não relacional ex. Mongodb trabalhando com Materialized Path
@ianrossi Жыл бұрын
Provavelmente utilizaria Nested Set Model para evitar esse monte de recursão: en.m.wikipedia.org/wiki/Nested_set_model
@artursantos2715 Жыл бұрын
Essa estrutura de árvore seria boa de ser representada num bando de dados de grafos, como Neo4J
@voidzed89062 жыл бұрын
Tem um banco de dados orientado a grafos Talvez seja uma boa usar
@cristovaomurilo11 ай бұрын
finalmente algo que entendo um pouco kkkkk
@DaviLuiz-he2zu8 ай бұрын
Eu gosto dessas coisas pq me faz querer estudar mais kkkk
@samuelteodoroferreira58882 жыл бұрын
Filipe … isso não é uma estrutura para desenvolver Sistemas Especialistas ? Sei lá se alguém estudou isso em CC.
@devbrn Жыл бұрын
Minha duvida foi: Se na sequencia entre o id 2 e 4 o parent_id tres fosse excluido, toda cadeia subiria automaticamente, ou os comentarios se desconectam e se tornam uma nova pub?
@greidinger-reis Жыл бұрын
Eu prefiro fazer uma query só, retornando todos os comentários e respostas, e reorganizando eles no frontend, assim tirando a carga que isso terá no banco de dados
@alucard3397 Жыл бұрын
eu estou no quinto periodo da minha faculdade e se eu n tivesse estudando por fora eu n teria entendido uma palavra do q vc falou, mas eu ainda n sei de quase nada tal como implementar isso xD
@marco0401902 жыл бұрын
eu colocaria também um child_id, ou uma lista de children, pra ter toda a informação pronta
@gabrielsozinho2 жыл бұрын
Opa Filipe, registrei e fiz meu Login no site, e queria saber se eu posso publicar uma espécie de "curso" de alguma linguagem. Posso?
@rafaelwendel14002 жыл бұрын
Tem código fonte?
@cristianomoreira33052 жыл бұрын
Não sei vcs mas eu fico olhando pra esses nomes perfeitos das funções do Filipe kkkkkkk
@luciano-lima2 жыл бұрын
Aqui seria um caso para grafos?
@leopoldomedeiros8420 Жыл бұрын
Tudo pra ele é simples.. Aaaff mano😂
@minhacasami2 жыл бұрын
Eu usaria uma base de dados orientada a grafos, como neo4j
@helder00 Жыл бұрын
Um dia vou entender isso tudo! Anota aí
@patriktolomeotti9 ай бұрын
Bom, acho que o jeito mais otimizado nesse caso seria usar cypher ao invés de sql..
@LuizHenriqueSRocha Жыл бұрын
Eu implementaria diretamente na base de dados usando procedimentos armazenados
@FBHI Жыл бұрын
E eu pensando aqui "mas método recursivo não vai deixar o sistema beeemm pesado?" qdo vejo ele fazendo um Select recursivo no banco e eu fiquei... '.' nem sabia que dava pra fazer isso kkkkk
@lucas-ifsp Жыл бұрын
Monta um Composite e monta o DAO de baixo para cima?
@CardosoAlan Жыл бұрын
Poderia programar como sendo uma funcao dentro de outra funcao.
@Missao_amor_de_Jesus2 жыл бұрын
Caraca,eu não entendi nada,quero muito entender,preciso na verdade,não vejo outra solução a não ser na área de TI E preciso aprender dês do início cada detalhe
@universonomade10x2 жыл бұрын
Em site de (Esquemas de piramedes e afiliados) tem muita dessas logicas de programações - kkk (Quem inidicou quem, e se o afiliado pertence lado direito ou esquerdo: o tal derramamento que nunca acontece - kkk )
@eusouregislima11 ай бұрын
DAhorinha demais, principalmente pq vou aprender isso agora
@midia5078 Жыл бұрын
Daria para fazer com django né?
@monad_tcp Жыл бұрын
Is iFrames a valid solution ? Post and run
@portoacessivel375 Жыл бұрын
Cadê o Google tradutor quando eu precisso ? ? Brincadeira a parte , felipe ? Como eu programaria isso ? ? ; efetuar e atemder chamada do google duo , pela amazon alexa , OBS para chamada de alexa para alexa , basta ter conta na amazon , e no aplicativo amazon alexa e registrar seu numero de celular na guia comunicação , joao marcos aqui .
@vandersoninformatica546 Жыл бұрын
Eu faria quê toda resposta tivesse o id do pai e do Filho.
@Alberto_Cavalcante2 жыл бұрын
Show
@anscx Жыл бұрын
Eu jogaria no ChatGPT. Nem me preocupo mais
@williansoaresbatista86122 жыл бұрын
Existe uma linguagem de programação só criando pastas e alguns arquivos .txt no windows ou Linux ?, é que tenho Déficit de Atenção e gostaria de programar da forma mais graficamente possível (por mais que a qualidade seja ruim)