суббота, октября 21, 2017

Дилетантский взгляд на серьёзную разработку на JavaScript или моё первое знакомтсво с React.js

На работе в круг моих обязанностей входит в том числе написание кода для фронтенда внутренней системы управления контентом. Естественно, это javascript. Но код по большей части пишется в стиле ES5 т.к. делалось изначально это всё очень давно, другими разработчиками и задолго до появления всяческих новомодных фреймворков.
В принципе, нет никакой проблемы продолжать писать в старом стиле и, как правило, я и продолжаю так делать иногда лишь добавляя незначительные куски кода с использованием ES6.
Но тут отдали нам на поддержку проект, написанный на react, нужно осваивать его значит. Давно уже хотел поближе познакомиться с js-фреймворками, и тут как раз появилась такая возможность.
Начал изучать матчасть, нарыл в интернете мануалов по реакту, начал пробовать написать свой первый "Hello, World".
Во многих руководствах в качестве одного из функциональных примеров приводят использование компонента React.createClass.
«Хорошо» подумал я, попробую его использовать. «Отсоси» сказал мне React версии 16.0, этот компонент был выпилен из этой версии и вынесен в отдельную библиотеку.
Хм, это странно. Как выяснилось, это хлопцы в версии 15.5 пометили метод createClass как deprecated. Потом выпустили ещё одну минорную версию 15.6, а после этого, менее чем через полгода выпустили мажорную версию 16, в которой функционал был удалён.
Вот эта лажа в духе Sebastian Riedel, создателя и основного разработчика перлового веб-фреймворка Mojolicious. Этот товарищ довольно часто выпиливает deprecated функции даже в минорных релизах, из-за чего я собственно и поставил для себя крест на perl как языке для серьёзной веб-разработки.
Как-то не вяжется с серьёзным проектом от facebook. Большее похоже на поделку какого-то васи, который по прихоти пятки левой ноги вносит несовместимые изменения.
В общем, с изучением React я пока решил повременить. Решил попрактиковаться в других сферах веб-разработки, подтянуть css и jquery.
Рано или поздно всё-равно придётся к нему вернуться, рабочие задачи никто не отменял, но первое знакомство у меня лично не задалось.
Ей-богу, vue.js выглядит гораздно серьёзнее и более зрелым на этом фоне, жаль, что мы его не используем.

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