Skip to content

Instantly share code, notes, and snippets.

@BekoBou
Created March 27, 2020 21:42
Show Gist options
  • Save BekoBou/b479c2fd9966e2fde858709b9100db96 to your computer and use it in GitHub Desktop.
Save BekoBou/b479c2fd9966e2fde858709b9100db96 to your computer and use it in GitHub Desktop.
Review Liza Project

Review

Критерии Академии

  • либо ты обзываешь handler всё, либо on, но не в перемешку
  • ненужные комментарии в проекте
  • не сбрасывается выбранный фильтр при повторной отправке
  • не везде используются итераторы по массивам
  • функции объявлены разными способами

effect-control-interface

  • effectInterfaceParams не номальное перечисления, фарш какой-то внутри. Либо это объект, либо что?
  • именование documentMouseUpHandler, effectControlMousedownHandler — разный стиль.

filters

  • picturesArray — он просто pictures, и далее вездее array, кроме модуля util, то же можно сказать про переменные с data, она может быть только в модуле data или в util.
  • сортировка происходит неоптимально, в случайном варианте цикл работает дольше чем надо

upload-image

  • нейминг экспортируемых функций (одной), если она одна, то зачем словарь? :)

util

  • не используется getRandomNumber
  • странный код, смотри — isEscapeEvent, escapeStopPropagationHandler. Найди 100 отличий :) Точно должно быть здесь?

Критерии Нормального Человека

backend

  • не должно быть requestType в модуле совсем, эту информацию и так знают методы, которые отвечают за обработку дальше

effect-control-interface

  • названия модуля очень странное, это просто фильтры, а то, что у тебя фильтр — это сортировка :)
  • зачем-то getCoordinateX объявлена внутри другой функции, хотя по сути она может быть и вне неё. Выше по коду точно, а не внутри обработчика. Зачем-то она делает сразу вычисления, хотя можно было бы разделить эти функции. То есть одна функция борется с пределами, а основная уже расчитывает изначальную координату.
  • Кажется перемудрила с обработчиками, и поведение от смещения не очень юзер френдли, правильнее отталкиваться от положения курсора — это видно, когда ты выходишь за пределы ползунка. То есть ты его берёшь, уводишь за пределы, а потов возврщаешься. Ожидание, что курсор будет двигаться с точкой, а на практике они двигаются синхронно, но располагаются в разных частях.

effect

  • можно было бы объеденить его с effect-control-interface, по сути это одно и то же. Можно было бы тогда сделать проще код.

filters

  • если класс верстальщик обозвал фильтром, то это не обозначает, что надо код называть так же. Верстальщик просто не подумал, а ты теперь в коде потуаешься, так как сортировка лежит в модуле фильтров. Ну такое.
  • filterPictures — я бы создал словарь, вместо switch и возвращал бы результат применения функции или чистый массив по результату работы. Будет чуть более замороченнее, но чище.

image-setup

  • странно сделано обработка ошибок, в случае ошибки с сервера мы ещё и данные потеряем :(
  • форма не переводится в начальное состояние Нормально

main

  • отрисовка большой картинки не вынесена в отдельный модуль
  • отрисовка большой картинки знает о массиве с изображениями
  • обработчики модуля render находятся в модуле main. Странно.

render

  • при отрисовке комментариев происходят лишние проверки

request-response

  • смотришь что тут за ответы на запросы, а тут ошибки обрабатываются

scale

  • зачем-то экспортируется Scale (я знаю зачем, а ты не написала этот код в этом модуле, а зачем-то вынесла его в другой)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment