Обновить
3
0

Пользователь

Отправить сообщение

Хорошее замечание! В данном примере отписку (removeeventlistener) делать не нужно тк Garbage Collection сделает свое дело. При удалении элемента из DOM дерева все слушатели автоматически удаляются. Но! есть нюанс: если бы я делал подписку скажем на document или любой внешний элемент. То да отписка в данном случае была бы обязательна.

Еще ксати заметил данный компонент который создан с использрованием declarative shadow dom нет возможности создать динамически или склонировать тк shadow dom в данном случае привязывается при загрузке страницы. И тут возможно стоит рассмотреть вариант с attachShadow в дополнении к declarative (на случай клонирования или если браузер не поддерживает)

Вообще говоря у меня не было изначально цели сравнивать библиотеки, я считаю веб компоненты могут служить неплохим дополнением для библиотек. Например можно сделать какие-то базовые компоненты а потом использовать их в связке с React, Vue на разных проектах.

Веб компоненты не так удобны в разработке, тут согласен. Но тем не менее ряд преимуществ все таки имеются:
1. не нужно устанавливать доп пакеты/модули (можно даже обойтись без сборки);
2. нет проблем с версионированием;
3. на веб компонентах вы пишите сразу агностик, а значит компонент который вы реализуете один раз могут использоваться и с тем же React, Svelte, Vue и тд.
4. дебажить существенно проще: благодаря небольшому стэк трейсу (в отличии от vue например) и отсутствие computed свойств. Когда в коде появлюятся длинные цепочки computed свойств - это настоящая проблема тк в какой-то момент ты перестаешь понимать что происходит (лично мое мнение, я с этим сталкивался достаточно часто:) )

Я наверное немного отстал от жизни) Просто во фронтенде такое многообразие библиотек и фреймворков что все изучить просто нереально (Я до этого писал на React и Vue). Сейчас решил посмотреть на то что есть из коробки и мне это очень понравилось, вот и решил поделится)

learn.javascript отличный сайт, там много хорошего материала.
Я бы хотел написать еще пару статей на эту тему, подскажите что можно было бы улучшить? и что вы имеете ввиду под более детальнее? Больше примеров?

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

Отличная статья! Также интересовался платформой в качестве альтернативы Play Market и App Store. Но как там сейчас обстоят дела с продвижением? В тг насколько знаю есть местный Store и вот чтобы туда разместиться нужно ждать месяца 3 модерации, а это уже круто (Но не знаю как с этим обстоят дела сейчас, пробовал месяца 3 назад)

Информация

В рейтинге
Не участвует
Зарегистрирован
Активность

Специализация

Фулстек разработчик
Ведущий
От 5 000 $
JavaScript
React
HTML
CSS
Веб-разработка
Node.js