Pow, incrível a aula. Um pensamento simples mas diferente. Parabéns
@gabrielrufino90414 жыл бұрын
Reduce em um array de funções pra gerar composição... sinto sabor de criatividade, mano! Amo ver uma maneira nova de resolver algo. Parabéns, cara. Amo seus vídeos e sou aluno de vários cursos. Sucesso!
@EversonClei4 жыл бұрын
Fantástico a recursividade funcional aplicada no ultimo exemplo.. show
@alissongomes21453 жыл бұрын
A primeira vez que vi sobre função em JavaScript com o Léo, pensei que nunca fosse entender isso, depois de alguns meses estudando isso se tornou muito fácil e natural...o segredo pra aprender isso é praticar e estudar em conjunto com tecnologias que utilizam isso como o Angular, React, Node, junto com as Promises e os Observables.
@mamaco38863 жыл бұрын
Olá, esse professor é legal, faço curso de Java com ele
@cristoff1843 жыл бұрын
Comprei o curso do Cod3r na udemy e estou curtindo demais! Esse cara tem muito conhecimento para passar adiante, principalmente dos fundamentos da linguagem. Muito bom
@fabiovige4 жыл бұрын
Não conhecia...será de grande ajuda daqui pra frente...vlw
@amarofilhosilva4 жыл бұрын
Muito maneiro! Não foi por acaso que decidi fazer os cursos Udemy pela Cod3r. O cara manja muuuito!!!
@lgomesI4 жыл бұрын
Maravilhosa a introdução! Tem muito desenvolvedor experiente, que não conhece o poder deste padrão de projeto, composição! No mundo javascript dominar esse pattern é uma ferramenta poderosa na arquitetura da sua aplicação!
@nettojms50834 жыл бұрын
No caso conhecer até conheço, agora dominar só com muita prática.
@thymarques2 жыл бұрын
Muito interessante, apesar de eu nunca ter visto... mas provavelmente vai ser bem util.
@skallet4 жыл бұрын
Esse conhecimento é interessante pra quem quer fazer sua própria library. Obrigado por compartilhar.
@wagnersillvaa4 жыл бұрын
Eu amo brincar com funções kkk. Eu fico viajando fazendo experimentos assim. Função chamando outra função, objeto com funções... JavaScript é fantástico.
@darlanscript64584 жыл бұрын
;-;
@tomnudho42024 жыл бұрын
Muitos conceitos explicados de forma muito rapida em muito pouco tempo. Por esse video não deu pra entender muita coisa, mas vou pesquisar o assunto e estudar com calma. Valeu!
@andredearaujorodrigues77254 жыл бұрын
Show! Eu nao conhecia essa técnica.
@hervallemos3 жыл бұрын
Valeu demais! O JavaScript pra mim é paradoxal... Tem suas muitas armadilhas, mas permite fazer coisas bem interessantes.
@lucianobraga2504 жыл бұрын
Muito legal essa dica. Top!!! Vou exercitar isso pra fixar o conhecimento. 👏👏👏🚀
@GeorgeMatos4 жыл бұрын
Quem mais sabe que o vídeo ficou top mas não entendeu nada? o/
@meugameplay94714 жыл бұрын
0/
@hervallemos3 жыл бұрын
A luz acendeu aqui quando entendi que funções no JS são nada mais que valores... Valores especiais, que representam ações, e não dados simples como strings e números.
@lucasmonteiro81724 жыл бұрын
C A R A C A!!!!! Que vídeo sensacional. Preciso revê-lo mais umas 10x para fixar e ter essa mentalidade, principalmente porque estou começando agora e não tenho nenhum vicio de linguagem. TOP! SENSACIONAL.
@Barbara-st2fs4 жыл бұрын
Adoro a sua maneira de explicar, fica muito fácil de entender. Só tenho a agradecer por você compartilhar seu conhecimento conosco.
@andreyagra4 жыл бұрын
Devia ter feito este vídeo 2 semanas atrás... kkkkkkkkkkkkkkkkkkk! Briguei justamente por conta de uma situação que precisava passar um terceiro parâmetro (no caso o "valor")... minha questão diferente é que eram promise results ... mas neste estrutura que vc apresentou funcionaria perfeitamente... shoooow!
@Chiefsosa174 жыл бұрын
Pra quem não entendeu, a ideia é a seguinte: sabe quando usamos métodos em "chaining" de objetos, como 'string'.toUpperCase().split().join()? A ideia é fazer basicamente isso, mas utilizando funções em vez de métodos. No exemplo acima, ficaria: composição(toUpperCase, split, join)('string').
@DSanches4 жыл бұрын
Deu uma clareada na ideia cara, muito obrigado, agora consegui ver de uma perspectiva diferente e entender melhor a utilidade e a forma de aplicar, vlw mesmo
@klingermatheus90982 жыл бұрын
O conceito seria para facilitar a leitura e manutenção do código ou tem mais algum benefício? Nesse sentido eu gostei bastante disso
@edvaldoarcanjo81102 жыл бұрын
nooo mano, abriu minha mente vlw
@ramonvinicius34982 жыл бұрын
O retorno da função filha vai ser o valor que a função pai (que "abração" a função filha) vai processar, e assim por diante. Explicando melhor: fn1(fn2(fn3(valor))). A fn3 vai retornar um valor. Esse valor retornado vai para a fn2 (ela vai executar suas instruções com esse retorno da fn3), e assim por diante.
@BrunoRodrigues19902 жыл бұрын
Obrigado pela abstração
@meugameplay94714 жыл бұрын
Eu entendi, mas não compreendi kkkk. Sou novato no JS, e estou apanhando exatamente nas funções. Mas vou assistir com calma novamente. Ótimo vídeo!
@raivitor4 жыл бұрын
Muito massa esse vídeo, faz mas vídeos com técnicas pra JS xD
@RodrigoKulb4 жыл бұрын
Nossa excelente explicação! show de bola Leo!
@elvispalace2 жыл бұрын
Mais vídeos do tipo pfv, quero me aprofundar na linguagem
@cod3r2 жыл бұрын
Obrigada pela sugestão, Elvis! 👾
@hitallo914 жыл бұрын
Legal demais o video, eu uso isso bastante para criar funções de validação com informações genéricas, uso muito no angular e no vue haha .
@marceloa.oliveira43334 жыл бұрын
Confesso que terei que assistir umas 3 ou 4 vezes p fixar rsrsrs...
@nelson.costa.dev25364 жыл бұрын
Só 3 ou 4... eu vou rever o ano todo kkkk
@marceloa.oliveira43334 жыл бұрын
@@nelson.costa.dev2536 RSRSRS mas é isso mesmo a repetição do conteúdo faz as coisas ficarem mais faceis, mais natural, p/ mim complicou depois do currying :(
@OHugoOliveira4 жыл бұрын
Que bom, não estou sozinho hsushauahaua
@romarioluz4 жыл бұрын
TMJ
@rafa_mad4 жыл бұрын
tmj galera aewhuehawuehuwa rever o ano todo também
@freeuseguys16904 жыл бұрын
Prof. Leonardo Obrigado mais uma vez! vale sim muito apena adquirir os curso da Cod3r, afirmo isto sem ganha um centavo. O curso de desenvolvimento web moderno foi o curso mais completo e custo-benefício que fiz até agora! Claro que exige atenção, revisão e prática como todo bom curso deveria exigir!
@alexsandrosilva92334 жыл бұрын
Forma prática e fácil de abordagem do assunto. Show!
@marcosmachado83994 жыл бұрын
Muito bom, da para fazer um código bem mais limpo Amando esses vídeos novos quase todos os dias kkk 😮😁 Acho que um bom tema para abordar tbm seria Hoisting no JS
@geilsonribeiro64054 жыл бұрын
Seria legal um vídeo seu explicando função recursiva com JavaScript.
@betoh7834 жыл бұрын
Bem legal, conceitos muito usados no ReactJS, por exemplo. Parabéns pelo vídeo.
@camilaribeiro34684 жыл бұрын
Excelente aula, Leonardo!
@joaopauloantoniazzidemorae53344 жыл бұрын
Parabéns pela excelência da aula!!!
@devricardonovais12942 жыл бұрын
Grato pelo vídeo! Lazy evaluation tem a ver com assincronismo?
@WilliamSilvaNet4 жыл бұрын
Ajudou... Irá me ajudar em um probleminha.
@soudanielcosta4 жыл бұрын
Muito bom o vídeo!! Falei rapidamente sobre HOC no meu vídeo de Redux de ontem pra explicar o "connect", mas você matou a pau na didática, parabéns!
@hugofernando8464 жыл бұрын
Excelente! Javascript é muito flexível.
@zarate6334 жыл бұрын
muito bom cara, acompanho teus cursos na Udemy, mas só agora me inscrevi no canal, vou acompanhar os outros vídeos! Vlw por compartilhar!
@victorwvieira4 жыл бұрын
Muito bom conteúdo do video. Gostaria de ver mais videos assim sobre JS. 👏
@brunocastilho42734 жыл бұрын
Top demais! Parabéns, valeu.
@caiquesouza77973 жыл бұрын
O cara eh mto crânio! Meu Deus
@evertonf.costasouza36924 жыл бұрын
Nossa foi top, isso é muito.util quando precisa de muito métodos , vou tentar fazer ele no react ,pois estou fazendo o react com script , puxando ele pro HTML , e colocando e colocando dentro das tags script , não tô usando o node ,tô fazendo nativo .
@junioraos40744 жыл бұрын
Esse conhecimento tá pairando ainda na minha cabeça... ainda não caiu a fixa, mas vou assistir mais umas quantas vezes hehehe.
@jeeffengel4 жыл бұрын
Muito bom conteúdo, sou um fã de programação funcional e esse método é maravilhoso para reforçar o uso de função assíncrona por exemplo para chamada API. Parabéns pelo conteúdo que vem postando, estou acompanhando diariamente o canal, já curtia a didática e agora estou ainda mais, para iniciante é maravilhoso, para quem já tem mais experiência é muito bom para rever conteudo.
@nelson.costa.dev25364 жыл бұрын
Eu vejo muita gente usando atalhos do editor mas quanto a palavra chave console.log( eu raramente vejo ) e é bem simples: log+tab
@guilhermeaguiar27434 жыл бұрын
valeu pela dica eu nao sabia disso
@emanoelinfinity4 жыл бұрын
Mais um atalho anotado! Vlw.
@afonsosnow21924 жыл бұрын
clg
@FelipeAlves-sx5ld4 жыл бұрын
Existe algum site com todos esses atalhos?
@potamo12884 жыл бұрын
@@FelipeAlves-sx5ld depende, se vc usao vscode é so ctrl + K S, ou é ctrl + K M
@SilasSWF4 жыл бұрын
Perfeito! Muito claro e útil. Parabéns!
@adrianofaria28344 жыл бұрын
Estou caminhando... uma hora eu entendo isso tudo rsrs... estou fazendo seu curso
@EverSilverio3 жыл бұрын
Excelente!!!
@Joao_D_Paulo4 жыл бұрын
Caramba! Muito massa! Vlw Léo!!!!
@canalabade22624 жыл бұрын
Caramba excelente video aula, obrigado!
@jrvidotti4 жыл бұрын
Excelente conteúdo... Fantástico!
@marciofelix4 жыл бұрын
Parabéns!!! Aula top
@Everson29582 жыл бұрын
Voces poderiam adicionar curso de vue3 com o vitejs agradeceria mt, so vou assinar o plano da cod3r se tiver esses 2
@CaiqueMoraes934 жыл бұрын
Excelente vídeo. Vou estudá-lo hoje
@paulobrasil43394 жыл бұрын
O grande problema q eu ainda não entendo o método reduce(), muito menos passagem de funções como argumento. Vou dar uma olhada nisso mais vezes...
@valdemirsimon88254 жыл бұрын
Muito legal.!!!parabéns.
@maikelsperandio4 жыл бұрын
Eu assisti vários vídeos da Cod3r na Udemy, mas eu sempre assisti na velocidade 1.5, é estranho ouvir o Leonardo falando na velocidade normal. Hehehe
@CaiqueUnico2 жыл бұрын
Ele fala bem lento mesmo. Mas tem um raciocínio bem claro e linear.
@word5034 жыл бұрын
Parabéns professor !
@anthalinho20973 жыл бұрын
Meu Deus nunca tinha pensado nisso, se fosse eu, teria feito tudo numa função só kkkk
@fagnersales5324 жыл бұрын
Interessante o conteúdo =)
@DevJonasGuedes4 жыл бұрын
No começo não entendi nada, quando chegou no final parece que tava no começo kkkk vou salvar pra ver mais com calma depois
@valdineidossantos4 жыл бұрын
cara tive a mesma impressão que a sua , mas eu no final fiquei um pouco mais frustrado porque parece ser bem simples e não entendi nada. Parabéns para nós
@nettojms50834 жыл бұрын
Seria dificuldades de entender funções de primeira ordem e/ou o método de Array "reduce"? Seria melhor vocês verem sobre eles separadamente e voltar aqui depois.
@skenon14 жыл бұрын
Excelente explicação e didática!!!!!!!!
@sznilson4 жыл бұрын
Excelente vídeo, parabéns!!
@emanueldsc4 жыл бұрын
Quando tenho de usar uma função muitas vezes para fazer a mesma tarefa em elementos similares eu retono uma referência pra ela mesma. Por exemplo quando quero por o atributo disabled em vários campos input eu faço assim. function disableInput(id){ $('#'+id).attr('disabled', 'disabled'); return disableInput; } disableInput('nome')('sobrenome')('telefone');
@lucasayabe4 жыл бұрын
Eu passaria um array e rodaria um forEach, nunca tinha pensado em fazer assim kkk
@hannahmarques34222 жыл бұрын
Obg dicas too
@byteclubetech4 жыл бұрын
Programação é simplesmente incrível.
@darkcaveron4 жыл бұрын
Incrível, muito massa esse assunto.
@rodrigokosta863 жыл бұрын
Muito foda!!!!
@drapala974 жыл бұрын
top demais, qual o número máximo de parametros do tipo função que dá pra colocar numa composição?
@cod3r4 жыл бұрын
Não há um limite. Pelo menos desconheço. 😁
@mrzappabr4 жыл бұрын
Amigos da Cod3r, gostaria de sugerir um conteúdo. Um form master-detail em react ou Vue. Incrível que tenho uma tonelada de curso comprado e em nenhum é ensinado esta técnica/padrão. Observo que tenho vários cursos de vocẽs e se porventura algum tiver este conteúdo, agradeceria se me informasse, pois não achei. Abração !
@QuimZangui3 жыл бұрын
Mano eu gostaria de entender um pouco mais como funciona o Lazy evaluation
@carlosmatos14423 жыл бұрын
Pra quem tem dificuldade de entender a logica é a seguinte: funcão executaFuncoes(funcao1,funcao2,funcao3){ return funcao1(funcao2,funcao3) } funcao1(){ return `O gato Mia` } funcao2(){ return 'o pinto pia' } funcao3(){ return 'o cachorro late' } executaFuncoes(funcao1,funcao2,funcao3){ aqui vai ser retornado é o que cada funcao faz, no caso o gato mia, o pinto pia, o cachorro late } a logica é simplesmente executar funcoes uma apos a outra algo como: funcao1() funcao2() funcao3() porem manipulando as posicoes e ordens ou ainda o conteudo de cada uma.
@tiquimfit83522 жыл бұрын
tem uma maneira simples de entender isso de forma bem rapida e direta
@Saudavelpro4 жыл бұрын
top, como sempre!!!
@salvimateus4 жыл бұрын
Obrigadooooo
@allasmaycon47064 жыл бұрын
Interessante!
@bernardomarinho41043 жыл бұрын
O que me ferra é esse parâmetro "funcoes" da função composição significar todas as outras funções... Isso me ferra muito e sempre! Eu tenho uma dificuldade de entender os parâmetros das funções em JavaScript que às vezes eu os escrevo sem entender e dá certo, de tão doida que essa parte é!
@MarcosVinicius-us2dj4 жыл бұрын
em uma única linha de código: const composicao = (...fns) => (valor) => fns.reduce((acc, fn) => fn(acc), valor) . isso é muito louco hahah
@darlanscript64584 жыл бұрын
bagunça da merda
@edersonfccorsatto67833 жыл бұрын
Isso é muito bom quando vc quer dificultar as pessoas enteder o seu código, esse monte de funções sintetizado dentro de parâmetros foge do escopo "Single-responsibility principle" nunca faça isso dentro do trabalho em equipe, a não ser que te peçam.
@wandosilva63423 жыл бұрын
Olá, aulas excelentes! Sou aluno seu na plataforma udemy, queria saber quais livros pra iniciante em javascript eu deveria ler para complementar com seus cursos?
@jairoiglesias19894 жыл бұрын
Muito bom!
@TheRobsantos7774 жыл бұрын
Esse negócio de funcional é novo pra mim, confesso que embaralhou tudo o meu cérebro
@masolhebem4 жыл бұрын
Vários conteúdos showw2
@diegoborgespereira14 жыл бұрын
@Cod3r Cursos Excelente explicação, faço seu curso de desenvolvimento moderno. Só uma dúvida, meu VScode não está com o intellisense para javascript, há algum procedimento que eu possa fazer (desde já, pesquisei, porém sem sucesso) Obrigado
@adrianofaria28344 жыл бұрын
Instala a extensão ESLINT
@diegoborgespereira14 жыл бұрын
@@adrianofaria2834 ja fiz isso, acredito que tenha alguma configuração. Né?
@cod3r4 жыл бұрын
Procura Visual Studio IntelliCode
@diegoborgespereira14 жыл бұрын
@@cod3r obrigado
@wallefrodriques40152 жыл бұрын
Mais isso serve pra que ,vai ser ultilizado como ? Alguém explica por favor
@guilhermeborges71314 жыл бұрын
Fazendo um paralelo com poo isso substituiria a herança uma vez que se use apenas funções e não classes?
@emanoelinfinity4 жыл бұрын
Se achou isso experimente ver os módulos do angular e tudo fará mais sentido!
@brunords20234 жыл бұрын
Muito bom.
@DanteMarinho4 жыл бұрын
Olá professor Leo (você tem o nome do meu filho), fiquei com vontade de saber de aplicabilidade no mundo real em relação a este conceito de composição de funções. Grande abraço! Ah, e você tem um nome muito bonito =)
@darlanscript64584 жыл бұрын
o framework flutter usa composição nos widgets,programando-se na linguagem Dart,esses frameworks usa muita composição
@cacadoresdeinvestimentos10312 жыл бұрын
quando ele fala precisa saber alguns coisas de javascript, falando assim parece uma parada básica, só que não é uma coisa básica, e algo já avançado do javascript
@rafaelmonteiro44593 жыл бұрын
Top top top!!!
@didafe4 жыл бұрын
Show!!!!
@marcoazevedo58784 жыл бұрын
M u i t o B a c a n a, L E O !!!! Muito obrigado!
@zeneto21574 жыл бұрын
Neste caso, não. Mas isso torna o código difícil !!
@Dohherin4 жыл бұрын
Eu só fiquei com duvida de quem são os acc e fn no return da função
@tales46044 жыл бұрын
O reduce funciona como um loop. E ele faz 2 coisas. A cada loop ele pega um item do array (o fn), e retorna um valor. Valor esse q se torna o acumulado (acc) e pode ser reutilizado no próximo loop. Ou seja, digamos q o valor inicial seja "abc" Loop 1 retorna ABC Loop 2 retorna ABC!!! Loop 3 retorna A B C !!! E o resultado do último loop é o valor final da operação. A função, de forma mais 'aportuguesada': [gritar, enfatizar, tornarLento].reduce( (textoRetornado, itemDaLista) => { return itemDaLista(textoRetornado) }, valorInicial)
@alexandrerodriguesdasilva14203 жыл бұрын
BRABO.
@DiegoWenndson4 жыл бұрын
Bem tentei reproduzir o codigo aqui no meu pc, mas sempre que mando abrir o arquivo no terminal da erro na linha 1 caractere 21 :/ function composicao(...funcoes){ return function(valor){ return funcoes.reduce((acc, fn) => { return fn(acc) }, valor) } } function gritar(texto){ return texto.toUpperCase(); } function enfatizar(texto){ return `${texto}!!!!` } function tornarLento(texto){ return texto.split('').join(' '); } const exagerado = composicao( gritar, enfatizar, tornarLento ) console.log(exagerado('Teste de composicao de variaveis')) console.log(exagerado('debbug'))
@leandrocarvalho17604 жыл бұрын
Rest é com 3 (...func) pontos, vc usou 4
@_Gohara4 жыл бұрын
Esses cursos da Udemy são atualizados ?
@andredearaujorodrigues77254 жыл бұрын
Será que dá para fazer isso também no typescript?
@cod3r4 жыл бұрын
Sim! Sem dúvida
@lucasayabe4 жыл бұрын
"todo JS válido é um TS válido"
@JuanPablo-dl1rd4 жыл бұрын
Praticamente tudo q ele passou aí foi algoritmos e estrutura de dados, AED