Skip to content

Instantly share code, notes, and snippets.

@Asenim
Last active April 29, 2024 16:41
Show Gist options
  • Save Asenim/a166b886d5587c2cb7e8698ada944eb6 to your computer and use it in GitHub Desktop.
Save Asenim/a166b886d5587c2cb7e8698ada944eb6 to your computer and use it in GitHub Desktop.

https://github.com/Spacier829/Hangman
Ревью от Ильи

Привет!

  1. Для статичных переменных имя поля обычное, для статичных и final (константы) с большой буквы. https://github.com/Spacier829/Hangman/blob/8f774da19f485cc22b308817a271635cfe3db1aa/src/Main.java#L6-L26

  2. Жёстко, лучше было string-ой сделать через """ в новых версиях java или через stringbuilder в 8 версии. Аргумент кста почему-то в стиле константы указан. И здесь switch больше по смыслу подходит, желательно если на новых версиях java, то использовать и более красивую версию через "->". https://github.com/Spacier829/Hangman/blob/8f774da19f485cc22b308817a271635cfe3db1aa/src/Main.java#L177-L256

  3. Очень длинные местами названия методов - "createMaskedWordWithOneHelpLetter", "selectRandomWordFromDictionary", "openLettersInMaskedWord".

  4. Противоречие дикларируемому и фактическому - там могут быть строки. https://github.com/Spacier829/Hangman/blob/8f774da19f485cc22b308817a271635cfe3db1aa/src/Main.java#L24C1-L26C7 Вот здесь это чекается чтобы строки били в одну букву, но тогда почему строку не конвертнуть в char и работать с char. Для коллекций есть обертка Character. https://github.com/Spacier829/Hangman/blob/8f774da19f485cc22b308817a271635cfe3db1aa/src/Main.java#L142C1-L143C21

  5. Из пункта выше, надо проверить на словах с несколькими буквами, так как сет не учитывает кол-во вхождений букв. Для этого можно использовать Map<Character, Integer>/

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment