Imagine que você está criando um aplicativo online em que os usuários podem jogar Nim, um jogo de estratégia baseado em turnos. No Nim, há três amontoados de objetos. Dois jogadores alternam os turnos para remover qualquer número de objetos de uma única pilha. A meta do jogo é forçar o outro jogador a remover o último objeto.

Como parte de seu aplicativo, é necessário salvar o estado de um jogo existente. Também é necessário notificar os usuários em vários pontos durante um jogo. Você os notifica quando um usuário os convida para um novo jogo, quando é a sua vez de jogar e quando um vencedor é escolhido.

Neste laboratório, você aprende a usar o Amazon DynamoDB e o Amazon SNS para gerenciar essas necessidades. O Amazon DynamoDB é usado para armazenar o estado de um jogo existente para que ele persista entre os turnos. O Amazon SNS é usado para notificar os jogadores em pontos-chave do jogo.

No Módulo 1, você configura seu ambiente e faz download do código usado durante o laboratório.

Tempo de conclusão do módulo: 20 minutos

 


  • Etapa 1: Crie uma conta da AWS

    Use uma conta pessoal da AWS ou crie uma nova conta da AWS para este laboratório. Não use uma conta organizacional para ter total acesso aos serviços necessários nem deixe para trás quaisquer recursos do laboratório. Se você não excluir os recursos usados neste laboratório ao terminar, poderá haver cobranças da AWS.

  • Etapa 2: Configure o IDE do AWS Cloud9

    O AWS Cloud9 é um ambiente de desenvolvimento integrado (IDE) na nuvem que permite ao usuário desenvolver, executar e depurar código usando apenas um navegador. O AWS Cloud9 inclui um editor de código, um depurador e um terminal. Ele também vem equipado com ferramentas essenciais para linguagens de programação populares e com a Command Line Interface, CLI (interface de linha de comando), da AWS previamente instalada. Não há necessidade de instalar arquivos nem configurar o laptop para este laboratório. O ambiente do AWS Cloud9 terá acesso aos mesmos recursos da AWS que o usuário que você usou para fazer login no Console de Gerenciamento da AWS.

    Para configurar um ambiente de desenvolvimento do AWS Cloud9:

    1. Navegue até o Console de Gerenciamento da AWS, escolha Services (Serviços) na parte superior da página e Cloud9 em Developer Tools (Ferramentas do desenvolvedor).
    2. Escolha Create environment (Criar ambiente).
    3. Digite Turn-based game (Jogo baseado em turnos) na caixa Name (Nome). Deixe a caixa Description (Descrição) vazia.
    4. Selecione Next Step (Próxima etapa).
    5. Mantenha os valores padrão das configurações de ambiente para criar uma nova instância do EC2 t2.micro, que hibernará após 30 minutos de inatividade.
    6. Selecione Next Step (Próxima etapa).
    7. Revise o nome e as configurações de ambiente e selecione Create environment (Criar ambiente). O ambiente será provisionado e preparado em alguns minutos.
    8. Quando o ambiente estiver pronto, o IDE abrirá com uma nota de boas-vindas.

    Você então verá o seu ambiente do AWS Cloud9. É preciso estar familiarizado com as três áreas do console do AWS Cloud9, indicadas no seguinte snapshot:

    • File explorer (Explorador de arquivos): no lado esquerdo do IDE, é exibida uma lista dos arquivos contidos no diretório.
    • File editor (Editor de arquivos): na área superior direita do IDE, você visualiza e edita os arquivos que selecionou no explorador de arquivos.
    • Terminal: na área inferior direita do IDE, você roda os comandos que executam amostras de código.

    (Clique para aumentar)

  • Etapa 3: Faça download do código subjacente

    Neste laboratório, você usa o JavaScript para interagir com seu banco de dados do Amazon DynamoDB e o Amazon SNS. Execute os comandos a seguir no terminal do AWS Cloud9 para fazer download e abrir o código do módulo.

    cd ~/environment
    curl -sL http://d118jxrmrxsq90.cloudfront.net/turn-based.tar | tar -xv
    

    Execute o comando a seguir no terminal do AWS Cloud9 para visualizar os diretórios.

    ls

    Você verá dois diretórios no gerenciador de arquivos do AWS Cloud9:

    • application (aplicativo): o diretório de aplicativos contém o código de exemplo do aplicativo de jobo baseado em turnos. Esse código é semelhante ao código que você teria em seu back-end real de aplicativo de jogo baseado em turnos.
    • scripts: o diretório de scripts contém scripts no nível do administrador, como os usados para criar recursos da AWS ou carregar dados no banco de dados.

    Execute o comando a seguir no terminal do AWS Cloud9 para instalar as dependências dos dois diretórios.

    npm install --prefix scripts/ && npm install --prefix application

    Execute o comando a seguir no terminal do AWS Cloud9 para definir a região da AWS em um arquivo de ambiente. Este exemplo usa us-east-1, mas insira a região da AWS de sua escolha a ser usada no laboratório.

    echo "export AWS_REGION=us-east-1" >> env.sh && source env.sh

    Use o arquivo env.sh para armazenar variáveis de ambiente e outros parâmetros que precisar neste laboratório. Se você fizer uma pausa no laboratório e depois iniciar uma nova sessão no ambiente do AWS Cloud9, execute o seguinte comando no terminal para recarregar as variáveis de ambiente:

    source env.sh

Neste módulo, você aprendeu sobre o aplicativo de exemplo que criou neste laboratório. Você também configurou uma conta da AWS e uma instância do AWS Cloud9.

Agora você está pronto para começar o laboratório. No próximo módulo, você provisionará o banco de dados do Amazon DynamoDB.