Git Product home page Git Product logo

diplom's Introduction

Диплом курса «Базовый JavaScript в браузере»

Описание

Видеодемонстрация и описание (нажмите на изображение):

BHJ Diploma

Вам необходимо разработать приложение для управления финансами.

Сервис предполагает:

  1. Авторизацию/Регистрацию/Выход
  2. Создание и удаление счетов
  3. Создание и удаление транзакций

У вас уже готова HTML и CSS разметка. Ваша задача - реализация JavaScript-логики.

С чего начать

Выполняйте работу по шагам, описанным в разделе «Основные задачи».

Ориентируйтесь на описание шагов, а также на комментарии в коде каждого файла.

Работа может быть реализована 2-мя способами: с использованием удалённого сервера по адресу "https://bhj-diplom.letsdocode.ru" или развёрнутым локально по адресу "http://localhost:8000". Описание по запуску локального сервера и серверной логики можете найти в файле

Важно! При работе с локальным сервером рабочая директория public/js, при работе с удаленным сервером js

Основные задачи

Выполняйте данные задачи по порядку:

  1. Разработка API для взаимодействия с Backend
  2. Разработка пользовательского интерфейса
    1. Кнопка управления боковой колонкой
    2. Управление окнами
    3. Управление формами
    4. Обработка нажатий на кнопки бокового меню
  3. Взаимодействие API с пользовательским интерфейсом
    1. Регистрация
    2. Авторизация
    3. Отображение информации о пользователе
    4. Создание новых счетов
    5. Создание новых транзакций (доход/расход)
    6. Отображение страницы транзакций при выборе счёта

Файловая структура

Для удобства работы весь проект разбит на файлы, каждый из которых в конченом счете будет занимать от 5 до 100 строк. В каждом файле содержится только один класс, что упрощает навигацию по проекту.

Для более объемного понимания работы приложения, рекомендуется изучить поведение приложения начиная с файла js/App.js (он уже полностью для вас написан).

  • js/
    • api/ (Связь с сервером, сетевые запросы)
      • Account.js (управление счетами)
      • createRequest.js (доработка XHR)
      • Entity.js (Базовый класс для счетов, пользователей и расходов/доходов)
      • Transaction.js (управление доходами и расходами пользователя)
      • User.js (регистрация/авторизация/вход в приложение)
    • ui/
      • forms/ (формы приложения)
        • AsyncForm.js (Базовый класс для всех форм. Используется преимущественно во всплывающих окнах)
        • CreateAccountForm.js (форма создания нового счёта)
        • CreateTransactionForm.js (форма создания нового расхода/дохода)
        • LoginForm.js (форма входа)
        • RegisterForm.js (форма регистрации)
      • pages/ (страницы приложения)
        • TransactionPage.js (страница расходов и доходов конкретного счёта)
      • widgets/
        • AccountsWidget.js (виджет управления счетами)
        • TransactionsWidget.js (виджет управления расходами и доходами)
        • UserWidget.js (виджет текущего пользователя)
      • Modal.js (базовый класс для всех всплывающих окон)
      • Sidebar.js (класс управления боковой колонкой)
    • App.js (класс приложения)

Формат сдачи

Перейдите по ссылке в repl.it и нажмите кнопку Fork.

Ссылку на доработанный проект предоставьте вашему дипломному руководителю.

Как правильно задавать вопросы дипломному руководителю?

Что следует делать, чтобы все получилось:

  • Попробовать найти ответ сначала самому в интернете. Ведь, именно это скилл поиска ответов пригодится тебе на первой работе. И только после этого спрашивать дипломного руководителя
  • В одном вопросе должна быть заложена одна проблема
  • По возможности, прикреплять к вопросу скриншоты и стрелочкой показывать где не получается. Программу для этого можно скачать здесь https://app.prntscr.com/ru/
  • По возможности, задавать вопросы в комментариях к коду.
  • Начинать работу над дипломом как можно раньше! Чтобы было больше времени на правки.
  • Делать диплом по-частям, а не все сразу. Иначе, есть шанс, что нужно будет все переделывать :)

Что следует делать, чтобы ничего не получилось:

  • Писать вопросы вида “Ничего не работает. Не запускается. Всё сломалось.”
  • Откладывать диплом на потом.
  • Ждать ответ на свой вопрос моментально. Дипломные руководители - работающие разработчики, которые занимаются, кроме преподавания, своими проектами. Их время ограничено, поэтому постарайтесь задавать правильные вопросы, чтобы получать быстрые ответы!

diplom's People

Contributors

nkhashchanov avatar vovachebr avatar daryaul avatar darkelectro74 avatar neizerth avatar

Watchers

James Cloos avatar  avatar

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.