MihutBalasanu / sudoku

Apache License 2.0
1 stars 0 forks source link

unused n #2

Open ionutab opened 6 years ago

ionutab commented 6 years ago

https://github.com/MihutBalasanu/sudoku/blob/8c09db3ea174d9a4b0b8995ddd6a3da00fda5dc8/20181003_Sudoku/src/sudoku/Main.java#L11

Ai declarat n dar nu l-ai folosit. De asemenea ai declarat si o matrice mySudoku, dar nu mai este necesara.

Ai folosit 9 in mai multe locuri din cod insa. Daca vrei sa ai o dimensiune variabila la jocul de sudoku, foloseste n cand construiesti un nou joc de sudoku. MySudoku mySudoku = new MySudoku(n);

MihutBalasanu commented 6 years ago

De acord cu faptul ca trebuie sa fie o dimensiune variabila. De acord ca mySudoku trebuie sa fie din clasa MySudoku ( m-am gandit si eu inainte ); dar totusi mySudoku nu trebuie sa fie totodata o matrice? Ma gandesc sa incep astfel:

private int n; private MySudoku mySudoku = new MySudoku(n);

public MySudoku(int n) { this.n = n; int[][] mySudoku = new int[n][n]; }

ionutab commented 6 years ago

Ai 2 lucruri diferite ce le-ai referentiat cu denumirea mySudoku.

  1. mySudoku din main ce e o variabila de tip MySudoku
  2. matricea din clasa MySudoku Si poate din cauza asta ar putea sa fie confuzie intre clasa si starea jocului din clasa.

As recomanda sa schimbi denumirea matricei din clasa MySudokudin mySudoku in game spre exemplu. int[][] game = new int[n][n];

Astfel nu o sa mai ai confuzie de nume. Iar pe game e ideal sa operezi din din cadrul clasei MySudoku.

MihutBalasanu commented 6 years ago

Pana acum am crezut ca obiectul mySudoku este acelasi lucru cu starea. Acum am inteles ca obiectul este un joc complet, dus pana la capat, care difera de alte obiecte ( jocuri duse pana la capat ). Iar starea este un stadiu intermediar al unui obiect mySudoku, rezultat dupa o mutare ( care este alt obiect -> sudokuMove ). Am facut redenumirile in MySudoku si modificarile in Main. Tot nu merge dar simt ca ma apropii.