Ответы пользователя по тегу Бэкенд
  • Старт в бэкенд-разработке (Python). Можно ли обойтись без знания фронтенд-технологий?

    @0x131315
    Конечно можно.
    Совсем без фронта обойтись скорее всего не выйдет - много где на банке лежит html и js, и поправить что-то самому намного быстрее, чем объяснить задачу фронтендеру.
    Но верстать не обязательно.
    Много задач чисто по бекенду, часто очень сложные, требующие именно специалиста. Работа с БД, бизнес-логика, общий код - все это чисто бекенд.
    Ответ написан
    Комментировать
  • Как все-таки правильно разделять back-end от front-end?

    @0x131315
    По возможности стоит следовать принципу MVC, разделяя код на слой данных, слой логики и слой отрисовки - это сгруппирует однотипный код, и сильно упростит его поддержку.
    Специфичные вещи, например работу с внешним API, следует оформлять в отдельные классы, модули, хэлперы - это облегчит работу с такими вещами, упростит отладку (сам класс можно протестировать отдельно), сгруппирует код: код, отвечающий за конкретное API, весь в одном месте. И когда этот код понадобится вновь - всё уже готово и отлажено, подключи класс и пользуйся.
    Сразу весь функционал реализовывать не нужно - по мере надобности недостающее допишется. В крайнем случае можно набросать заглушки (пустые методы) для чего-то, что должно быть, но пока не нужно.

    Что касается конкретно отрисовки - да, активное использование ajax и реактивных фреймворков серьезно улучшает приложении: гораздо проще реализовывать странички со сложным поведением, не нужно перерисовывать куски страниц, думать как разбить и обновить контент, просто отдаёшь данные, шаблон, и фреймворк сам перерисовывает нужные части.
    Но что-то простое гораздо быстрее отрендерить на сервере, просто вставив в нужные места верстки php-код. Плюс серверный рендеринг скрывает промежуточные данные - в страничку вшивается только результат вычислений, и у пользователя нет никаких способов получить промежуточные данные, или даже узнать о том, что они существуют.
    Так что для простых или важных вещей стоит пользоваться php, для сложных - отдавать данные по ajax, отрисовывать их на клиенте, а для неответственных данных можно даже вычисления перенести на клиент, но стоит помнить, что js немного неожиданно работает с некоторыми вещами: приведение типов, время, математика, числа с плавающей точкой.
    Как промежуточный вариант можно пользоваться шаблонизаторами - с ними в несколько раз быстрее раскидать данные по шаблону, чем на чистом php, и код получается чище, но для сложного поведения все равно лучше реактивный фреймворк.
    Ответ написан
    1 комментарий