Skip to content

MatheusPoliCamilo/sudoku

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

19 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Sudoku

Projeto criado em um code challenge, utilizando JavaScript. Você pode acessá-lo localmente clonando o repositório, ou no link: https://matheuspolicamilo.github.io/sudoku/

image

Sudoku é um quebra-cabeça criado por Howard Garns, um arquiteto aposentado e construtor independente de quebra-cabeças.

O objetivo do jogo é preencher as células vazias de um grid 9x9 com os dígitos de 1 a 9. O grid é dividido em linhas, colunas e regiões (que são sub-grids de tamanho 3x3). O quebra-cabeça contém algumas pistas iniciais, que são números inseridos em algumas células, de maneira a permitir uma indução ou dedução dos números em células que estejam vazias. Cada coluna, linha e região só pode ter um número de cada um dos 1 a 9.

Code Challenge

Dado um tabuleiro de Sudoku preenchido totalmente ou parcialmente, validá-lo conforme as regras do jogo e informar quais as células que contém valores incorretos.

Começando

Code challenge de validação de Sudoku, utilizando HTML, CSS, JavaScript, Lodash e OOP, inspirado em boas práticas de programação como Clean Clode.

As instruções abaixo demonstrarão o necessário para criar um projeto semelhante em JavaScript.

Pré requisitos

ES6 (JavaScript)
Lodash
HTML & CSS
Object-oriented programming

Instalando

A biblioteca Lodash também pode ser utilizada via CDN (Rede de Distribuição de Conteúdo):

<script src="https://cdn.jsdelivr.net/npm/lodash@4.17.11/lodash.min.js"></script>

Caso contrário, você pode baixar para analisar o código fonte e também para a intregração com seu IDE ou editor de texto.

Sugestões

Recomendo a leitura do artigo Javascript Clean Code Best Practices, para boas práticas de Clean Code com JavaScript.

https://devinduct.com/blogpost/22/javascript-clean-code-best-practices

Implementação

Utilizado o GitHub Pages para disponibilização do código via Web. Ele se encarrega de fazer o deploy dos commits realizados.

O GitHub Pages é um serviço de hospedagem de site estático e não suporta server-side code, como PHP, Ruby ou Python.

Construído com

  • Lodash - Lodash é uma biblioteca JavaScript que fornece funções utilitárias para tarefas comuns de programação usando o paradigma de programação funcional.
  • PhpStorm - Ambiente de Desenvolvimento Integrado que fornece um editor para PHP, HTML e JavaScript com análise de código em tempo real, prevenção de erros e refatoração automatizada para código PHP e JavaScript.

Autor