iliapl / lab3

0 stars 0 forks source link

Ревью 2 #2

Open valerikkk opened 6 months ago

valerikkk commented 6 months ago

1) Почему бы не сократить до turnOn(Place.Door/Human) и не сделать перегрузкой методов, тем более, что реализация идентична за исключением параметров? https://github.com/iliapl/lab3/blob/6accd8a8e2fdfa25e40bf225a2c9802434c27827/src/people/Human.java#L74-L82

2) hashCode() является уникальным идентификатором, и в теории должен однозначно задаваться человечком, но в данном случае он почему-то зависит, от его чувств и одежды, которые могут быть изменчивы. https://github.com/iliapl/lab3/blob/6accd8a8e2fdfa25e40bf225a2c9802434c27827/src/people/Human.java#L13-L16

3) Почему-то метод speak реализует ещё и теоретический метод shakeOff - стряхивать https://github.com/iliapl/lab3/blob/6accd8a8e2fdfa25e40bf225a2c9802434c27827/src/people/Rachel.java#L110 Ну и реализовано через sout, когда можно было бы поиграться с хрипотцой или именем хотя бы и записать в printf https://github.com/iliapl/lab3/blob/6accd8a8e2fdfa25e40bf225a2c9802434c27827/src/people/Rachel.java#L123

4) Та же тематика и в методе waiting. Можно из него дополнительно вызывать метод getNervous или около того https://github.com/iliapl/lab3/blob/6accd8a8e2fdfa25e40bf225a2c9802434c27827/src/people/Rachel.java#L353-L356

5) Всем по разуму выдал: и Рэчел, и дежурному, и контролёрше, а клерка обделил, личный не выдал https://github.com/iliapl/lab3/blob/6accd8a8e2fdfa25e40bf225a2c9802434c27827/src/people/Clerk.java#L13-L15 Вот пример контролёра class Consciencecontroller extends Conscience{ } private Consciencecontroller consciencecontroller;

6) Нет интерфейсов, можно тот же turnOn в него положить или передвижения Рэчел 7) Убрать неиспользующийся абстрактный класс https://github.com/iliapl/lab3/blob/6accd8a8e2fdfa25e40bf225a2c9802434c27827/src/things/Item.java#L3-L4

valerikkk commented 6 months ago