5 дек. 2015 г.

Ractive JS

Развиваясь в бэкенде, я сильно запустил фронтенд, который тоже необходимо как-то знать, чтобы быть способным сделать более-менее завершенное приложение. Для этого я решил поиграться с Bootstrap и освоить современный js фреймворк. Сначала выбор пал на angular, как самый часто используемый на текущий момент инструмент. Однако, просмотрев пару видеоуроков, немного влившись в тему, я понял, что это уже не "тренд", фреймворк обладает значительным числом недостатков, практически все ругают его за производительность. (UPD: Потом, конечно, понял, что ractive не заменит и пятой части ангуляра, но как первый mvc js фреймворк сойдет) Одновременно с этим друг указал мне на другую, более простую и удобную технологию: Ractive JS. Возможно, для начала это будет лучше. Нескольких вечеров мне хватило, чтобы освоить этот фреймворк, впчеталения, конечно, положительные, хотя сравнить то и не с чем.

Если про angular есть много статей, роликов на ютубе, даже целые видео курсы на русском языке, то единственный источник информации про ractivejs - это документация и tutorial. Документация приятная, написана простым человеческим языком.

Практически весь ractiveJS находится в одном файле, который подключается к странице. Но если захочется использовать красивые переходы (вылет, появление и т.д.), то их нужно подключать отдельно.

Чтобы начать использовать фреймворк, можно не читая документацию, просто начать обучение тут. Шаг за шагом вам объяснят основные фичи технологии. Само обучение построено так: дан исходный код, ставится задача, рассказывается как ее решать. Вам остается лишь прямо в браузере в редакторе решить эту задачу. Там же можно запустить решение и убедиться, что все работает как надо. Решение никто не проверяет и оно не является необходимым условием для прохода на следующий уровень. Если лень решать, а хочется просто поиграться с готовым решением, то для этого есть специальная кнопка "Fix me". Все обучение реально пройти за 2 -3 часа. 

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

UPD: Не прошло много времени, конечно же нашел! И в принципе, это было очевидно. У Ractive JS особый способ рендеринга. Грубо говоря, сначала рендериться все приложение, а затем начинает работу ractive. По своим темплейтам он строит структуру, называемую как "параллельный DOM", а затем привязывает её к настоящему DOMу. Этот подход, который, конечно, имеет свои преимущества, создает сложности при интеграции фреймворка в существующее приложение: нельзя просто так взять и выкинуть часть DOMа. Angular, например, не обладает таким недостатком и легко интегрируем практически в любое приложение. 

Комментариев нет :

Отправить комментарий