Дипломный проект ставит жирную точку в обучении. Цель этого проекта, проработка прикладных инструментов веб-разработчика. Фреймворки, базы данных, orm, все это будет здесь. Темы:
-
Проектирование. Отображение предметной области на хранилище, одна из ключевых задач при разработке. Нормализация (и Денормализация) базы данных, связи между сущностями, все это входит в задачи по проектированию.
-
Heroku (PaaS). Разработка, это только половина дела. Доставка до рабочего окружения и запуск проекта не менее важная задача.
-
Rollbar. Трекинг ошибок в продакшене это залог спокойного сна и уверенность в работоспособности проекта.
-
Webpack. Любой современный веб-сайт, так или иначе, содержит клиентский код, даже если не использует фронтенд фреймворки. Причем речь не только про js, а так же про css и всевозможные процессоры (пре и пост). Все это добро нуждается в управлении и сборке.
-
PostCSS, Autoprefixer. Главный тренд в верстке.
-
Gulp. Чем сложнее проект тем больше консольных задач он включает. Для упрощения их создания и поддержки существует целый класс решений.
-
ORM. Типичные приложения не работают с базой данных напрямую. Этим занимаются специальные фреймворки. Они берут на себя задачи по построению запросов, выборке, сохранению сущностей в базе данных.
-
Микрофреймворк Koa.js. Замена
expressjsсозданная ее же разработчиками. Самый модный и перспективный. -
Шаблонизация. Правильный поход к генерации серверного
htmlрезко повышает коэффициент повторно используемого кода и упрощает поддержку проекта -
Bootstrap. Главный css-фреймворк админок и прототипов. Хороший пример для обучения тому, как должен быть структурирован html и css.
Необходимо разработать Task Manager, систему управления задачами, подобную
http://www.redmine.org/ Основные возможности системы:
- Регистрация
- Аутентификация
- Управление задачами
- Фильтрация