Основные возможности платформы Hexlet не доступны в вашем браузере. Пожалуйста, обновитесь.

Комментарии в код ревью

Избавился от избыточных проверок

19 февр., 12:24

Оставил дебильную логику с нахождением больших чисел, но переписал в отдельную процедуру нахождение суммы квадратов.

19 февр., 12:19

Нагородил лапшы из условий, более очевидного решения в голову не пришло, только такие проверки. Процедуру суммирования квадратов не вынес в отдельную процедуру, вот это более значительный косяк =)

19 февр., 12:08

Я видимо это представил совсем на оборот, что метод из класса передает параметры, а вся логика находится в трейтах что бы не дублировать код. Теперь хоть разобрался и стало понятно решение учителя

19 февр., 11:18

v.1 - функция append без рекурсии

19 февр., 09:43

Здравствуйте, считается ли данное решение - good practice?

Если нет - укажите, пожалуйста, на ошибки, и как можно улучшить алгоритм

18 февр., 20:25

Проблемы:

  • код повторяется
  • не прошел один из тестов
18 февр., 17:32

Вариант с нормализацией дробей

18 февр., 13:53

Нет, так писать нельзя. В классах User и Car функция compare должна осуществлять именно сравнение age. А трейт уже использует этот метод, именно поэтому он объявлен, как абстрактный, чтобы быть уверенным, что он будет реализован в классах, которые используют трейт. Так это сделано и в решении учителя. Метод compare должен реализовывать сравнение возраста текущего объекта с переданным ему, а у вас просто возвращает age. И в трейте не должно быть логики, сравнения как у вас, там должны быть методы, которые используют результаты compare.

18 февр., 08:02

Решение проходит но чет сомневаюсь что так писать можно. Прокомментируйте плиз мои ошибки.

18 февр., 07:08

За комменты + :)

17 февр., 18:48

Мое решение немного отличается от решения учителя и возник вопрос, правильно ли я написал код и нет ли тут подводных камней? Смущает

public $vars = array();

вот эта строка потому что у меня никаких переменных объявлено не было.

17 февр., 15:28

Не подумал об универсальности сортировки, поэтому там просто разность, надо больше/меньше, как в решении учителя

16 февр., 14:30

Извиняюсь, вероятно, случайно куда-то нажал и отправил код.

15 февр., 16:22

Считерил, перешёл к другой структуре данных. Может позже перепишу правильно

15 февр., 14:00

Какую-то я страшную штуку придумал. Говорила мама, читай книжки умные.

14 февр., 21:59

Первую версию привожу как есть - со всей отладочной печатью и замечаниями линтера. Вторая будет чистая

14 февр., 07:09

Теперь в версии 2 само состояние отвечает за то чтобы поменять себя на другое состояние.

13 февр., 19:12

Единственно бывало в тестах строчки комментировал, что бы часть задачи проверить, но решение не смотрел если проходило, может из-за этого быть?

13 февр., 18:27

Понял. А еще не по теме вопрос, если можно, у меня в профиле почему-то стоит решено 76% хотя я ни разу в решение учителя не смотрел, почему так?

13 февр., 18:24

Посмотрел решение учителя, ну, без комментариев, конечно. Всё гениальное просто:)

13 февр., 15:40

Вы видите, что последний блок if имеет лишний отступ?

13 февр., 15:31

Спасибо за ответы, мне почему-то такое решение сразу в голову пришло.А почему линтер 4 пробела требует? Редактор же сам их делает.

13 февр., 15:21
  1. Нельзя сказать, что в данном коде "не использовался 'asc'" - он уже используется по факту того, что является значением по умолчанию, а desk используется в условии сравнения с ним.
  2. В ряде случаев данный код делает лишний revers - зачем делать последующую проверку (direction === 'desc') и, тем более, обработку reverse(), если можно сразу задать сортировку в правильном направлении?
  3. По стилю кода - зачем вводите одинаковые имена для разных сущностей?! В коде рядом, бок о бок, объявляется константа sort и используется встроенный метод sort - так делать категорически неправильно. Далее, не игнорируйте отчёт линтера - там есть замечания, которые Вы не поправили.
13 февр., 10:55

математически нет ошибки... но с именами наверно Вы правы. учтем. спасибо

12 февр., 21:30