samadio / SDM_exam

1 stars 0 forks source link

InvalidMoveException #3

Closed federico-camerota closed 4 years ago

federico-camerota commented 4 years ago

https://github.com/samadio/SDM_exam/blob/gaspa/src/main/java/gamesuite/Move.java#L23

Se la nuova classe estende Exception essa è una checked exception. Per l'uso che ne facciamo potrebbe aver più senso aver una unchecked exception (estendendo RuntimeExcpetion). Motiverei tale scelta con il fatto che se una mossa non valida viene passata alla board si sta parlando di un errore di programmazione (la validità andava controllata prima, come nel caso degli indiici di una lista o array).

https://howtodoinjava.com/java/exception-handling/checked-vs-unchecked-exceptions-in-java/

andygaspar commented 4 years ago

non ho molto capito, prova a rispiegare cosa intendi perché non sono sicuro se tu voglia una checked ex o una unchecked ex. Forse avrebbe senso avere due ex: LineAlreadyCheckedException OutOfBoardException (che viene lanciata dalla buildIn OutOfBoundException)