Guia Dev
6.9K subscribers
3.67K photos
213 videos
7 files
1.49K links
< ! - - Guia para Desenvolvedores @FrontEndBR e @BackendBrasil. - - >
✔️ Dicas
✔️ Downloads
✔️ Tutoriais
✔️ Vagas e muito mais.

Parceiros:
👉🏻 https://telegra.ph/Parceiros-Guia-Dev-02-04

PARCERIA:
@roberth_p
Download Telegram
Forwarded from queroser.ninja
#javascript

Agora com a nova feature async / await no JavaScript - que é um _sugar_ para Promises - nosso código pode ficar muito menor e mais legível =)

Mas nem tudo são flores: com Promises, nós tratamos os erros usando o método .catch. Como async / await simula um comportamento síncrono, a forma de tratar erros fica no estilo mais "tradicional", usando try / catch, o que é bem feio xD

Mas tem uma forma de contornar isso, vou te mostrar :D

Imagine que seu código hoje, usando async / await, está assim:

async function func () {
try {
const result = await promiseFunction()
// aqui vc faz alguma coisa com o resultado
} catch (e) {
console.error(e) // se der algum erro, vai cair aqui
}
}

Dá pra elimir esse try / catch de uma forma bem elegante, olha só:

function to (promise) {
return promise
.then((result) => [null, result])
.catch((error) => [error])
}

Dá uma olhada nessa função to: Ela recebe uma promise, e aguarda o resultado dela - usando o .then. Quando a promise for resolvida, então nós retornamos um array com dois valores: null no primeiro índice, e o resultado - result - no segundo índice.

E, se por acaso der algum erro, nós retornamos um array com o erro no primeiro índice desse array.

E para usar essa função to, nós fazemos dessa forma:

async function func () {
const [error, result] = await to(promiseFunction())
if (error) {
return console.error(e) // se der algum erro, vai cair aqui
}

// aqui vc faz alguma coisa com o resultado
}

Olha a diferença que ficou nossa função! Veja que na função to, nós já tratamos o erro usando .catch, então, se a promise resolver sem problemas, ou der erro, o próximo .then vai receber esse valor. No caso, o próximo .then vai receber o array retornado, ou pelo primeiro .then da função to, ou pelo .catch.

E esse array tem um padrão: o primeiro indice é sempre o objeto de erro. Se a promise resolve sem problemas, então nós passamos null no primeiro índice desse array, e o resultado no segundo.

Se der erro, só passamos o error no primeiro índice, e como não passamos o result, ele vai ser undefined :)

Agora, para usar o to, dentro da função func, nós só precisamos envolver nossa promise com essa função, e o retorno disso já vai ser um array!

Como já tratamos o erro dentro da função to, não precisamos do try/catch. Se der algum erro, esse erro vai estar na variável error, no primeiro índice do array onde criamos as variáveis error e result, utilizando a técnica de destructuring assignment :D

Super legal, não? :D

Eu tenho usado bastante essa ideia nos meus projetos!

A fonte foi esse artigo aqui: https://blog.grossman.io/how-to-write-async-await-without-try-catch-blocks-in-javascript/
Forwarded from Marco Bruno
Galera hoje às 22hrs pela twitch.tv/Marcobrunobr e YouTube.com/c/cololabcode começa curso Free e ao vivo de FrontEnd e boas práticas que vamos trocar conhecimento sobre #HTML, #CSS, um pouco de #JavaScript além de #ITCSS e #RSCSS. Cola ao galera e me ajuda a divulgar ;-)
VAGA: ANALISTA #DESENVOLVEDOR #FRONTEND
REGIÃO: Vila #Olímpia – SP
Faixa salarial: R$ 6.500,00 – 8.700,00
Contratação CLT + Pacote de benefícios bastante atrativo.

• Pessoas proativas para resolução de problemas e que trabalhem bem em equipe
• Flexibilidade para o aprendizado de novas tecnologias

Experiência Necessária:
• Conhecimento em frameworks #javascript #AngularJS (Grunt ou Gulp) ou #React (#Webpack)
• Conhecimento em #frameworks #CSS (SASS) #Bootstrap ou #Semantic

Diferenciais:

• Conhecimento em #ReactNative
• Controle de versão de #software (GIT)
• Conhecimento do modelo de testes unitários #junit, #karma, #jasmine ou #phantomjs
• Conhecimento de metodologias ágeis como #Scrum

• Desenvolvimento e implementação de funcionalidades para site e app

@GuiaDev
INTERESSADOS ENVIAR CURRÍCULO COM A PRETENSÃO SALARIAL PARA:
contato@rhgrandestalentos.com.br
Forwarded from Marco Bruno
Na sexta meu pequeno passou mal e eu também por isso não tivemos a continuação dos 15 dias de #React ao vivo, mas estamos de volta, hoje às 21:47 continuamos as #lives pela http://twitch.tv/marcobrunobr e http://youtube.com/collabcode. Cola aí e divulgue para os amigos!
Forwarded from Marco Bruno
Subiu agora post novo no blog da CollabCode!

Template String é uma funcionalidade do #JavaScript que usamos muito no frameworks modernos como #React, #Angular e #Vue. Aprender ela vai te ajudar a entender de uma forma mais feliz quando for codar nesses frameworks na vida:

https://medium.com/collabcode/template-string-%C3%A9-top-demais-02-5d8964726a32
Forwarded from Marco Bruno
Acabou de subir o post menos técnico que já escrevi na vida, mas é difícil não falar de #HTML, #CSS e #JavaScript. Nele estou contando 5 dicas que usei para realizar o meu maior sonho. Espero que essas 5 dicas também te ajude.

Lê lá e me diz o que você achou: https://medium.com/collabcode/5-dicas-para-voc%C3%AA-realizar-seus-sonhos-6c2c5a508e68
Forwarded from Marco Bruno
Comunidade! Se você perdeu a aula de ontem do curso ao vivo e graça de #HTML, #CSS e #JavaScript que estou fazendo na twitch.tv/marcobrunobr às 19:32 (BR) de segunda e terça. Não tem problema você pode assistir o episódio #04 no YouTube da CollabCode:

https://www.youtube.com/watch?v=TUyVirq713o
Forwarded from Marco Bruno
Hoje às 19:32 (Brasília) na #twitch (http://bit.ly/twitch-marcobrunobr-telegram) finalizaremos o nosso cadastro de usuário e começaremos o login. Tudo isso ao vivo e 100% de graça, em um projeto real e #opensource

Estamos fazendo o #backend e o #frontend com #JavaScript. Vem trocar conhecimento!
@GuiaDev
No dia 15/11 vou estar no #DevelopersSergipe para falar um pouco mais de #JavaScript, #Node e #Kubernetes! Bora lá pessoal! https://lnkd.in/drKQx8f
Forwarded from Marco Bruno
Hoje curso de graça e ao vivo de #HTML, #CSS e #JavaScript com boas práticas:

🔴 Local: http://twitch.tv/marcobrunobr
🗓 Dia: 28/01/2020
Horário: 19:00 às 21:00 (Brasília)
📙 eBook grátis: http://bit.ly/ebook-curso-html-css-javascript

Chame uma pessoa para estudar com você! 😉
Forwarded from Erick Wendel
Já que sexta-feira é dia de maldade, é também dia de polêmica! A mensagem deste video é "Pare de usar console.log" nele vou te mostrar alternativas e padrões para evitar a poluição de seu terminal com logs desnecessários!

https://bit.ly/consolelog-video-ew

Ah, e nao esquece de comentar sobre o que voce quer ver nos proximos videos! Te espero lá!! 👊