Git Product home page Git Product logo

pokemonchallenge's Introduction

App | v.3

DESCRIÇÃO

Esta aplicação pretende resolver o seguinte problema/enunciado:

Pokemon: apanhá-los todos O Ash está a apanhar pokémons num mundo que consiste numa grelha bidimensional infinita de casas. Em cada casa há exatamente um pokémon. O Ash começa por apanhar o pokémon que está na casa onde começa. A seguir, move-se para a casa imediatamente a norte, sul, este ou oeste de onde se encontra e apanha o pokémon que aí se encontrar, e assim sucessivamente. Atenção: se ele passar numa casa onde já passou (e, portanto, onde já apanhou um pokémon), já lá não está um pokémon para ele apanhar! O que queremos saber é: começando com um mundo cheio de pokémons (um em cada casa!), quantos pokémons o Ash apanha para uma dada sequência de movimentos? Formato do input O programa deve ler uma linha do stdin, que contém uma sequência de movimentos. Cada movimento é descrito por uma letra N , S , E ou O (respetivamente: norte, sul, este, oeste). Formato do output O programa deve escrever uma linha para o stdout, apenas com um número: quantos pokémons o Ash apanhou?

DOCUMENTAÇÃO TÉCNICA

  • A aplicação corre em NODEJS. É necessário ter o NODEJS instalado. Podes fazer o download aqui

  • Utiliza a seguinte framework de testes:

  • A app tem a seguinte estrutura

    • /src/app.js: contém o código da nossa app
    • /index.js: utilizado para correr em modo consola
    • /web.js: utlizado para correr em modo web/rest api
    • /tests: folder onde estão os nossos testes
    • /docs: tem alguns ficheiros utilitários da app (img do readme, etc...)

COMO COMPILAR A APP ?

COMO EXECUTAR A APP ?

  • No folder da app correr o comando node index com o input necessário. Alguns exemplos: (a aplicação aceita input em lowercase)
    • node index NN
    • node index NSEO
    • node index NNNSSEE
    • node index nnn
    • node index nnSNeeEE

COMO CORRER OS TESTES ?

  • A aplicação utliza a framework de testes MOCHA e Chai. Para executar os testes através da consola é necessário que essa framework já esteja instalada globalmente. Para tal é necessário correr os seguinte comando npm install -g mocha
  • NOTA IMPORTANTE: só se deve correr o comando npm install -g mocha 1 vez para instalar esse componente - não é necessário executar este comando cada vez que se executam os testes!!
  • No folder da app correr o comando mocha tests para correr todos os testes que estão definidos no ficheiro /tests/appTests.js. No fim da execução (que poderá demorar alguns segundos a terminar) irá aparecer um relatório com o resutlado desses testes

Branches (código de cada versão)

  • v.1 - versão inicial

    Esta versão inclui a versão inicial da aplicação.
  • v.2 - inclusão dos testes

    Nesta versão foi acrescentada a framework de testes MOCHA e Chai
  • v.3 - api_rest

    Nesta versão foi incluída a framework ExpressJS para transformar a nossa app numa REST API

pokemonchallenge's People

Contributors

rdquintas avatar

Watchers

 avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.