Skip to content

MrThursby/smykov-v

Repository files navigation

Онлайн-школа

Смысл проекта заключается в том, чтобы предоставить возможность

  • Учителю
    • Загружать видео-курсы на сайт и продавать
    • По мере прохождения курса пользователем, наставлять его, с помощью возможности выполнения домашней работы пользователем и возможностью указать на ошибки или неточности пользователя учителем
    • Получать анонимный фидбек от пользователей, чтобы повышать качество курсов
    • Иметь возможность поделиться новостями и предупредить пользователей о возможных технических работах.
  • Пользователю
    • Покупать курсы
    • Проходить их
    • Выполнять домашнюю работу
    • Получать наставления от учителя
    • Обсуждать купленные курсы и уроки в комментариях, чтобы одни и те же вопросы не приходилось задавать учителю

Организация кода

Я решил полностью отделить frontend от backend, для того, чтобы полностью погрузиться в изучение принципов api и пройти все этапы разработки на frontend фреймворке в данном случае - Vue.js. Также данное решение позволяет в будущем без проблем создать мобильные приложения, на случай если такая возможность появится.

Текущее состояние

База данных сформирована, но может подвергнуться изменениям, в связи одним проблемным местом (позже могу описать подробнее).

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

В моих знаниях существует крупный пробел, который мне предстоит закрыть в процессе разработки этого проекта: я еще не работал с деньгами (онлайн-кассами) в своих проектах, но у меня есть мысли откуда начинать поиск информации.

Принципы разработки

Самыми важными частями своего кода я считаю читаемость, простоту, расширяемость и возможность повторно использовать один и тот же код. Не всегда это присутствует в моём коде, но я к этому стремлюсь. Стараюсь осмысленно называть переменные, классы, методы. Хочу отметить структуру папок в проекте и названия файлов.

Я редко комментирую код (обычно в тех местах, где может быть не очевиден смысл), хочу услышать критику, если есть время и возможность.

Дополнительно

Данный проект, хоть и не закончен, более всего отражает мои навыки и знания.

Жду вашего сообщения

  • Если вдруг у вас возникли какие-то мысли, замечания по поводу этого проекта.
  • Если вы видите какие-то моменты, которые мне нужно подтянуть
  • Если вам не нравится какие-то места в коде (которые возможно являются проблемными), просто укажите мне на них, я поработаю над ними.

Этот репозиторий только для backend части. Присутствует также репозиторий и для frontend.

Связь со мной

Ещё кое-что

Проект является открытым временно. Через некоторое время репозиторий станет приватным, т. к. этот проект полностью реален и рано или поздно целевая аудитория будет им пользоваться.

About

Backend for online-school

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published