Ответы пользователя по тегу Веб-разработка
  • Как организовать архитектуру мероприятий?

    @EvgeniiR
    https://github.com/EvgeniiR
    Немного о будущих цифрах:
    Организаций: ~ 2000
    тренеров: ~ 15000
    спортсменов: ~ 25000
    Заявок: ~ 100000 в год

    С нагрузками проблем не будет, не беспокойтесь.

    Возможно следует сделать один сервис Мероприятия, который будет объединять в себе всё это?

    Да. Микросервисы про независимую разработку разными командами и независимый деплой.
    Для разработки приложения в одиночку они не нужны совсем. Это огромное усложнение впустую.

    Тогда как организовать лучше слабую связанность в сервисе, чтобы можно было менять одну регистрацию на другую?

    Внутри монолита приложение так же прекрасно разбивается на модули/контексты, как и в микросервисах.

    Например, сделали новую регистрацию v2.0 и теперь нужно заменить. Или дописали новую - нужно добавить. Интерфейсы?

    Да, интерфейсы, IoC, контроль зависимостей, декомпозиция, итеративное проектирование и рефакторинг.

    Имеет ли смысл регистрацию и счёты разделить на свои отдельные сервисы.

    Имеет смысл ложить вместе те данные, которые вместе меняются и используются. Постарайтесь ответить для себя на этот вопрос. Так же помните что лучший выбор решения - не выбирать а отложить на потом.

    3. Имеет ли смысл делать общий сервис Person? Или в каждом сервисе добавить Member, Teacher, Artist Organizator?

    Сквозной функционал между сервисами это плохо т.к. плодит зависимости и влечёт каскадные изменения после каждой правки. Делаете сервисы так чтобы им не было важно, Teacher там, Member или Artist.

    От монолита точно стоит уходить.

    Нет.

    p.s. Хотите использовать что-то крутое и сделать ваш проект лучше и качественнее - пишите unit-тесты.
    Ответ написан
    3 комментария
  • Где найти ресурс с подборкой "правильных" решений на PHP?

    @EvgeniiR
    https://github.com/EvgeniiR
    как правильно реализовать авторизацию с токенами, сделать корзину в онлайн магазине и.т.д,

    Есть бесконечное число вариантов сделать корзину в онлайн магазине, и бесконечное число переменных влияющих на принятое решение.
    Вы знаете что такое комбинаторный взрыв? Это именно то что произойдёт если вы будете пытаться запомнить все реализации любых задач, не говоря уже о том что любая новая задача остаётся по прежнему уникальной(в какой-либо степени), и просто копирование решения из похожей задачей почти никогда проблемы не решит, а в связи с упомянутой выше проблемой в виде множества обстоятельств влияющих на набор выбранных решений, слепое их копирование скорее сильно навредит развитию проекта, чем поможет в сколь-либо обозримом будущем.

    Если хотите научиться делать вещи хорошо, подумайте над тем что нужно чтобы делать вещи хорошо, и как отличить лучшее решение от худшего, на что нужно ориентироваться при выборе решения, какие есть базовые приёмы техники и критерии качества. Коротко говоря - возьмитесь за базовые вещи. Начните с книг.

    P.s. кстати, последнее что я смотрел про проектированию корзины - вот. Полезный ролик чтобы взглянуть на вещи по новому, но не для того чтобы копировать решение. естественно.
    Ответ написан
    4 комментария
  • Как нынче установить шаблон?

    @EvgeniiR
    https://github.com/EvgeniiR
    Можно, формально все будет работать точно также (ну только в один js файл все не скомпилируется), но вы потеряете все преимущества использования сборщиков фронтенда и пакетного менеджера
    Ответ написан
    3 комментария
  • Насколько часто используется Spring HATEOAS в реальных проектах?

    @EvgeniiR
    https://github.com/EvgeniiR
    Вот вы на Тостер заходите, вопросы создаёте, просматриваете, сайт обновляется, появляются новые фичи, а приходилось ли вам обновлять ваш клиент (браузер) чтобы новыми фичами пользоваться?
    Мне не приходилось, нужно лишь страничку обновить, и получить обновленный гипертекст с новыми возможностями для переходов состояния.
    Вот вам и HATEOAS, используется часто. Профит - расширяемость, масштабируемость без необходимости обновления клиента.

    Благодаря HATEOAS, в частности, мы видим Веб таким, каким он существует сейчас, и с его текущими масштабами.

    А если к этому добавить уникальные url'ы, self-descriptive messages, кэширование, не хранить состояние клиента на сервере, использовать известные клиенту и серверу медиа типы можно и REST API получить(есть ещё нюансы)
    Ответ написан
    Комментировать
  • Структура данных на фронт-енде и бек-енде отличаются. Кто должен переделывать?

    @EvgeniiR
    https://github.com/EvgeniiR
    Выкиньте бэкендеров и воспользуйтесь каким-нибудь serverless решением если они просто прослойка перед базой и не умеют даже данные в формат отличный от таблички для write модели конвертить
    Удобство это по сути главное требование к API, а проблемы Бэкенда должны оставаться на бэкенде.

    P.s. а ещё лучше прикинуть costs/benefits вместо непродуктивных споров
    Ответ написан
    6 комментариев
  • Что нужно знать, чтобы запустить свой блог?

    @EvgeniiR
    https://github.com/EvgeniiR
    не CMS и пр. - ведь это просто блог

    Вот как раз для блога, если цель - вести, извиняюсь, блог, как раз стоило бы взять готовую CMS - скорее всего Wordpress, и не париться. Всё что нужно от блога - стабильно работать, не мешать SEO и содержать полезный контент - у CMS с первым и вторым всё хорошо уже из коробки. 3 - зависит только от вас.

    Ну а для саморазвития - всё к чему душа лежит.

    В общем, расскажите мне основные принципы запуска сайта на хостинг, его защиту, необходимое ПО

    Ставите на VDS-ку веб-сервер, настраиваете его чтоб слушал запросы и вызывал ваш код. Всё.
    А нет, не всё - пароль дефолтный смените. Теперь всё.
    Ответ написан
    Комментировать
  • Существует ли WYSIWYG HTML редактор для сайта без отсебятины?

    @EvgeniiR
    https://github.com/EvgeniiR
    trix хорошая штука https://github.com/basecamp/trix
    Ответ написан
    Комментировать
  • Поддержка браузеров?

    @EvgeniiR
    https://github.com/EvgeniiR
    Тут есть много статистики об использовании браузеров. Можно выберить платформы/даты выборки/выборки и указать выборку именно по версиям:
    gs.statcounter.com
    Ответ написан
    Комментировать
  • Как сделать вывод без перезагрузки данных?

    @EvgeniiR
    https://github.com/EvgeniiR
    Отправлять POST запрос на сервер через AJAX и javascript`ом выводить ответ пользователю.
    Либо переписать калькулятор полностью на JS. У меня в колледже на практике было такое задание.
    Вот решение на codepen
    https://codepen.io/evgrom/pen/OQrxYo
    Там 4 операции. Если оставить только сложение будет 8 строк js кода.
    Ответ написан
    Комментировать