Обновить
2
Ислам@IslamX

Фронтенд инженер

2
Подписчики
Отправить сообщение

Самое время антикризисным менеджерам показывать себя :)

Я немного скомкал этот момент, context приводит к неоптимизированным и бойлерплейтным многословным конструкциям а те другие к prop drilling

Ого, редактор кода с нуля - это путь самурая в прямом смысле даже если примитивный))
Нужно предусмотреть огромное количество кейсов учитывая разное поведение contenteditable в разных браузерах и знать достаточно хорошо теорию компиляторов либо же для более простых редакторов я думаю можно обойтись регулярками. Именно поэтому я у себя там специально для вставки блока с кодом подключил внешнюю либу который тоже по сути работает так как вы говорите (невидимый textarea) - uiw

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

Между UI State и Application State в некоторых более-менее сложных приложениях есть еще один уровень стейт менеджемента - это локализованные состояния для группы компонентов связанных между собой горизонтально и/или вертикально. Назвать ее можно как угодно: Widget State, Feature State. Это в основном композиции из нескольких компонентов которые все вместе образуют какой то цельный виджет или логику. Выносить состояния на уровень Application State размазывает локальную логику на глобал, а опустить на уровень UI State (useState, useReducer, Context) приводит к запутанным и не оптимизированным конструкциям типа prop drilling

Будет интересно посмотреть на результат, хороший способ для проверки чистоты архитектуры, если ИИ-шка сможет в 100-строчный промпт уместить это все и с первой итерации выдать подобный или лучше по качеству сервис то с одной стороны это значит что в целом все достаточно хорошо спроектировано, с другой - программисты не нужны, ИИ-шка заменит всех, роботы захватят мир и что то еще в таком духе))

Спасибо за фидбэк) По пунктам:
- Картинки - мой косяк, не успел потестить полноценно (
- Таблицы - к сожалению не уложился в срок, поэтому специально для таких конструкций создал по сути блок для сырой вставки уже готовых html/markdown структур - RawNode (в левой панельке в самом низу с иконкой фигурных скобок) там можно что угодно вставить и там же превьюить
- У меня там два кейса для тултипа подсказок, для эмоджи - двоеточие, для списка блоков - слэш, причем первый кейс проверяет key, а второй по code, поэтому возможно какой то граничный случай с раскладкой который я не учел - посмотрю

Тоже что то подобное делаю (в плане флоу), довольно так и интересно, но я бы сделал user-select:none основному контейнеру с поиском города в начальной странице, а то не удобно, хочется покрутить, полюбоваться - а тут текст выделяется) а так круто

Тут важен культурный контекст, как вы сами отметили то что работает для русскоязычной среды (можно разделять даже по виду деятельности) не даст того же эффекта в других культурных кругах с другим менталитетом, взглядом на жизнь и приоритетами. Очень важна среда где вы пытаетесь себя продать, общих правил мне кажется нет.

Мне кажется мы этим сайтом каждый день пользуемся, очень важный инструмент мирового масштаба

Экономия клиентов, а то их слишком много стало)

Во первых зачем обновлять стейт 60 раз (или какой там у вас ФПС) в секунду когда есть прекрасный useRef. Можно спроектировать этот микромомент так чтобы изменение таймера вызывал изменение стиля DOM напрямую через реф (если там у вас не супер хитрая система). Во вторых ощущение как будто вы специально тут переусложнили чтобы наконец глянуть под капот реакт а то все руки не доходили😊. Но в любом случае заслуживает уважения то что разобрались в механизме приоретизации)

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

Монорепозиторий — это не про скорость. И не про хайп. Это инструмент управления сложностью. И если вы готовы зафиксировать границы, описать зависимости и инвестировать в CI - он станет точкой роста. Если нет, то он просто сделает хаос очевидным.

Именно, но опять так и границы нужно зафиксировать в самом начале

Я так понял это пет проект начинающего фронтенд разработчика, если так то у меня вопросы по технической части, думаю тебе самому будет интересно разобрать каждый вопрос:
- Как решаешь вопрос с ограниченностью localStorage (разные браузеры по разному могут поступать с переполненным localStorage и самое интересное у каждого свое представление переполненности)?
- От фреймворков отказался осознанно и если да то почему?
- Почему скрипт прописал внутри тега script а не в отдельном файле .js например?

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

Информация

В рейтинге
Не участвует
Откуда
Ашхабад, Ашхабадская обл., Туркменистан
Зарегистрирован
Активность