Pull to refresh
12
0
Герман Панов @mdlufy

JavaScript/TypeScript разработчик

Send message

Спасибо за статью!

Вы путаете архитектуру со структурой папок в проекте. В общем случае, способ организации кода в проекте !== архитектура. Архитектура определяет зависимости между элементами системы, способ же представления элементов системы не так важен и может не отражать архитектуры

С фронтом всё не так. Шаблонов и стандартов из коробки, которые пропагандировали бы крупные акулы вроде Laravel, нет

Как нет? Был AngularJs, который реализовал дизайн-паттерн MVVM. Angular 2 с MVC

Опять таки, не стоит путать архитектуру, которую предоставляет фреймворк из коробки со способом организации кода в проекте на этом фреймворке, который действительно никто не навязывает. FSD, FBT, FBF - всего лишь паттерны организации кода

это нужно для создания групп компонентов в пределах одной директории, а очевидная идея про «положить инпуты в /inputs, страницы в /pages...» не имеет практического смысла, так как это — не архитектурный подход, как многие думают, а просто дополнительная вложенность.

 Все компоненты в одной папке, максимально плоская структура, никакой вложенности.

Это просто способ организации кода в проекте - folder by type. Такой подход неплохо работает на небольших проектах. При росте проекта уже тяжело становиться следить за кучей компонентов и лучше присмотреться к folder by feature, который позволяет выделить верхнеуровневые абстракции и разбить код на вертикальные слои

Откладывать же принятие решения о выделении дополнительного уровне вложенности, как вы предлагаете, на самом деле только ухудшит читаемость даже на начальном этапе разработки, а тем более, когда уже есть 15-20 сущностей

Добрый вечер, планируется ли вторая часть?

руки никак не доходили)
нужно сбилдить либу в watch режим в другой репозиторий, пока что не придумал как это можно сделать, как что-то узнаю - расскажу)

Спросить не пробовал, но коллеги посоветовали попробовать проставить у библиотеки publish directory репы, куда я хочу билдить

Еще не проверял, не уверен что автоматически будет работать ребилд

Подскажи, пожалуйста, может есть способ запускать приложение (микрофронт) вне nx workspace, которое использует библиотеку из nx workspace с build библиотеки в watch режиме?

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

В текущем варианте приходитсч ребилдить библиотеку руками, а потом копировать ее в node_modules другого репозитория, чтобы использовать там

Этот js-скрипт можно было бы запускать в pre-push

Инкремент версии в pre-push? Кажется это нужно делать после всех джоб, чтобы лишний раз не занимать время при разработке. К тому же билд упасть же может

Собственно на новичков и рассчитана статья) попробовать создать что-то интересное с нуля. Плюсы и минусы подхода освещать особо нет смысла, так как весь проект "образовательный". Какие проблемы в действительности встречаются на практике - вот эта была бы интересная тема для статьи, согласен.

Честно говоря, не в курсе какие используются коробочные имплементации CRDT, у меня в этой области экспертиза небольшая

Посмотрю что за зверь такой sharedb, спасибо)

Хорошее замечание. Вопрос консистентности данных это отдельная тема и не для такой статьи. (как заметил @QtRoS можно посмотреть в сторону Operational transformation)

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

Из простых решений в голову приходит "блокировка" ячейки для остальных пользователей, пока у текущего она в фокусе. Интересно посмотреть, как это реализовано в оригинальном Google Sheets

@Suvitruf

Не обижаюсь, у всех свое мнение. Как раз и хотел услышать, что считают другие люди.

Программированием микроконтроллеров не занимался, не могу что-то внятное ответить.

По поводу CSS, HTML могу сказать только то, что в "списке базы" я их не упоминал. Все приведенное должно помочь при желании покопаться в какой-то смежной сфере, если захочется ее поменять. Для вас это может быть не актуально.

JS уже универсальный язык и подходит для работы вне браузера, забыл упомянуть его в таком контексте.

Сейчас тенденция, что вся нагрузка переходит в браузеры, и лагерь делится на два типа: тех, кто разрабатывает движки и тех, кто на их основе что-то создают.

Information

Rating
Does not participate
Location
Москва, Москва и Московская обл., Россия
Registered
Activity

Specialization

Frontend Developer