AnyoneCanCode: Coding Dojo #15 - Javascript, Unit Tests e TDD

Nesse Coding Dojo vamos abordar uma linguagem bem comum atualmente, o JavaScript! Mas Fernando, o que é Coding Dojo? O Coding Dojo consiste em uma forma divertida de aprender uma linguagem nova e encarar desafios de lógica, nos quais as pessoas vão ao palco em duplas e permanecem por 5 a 7 minutos desenvolvendo a solução, quando outra dupla assume e continua o desenvolvimento, até se obter a sol

May 23, 2018, 10:00 PM – May 24, 2018, 1:00 AM

RSVP'd

Key Themes

About this event

Nesse Coding Dojo vamos abordar uma linguagem bem comum atualmente, o JavaScript!

Mas Fernando, o que é Coding Dojo?

O Coding Dojo consiste em uma forma divertida de aprender uma linguagem nova e encarar desafios de lógica, nos quais as pessoas vão ao palco em duplas e permanecem por 5 a 7 minutos desenvolvendo a solução, quando outra dupla assume e continua o desenvolvimento, até se obter a solução final ao problema proposto, sempre participam especialistas da linguagem, que orientam os coders em dúvidas que surjam.

E esse tal de TDD?

Test Driven Development, em sua definição descaradamente chupinhada por mim da Wikipedia:
Desenvolvimento guiado por testes é uma técnica de desenvolvimento de software que baseia em um ciclo curto de repetições: Primeiramente o desenvolvedor escreve um caso de teste automatizado que define uma melhoria desejada ou uma nova funcionalidade. Então, é produzido código que possa ser validado pelo teste para posteriormente o código ser refatorado para um código sob padrões aceitáveis. Kent Beck, considerado o criador ou o 'descobridor' da técnica, declarou em 2003 que TDD encoraja designs de código simples e inspira confiança. Desenvolvimento dirigido por testes é relacionado a conceitos de programação de Extreme Programming, iniciado em 1999, mas recentemente tem-se criado maior interesse pela mesma em função de seus próprios ideais. Através de TDD, programadores podem aplicar o conceito de melhorar e depurar código legado desenvolvido a partir de técnicas antigas.

Basicamente utilizamos os princípios do TDD de Baby Steps, construindo testes e soluções aos poucos, até ter uma solução completa.

Para isso, vamos nos orientar nas fases básicas do TDD: Red, Green, Refactor, onde primeiro construímos um teste simples que falhe (Red), afinal a solução para ele ainda não foi desenvolvida, em seguida fazemos ela funcionar da maneira mais rápida possível (Green) e então entramos na fase Refactor, onde o pessoal expectador pode opinar/criticar/cometer um atentado terrorista, e então a solução é melhorada para a próxima dupla continuar o desafio.

Frameworks de Teste

Bons developers que somos, vamos utilizar um framework pronto para testes já disponível no mercado, será um desses:
BrowserSwarm, Buster.js, FireUnit, Jasmine, JS Uni, ​Karma, QUnit, RhinoUnit ou TestSwarm.

Achando um Desafio

Para escolhermos o desafio, vamos utilizar o Dojo Puzzles e o Hacker Rank, duas plataformas de desafios que estão em alta e propõem problemas muito interessantes sempre, o desafio será escolhido na hora (esse é o barato do Coding Dojo).

Então bora lá e venham com espírito de desafio!

Para quem já quer ir se aquecendo, a apresentação do Coding Dojo + TDD está no link:

https://prezi.com/aqp-_eqqqjq6/coding-dojo-e-tdd-mao-na-massa/

[PALESTRANTES]
Fernando Rych
Innovation Catalyst (Americas) & Global Community Manager @ IBM
CEO @ AventuraSP
Community Manager @ 17 Comunidades
Nerd assíduo, Motociclista e Escalador, atua como Chief Innovation Architect, Global Community Manager e Enterprise Warchief Latin America na IBM com mais de 18 anos de desenvolvedor e mais de 10 anos em Gestão de Projetos, além de 16 anos de designer, ter uma empresa de Aventuras (AventuraSP) e ser líder de 17 comunidades de tecnologia, organizando mais de 550 eventos e hackathons, recordistas de público e de # de projetos.

Estão todos convidados!

Organizers

  • John Calistro

    The Bridge Social

    Organizer

  • Benedito Batista

    Banco BV

    IT Cordinator | Payments | Mobile | Flutter

  • Fabí Canedo

    WTM Ambassador e GDG Organizer

    Software QA Engineer

Contact Us