company_banner

Секция о клиентском программировании на HighLoad++


    Не знаю, как вы, но я застал время, когда фронтенда еще не было. Большинство макетов программисты могли сверстать самостоятельно, ну что там сложного:
    Конференции Олега Бунина (Онтико)
    409,53
    Конференции Олега Бунина
    Поделиться публикацией

    Комментарии 19

      +7
      Посмотрите на современный фронтенд — это настоящая большая программа на JavaScript, со своей архитектурой, модульным разбиением, объектно-ориентированным программированием, кешированием и так далее. Зачастую это не менее, а более сложный код, чем серверный. На клиенте все больше бизнес-логики, а сервер превращается в простое хранилище данных.

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

      P.S. Ну и поверьте, бэкенд-технологии тоже не стоят на месте, хотя лично я за мир-дружбу-жвачку, если что. Работы всем хватит.
        0
        Золотые слова! Все профессии важны.
          +1
          Ну бросьте, мы скромные ребята, ни над кем возвышаться нам не надо. Понятное дело, без бэка нам никуда :) Но все же Вы не совсем точно заметили ошибку (имхо): бизнес логика будет дублироваться только для валидации данных. Логика процессинга этих данных никогда не перекочует на фронт и навсегда останется на бэке из соображений безопасности. Однако, во всех SPA на фронт выносится работа с роутингом, данными (агрегация и финальный процессинг), рендеринг (я имею ввиду механизм составления шаблона (и иногда кое-что ещё), так-то рендеринг всегда происходит в браузере), ну и всякие анимашки и прочее.

          На мой взгляд, в данный момент бэк уходит больше в оптимизацию работы с данными (процессинг, хранение, выборка, анализ), оставляя на фронт построение GUI приложения.

          И да, разумеется мы всегда будем не разлей вода, работы и правда всем хватит.
            +3
            оставляя на фронт построение GUI приложения

            Удивительно!
              +1
              >бизнес логика будет дублироваться только для валидации данных

              В сложных UI приложениях уже давно повсюду optimistic updates.
                0
                Что такое optimistic updates?
            +7
            Большинство макетов программисты могли сверстать самостоятельно, ну что там сложного: table, table и table


            Это так и надо было оставить. Ибо сейчас настолько жирной стала клиентская часть, что ради одного JS метода фронтендеры берут по 25 фреймворков без малейшего представление как оно работает и для чего. В итоге сайты грузятся так же долго, как 20 лет назад. Чего стоит сайт твиттера с его JS кодом в более, чем 25 тыс строк. Уверен, что если 80% кода сломать — на работоспособности сайта это никак не скажется.
              –2
              Жаль, что вас тогда не послушали. Немедленно звоните Тиму Бернерсу-Ли.
                +3
                Юмор это хорошо, но я на полном серьезе. Мы на работу долго ищем фронтендера, который в JS шарит. Вроде как все кандидаты нормальные.

                Но стоит на шаг в бок отойти от общеизвестных фреймворков и попросить написать что-то свое — все чешут затылок со словами «а зачем? Можно же 15 фреймворков подключить». А потом мы слушаем от наших клиентов, что у них сайты невероятно долго загружаются на мобиле. В итоге получаем использование фреймворка Г по той причине, что в нем есть методы из фреймворка А. Но Г без Б не работает, как и Б без В.
                  +3
                  Под все задачи свои инструменты. Ведь чтобы развести костёр вы используете зажигалку, а не камни, верно? Но не поймите меня неправильно: подключать весь underscore ради _.debounce или jQuery из-за селекторов, разумеется глупо. Радует, что авторы библиотек, выходящих в наше время, думаю о гранулярности своих решений и не создают огромных монолитных монстров.
                    +1
                    Это битва брони и снаряда. В начале ты подключаешь либу для скорости, потом рефакторишь для производительности. Надо только правильно управлять зависимостями.
                    +3
                    Заложите в бюджет зп адекватную рынку и ищите человека с хорошим знанием js. Где-то такие водятся, я точно знаю.
                    Нынешнее состояние js таково, что для современных браузеров можно писать любую крутоту на ванильном языке.
                      0
                      Пишите в скайп, если интересно, расскажу о современном состоянии html/css/js стека для разработки.
                        0
                        Вы о каких фреймворках говорите сейчас?
                        • НЛО прилетело и опубликовало эту надпись здесь
                            0
                            Наконец-то адекватный человек на Хабре. А то смотришь вакансии, а там требуется человек со знанием нескольких фреймворков. Приходишь на собеседование — тебе в запой рассказывают о своих костылях: эта часть у нас на Angular, тут перешли на React и используем еще 100500 мелких библиотек. Да что там другие компании, от своих не могу добиться, чтобы выпилили lodash с фронтенда. Тащят 50 КБ ради трех методов. Ну хоть jQuery выпилили, уже прогресс.
                        +3
                        То что здесь нет RSS, тоже своего рода оптимизация?
                          –3
                          А зачем RSS?
                            +1
                            «Шоп был», судя по оценке комментария.

                        Только полноправные пользователи могут оставлять комментарии. Войдите, пожалуйста.

                        Самое читаемое