diff --git a/javascript/Talita Santos/Animal.js b/javascript/Talita Santos/Animal.js new file mode 100644 index 0000000..190c63c --- /dev/null +++ b/javascript/Talita Santos/Animal.js @@ -0,0 +1,16 @@ +class Animal { + animais = []; + rimas = [] + + adicionarAnimais(animal) { + this.animais.push(animal); + console.log(`${animal} adicionado`); + } + + adicionarRimas(rima) { + this.rimas.push(rima); + console.log(`${rima} adicionado`); + } +} + +module.exports = Animal; diff --git a/javascript/Talita Santos/Musica.js b/javascript/Talita Santos/Musica.js new file mode 100644 index 0000000..4e7e5dc --- /dev/null +++ b/javascript/Talita Santos/Musica.js @@ -0,0 +1,43 @@ +class Musica { + + primeiroVerso(animal) { + console.log(`There was an old lady who swallowed a ${animal};`) + } + + segundoVerso(animal, rima) { + console.log(`I don't know why she swallowed a ${animal} - perhaps she'll ${rima}!`) + } + + terceiroVerso(animal) { + if (animal === "spider") { + console.log("That wriggled and wiggled and tickled inside her.") + } + + if (animal === "bird") { + console.log("How absurd to swallow a bird.") + } + + if (animal === "cat") { + console.log("Fancy that to swallow a cat!") + } + + if (animal === "dog") { + console.log("What a hog, to swallow a dog!") + } + + if (animal === "cow") { + console.log("I don't know how she swallowed a cow!") + } + + if (animal === "horse") { + console.log("...She's dead, of course!") + } + } + + quartoVerso(animalSwallowed, animalToCatch) { + console.log(`She swallowed the ${animalSwallowed} to catch the ${animalToCatch};`) + } + +} + +module.exports = Musica; diff --git a/javascript/Talita Santos/descricao.md b/javascript/Talita Santos/descricao.md new file mode 100644 index 0000000..0d6d138 --- /dev/null +++ b/javascript/Talita Santos/descricao.md @@ -0,0 +1,8 @@ +# Módulo de Refatoração + +Dentre os [projetos listados](https://docs.google.com/document/d/1TBZ8jkS0orAVJJRPKNYPmuqNQNn0ns_GcDuOklKcQBc/edit), selecionei o desafio "Sing a Song Kata", desenvolvido em javascript. + +## Descrição do desafio: +O código para produzir uma canção infantil popular foi produzido por uma agência da web para o cliente no ano passado. O cliente agora deseja produzir múltiplas versões diferentes da música usando a mesma estrutura, mas com base em temas diferentes, por exemplo, um filme infantil popular atual com um elenco de animais. O cliente pede que você torne a música configurável para diferentes listas de animais. O cliente não pode garantir que haverá o mesmo número de animais em cada versão diferente. + +Descrição disponível [aqui](https://kata-log.rocks/sing-a-song-kata) (em Inglês). \ No newline at end of file diff --git a/javascript/Talita Santos/documentacao.md b/javascript/Talita Santos/documentacao.md new file mode 100644 index 0000000..ce88416 --- /dev/null +++ b/javascript/Talita Santos/documentacao.md @@ -0,0 +1,49 @@ +# Documentação + +## Projeto "Sing a Song Kata" + +### Objetivo geral +Produzir diferentes versões de uma canção utilizando a mesma estrutura, mas, tendo como base diferentes temas. A canção deve ser configurável para uma lista de diferentes animais. + +### Classes do projeto + +#### Classe Musica +- Responsável por compor diferentes estrofes da música, utilizando a mesma estrutura. +- Possui os métodos ``primeiroVerso``, ``segundoVerso``, ``terceiroVerso`` e `quartoVerso`: + + - O método ``primeiroVerso`` recebe o parâmetro ``animal``, e a saída no console é o primeiro verso, por exemplo: + `"There was an old lady who swallowed a fly."` + + - O método ``segundoVerso`` recebe os parâmetros ``animal`` e ``rima``, e a saída é o segundo verso, personalizando a rima, por exemplo: + `"I don't know why she swallowed a fly - perhaps she'll die!"` + + - O método ``terceiroVerso`` recebe o parâmetro ``animal``. Ele fará a análise do parâmetro recebido, para retornar a saída do terceiro verso, personalizando a rima, por exemplo: + + `"That wriggled and wiggled and tickled inside her."` para o parâmetro ``spider``. + + - O método ``quartoVerso`` recebe os parâmetros ``animalSwallowed`` e ``animalToCatch``para retornar a saída do quarto verso, por exemplo: + `"She swallowed the spider to catch the fly;"` + + +