Вы путаете. У rode два микрофона — один USB — Podcaster, а второй XLR — Procaster. Мне стало интересно почему посмотрев USB версию, вы не стали смотреть на XLR версию.
Да Вы правы, анимация будет не идеальна. Но у меня не стояло задачи сделать красивую анимашку, я старался в основном показать как работать с анимацией в ангуляре, максимально охватив ее возможности в одном примере. Статья и так получилась огромной.
Легко. Например у Вас есть enterprise приложение, которое расширяется плагинами. Пример такого — Jira от atlassian. У нас такая же ситуация — хочет клиент модуль отчетности — ставится сервис на бэк и плагин в GUI.
Статья построена по принципу «от простого к сложному» и если дочитать ее до конца, то можно увидеть пример где добавление компонента в DOM происходит из сервиса.
Насчет компонентов-контейнеров и прочего согласен. Понимается за час, а дальше главное соблюдать правила. Я и в ангуляре придерживаюсь похожей практики.
Насчет зоопарка, тут не соглашусь. Популярный стек React + Redux на моей практики загубил уже немало проектов, да и сам я попался на эту удочку. Люди берут из-за популярности, а потом выпиливают с матом из проекта. Почти все мои знакомые отказались, кто-то в слез на MobX, а кто-то написал свое.
Возвращаясь к зоопраку — мой проект на реакте содержит почти полторы страницы библиотек в package.json, которые мне пришлось притащить. И это настоящий ад, так как за всем этим хозяйством надо следить, да и к тому же частенько самому фиксить баги. Это какое-то вынужденное сотрудничество с комьюнити получается.
По поводу Saga и reselect — видел, да и сам много раз напарывался, что написать хорошие saga обработчики или селекторы не так то просто. Очень просто написать селектор, который будет работать хуже чем обычный код на lodash. А документации и best practice просто нет.
За все время что мы используем новый Angular я всего лишь раз столкнулся с проблемой от beraking changes и она решилась за час. Так что пока не пугают.
Это было экспериментально на момент написания статьи, сейчас это уже вполне нормальное решение. И это не единственное решение, просто лень искать более честные методы.
А как? Для нас это просто JS файл, в котором собрано все что надо плагину — модули, локализация, ресурсы и прочее. И собираем его в бандл не мы, а сторонняя компания. Если бы мы рендерили все на сервере, то тогда можно было бы не тащить компилятор.
SystemJS нам нужен так как WebPack статически анализирует код и не умеет грузить что-то, о чем он не знал на этапе компиляции. Мы же предполагаем, что наши партнеры могу написать свой плагин к нашей системе и зарегистрировать его у нас через UI. После этого мы на старте будем грузить его с бекэнда и вставлять компоненты из него в GUI.
У нас сложнее. Наш продукт использует плагинную систему. При старте продукта мы загружаем все известные нам плагины и кладем их в кеш SystemJS. Для показа какого-то компонента мы сначала компилируем модуль через compileModuleAndAllComponentsAsync, потом находим в нем нужную фабрику используя имя компонента, а потом уже создаем его и добавляем в DOM.
Возможно если будет время на праздниках напишу статью по всем возможным способам создания компонентов в angular и какие там есть проблемы.
Начну с минусов. Если сравнивать размер ангуляра на начало 2016 года и сейчас, то он довольно сильно похудел. И если раньше размер получаемого кода у меня вызывал панику, то сейчас уже я вижу, что у мня есть ряд возможностей для уменьшения размера (о них написано в статье). Да и команда гугла продолжает заниматься уменьшение размера получаемого бандла. Минус документации тоже устраняется потихоньку, так например текущий спринт команды гугла направлен как раз на улучшения сайта и документации. Но так как для нас это не критичные минусы, то я особо не слежу за этой темой. Возможно для кого-то это stop-проблема и им лучше выбрать Vue.
Теперь насчет актуальности статьи. Про cli React я писал что он есть, правда указал немного другой. Насчет 16 версии React — я такой в production не вижу, а значит для меня ее нет. Точнее я конечно же читал про нее, в особенности про их fiber-ы, но уж простите, политика Компании и клиенты обязывают не юзать то, что официально не вышло. Но как я писал это не поможет нам, так как верстальщик у нас не знает JS.
По поводу Redux — да я его не люблю, и не из-за многообразия Flux решений, отнюдь. А не люблю я его из-за огромного кол-ва шаблонного кода, нередко монструозных side effect обработчиков и тормозящих геттеров из стейта (через reselect). У меня до сих пор есть довольно крупный проект на Redux и я каждый раз с неохотой что-то вношу в него. Похожий подход на angular у меня получился в разы компактнее и понятнее. Но это моя субъективная оценка и мой опыт и если кому-то Redux позволяет сделать красивый, простой и поддерживаемый код, я с удовольствием почитаю об этом на Хабре :)
Мы уже ушли от cli ангуляра и переписали весь процесс сборки для поддержки плагинной системы. Холодный старт, при учете что vendor у нас вынесен в dll, у нас занимает около 30 секунд. При изменении пересборка по прежнему идет около 6-8 секунд. В целом для нас 8 секунд не критично и наверно поигравшись с Webpack можно ускорить процесс.
А где Kinesis https://kinesis-ergo.com?
Если кому интересно то год назад был отличный видос про микрофоны и не только — www.youtube.com/watch?v=eYUeDgFJUww&t=3291s
Насчет зоопарка, тут не соглашусь. Популярный стек React + Redux на моей практики загубил уже немало проектов, да и сам я попался на эту удочку. Люди берут из-за популярности, а потом выпиливают с матом из проекта. Почти все мои знакомые отказались, кто-то в слез на MobX, а кто-то написал свое.
Возвращаясь к зоопраку — мой проект на реакте содержит почти полторы страницы библиотек в package.json, которые мне пришлось притащить. И это настоящий ад, так как за всем этим хозяйством надо следить, да и к тому же частенько самому фиксить баги. Это какое-то вынужденное сотрудничество с комьюнити получается.
По поводу Saga и reselect — видел, да и сам много раз напарывался, что написать хорошие saga обработчики или селекторы не так то просто. Очень просто написать селектор, который будет работать хуже чем обычный код на lodash. А документации и best practice просто нет.
Возможно если будет время на праздниках напишу статью по всем возможным способам создания компонентов в angular и какие там есть проблемы.
Теперь насчет актуальности статьи. Про cli React я писал что он есть, правда указал немного другой. Насчет 16 версии React — я такой в production не вижу, а значит для меня ее нет. Точнее я конечно же читал про нее, в особенности про их fiber-ы, но уж простите, политика Компании и клиенты обязывают не юзать то, что официально не вышло. Но как я писал это не поможет нам, так как верстальщик у нас не знает JS.
По поводу Redux — да я его не люблю, и не из-за многообразия Flux решений, отнюдь. А не люблю я его из-за огромного кол-ва шаблонного кода, нередко монструозных side effect обработчиков и тормозящих геттеров из стейта (через reselect). У меня до сих пор есть довольно крупный проект на Redux и я каждый раз с неохотой что-то вношу в него. Похожий подход на angular у меня получился в разы компактнее и понятнее. Но это моя субъективная оценка и мой опыт и если кому-то Redux позволяет сделать красивый, простой и поддерживаемый код, я с удовольствием почитаю об этом на Хабре :)