То есть обращаться к богу после vue нормально?
Обращаться ненормально, а вот начать слышать голос бога у себя в голове вполне.
А после React.js ты становишься Джигурдой.
Разбежался, джигурда просто добавляется в коллекцию голосов.
Jгурдой
А говорят нам фреймворк если после бэкенда вкатываешься во фронтэнд.
Хрен его знает.
С бэкенда на дотнетике вкатился в angular года два назад.
Полет нормальный, все очень нравится.
Чо грустно - на vuejs и react после ангуляра смотреть больно. А хочется освоить второй какой-нибудь фрэймворк :(
С бэкенда на дотнетике вкатился в angular года два назад.
Полет нормальный, все очень нравится.
Чо грустно - на vuejs и react после ангуляра смотреть больно. А хочется освоить второй какой-нибудь фрэймворк :(
А чего больно? В чем основной вин ангуляра?
в роутинге и биндинге из коробки например.
Кровь из глаз у меня начинает течь, когда я вижу, как в одном файле пишут разметку и логику. Это ебаный пиздец.
Я не могу сравнить, скажем, react и angular. Хотя бы потому, что на первом из них я ничего сложнее хэллоу ворлда не писал.
Но я могу в целом рассказать, чем мне нравится angular.
Сейчас идет третий год, как я перешел с бэкенда на фронтенд. Все это время я, в составе команды разработчиков, работаю над одним приложением.
Морда на ангуларе, бэкенд - почти два десятка микросервисов.
В приложении куча модулей - какие-то обязательные, какие-то грузятся по требованию. Дохрена бизнес-логики и взаимодействия модулей и компонентов друг с другом.
0) Typescript. При переходе на с бэкенда облегчает боль. Типизация, классы, интерфейсы, дженерики, юнион тайпы... Складывается ощущение, что пишешь на почти полноценном языке, а не на жабаскрипте.
1) Rxjs. В случае ангулара это библиотека ngrx, которая уже чуть ли не проф. стандарт. Каждый модуль имеет свой feature store, часть store общие - обеспечивает синхронизацию данных между компонентами и модулями, инкапсулирует все обращение к api в эффектах. Позволяет держать компоненты чистенькими.
2) Dependency injection. Офигенно реализован. Используется из коробки, по необходимости легко настраиваются скоупы, фабрики для специфичного создания инстансов итд. Отдельно радует InjectionToken, облегчающий жизнь в тех случаях, когда нужно не просто заинжектить синглтон сервиса в эффект, а передать данные в динамически создаваемый компонент типа сайдвью или диалогового окна.
3) Template Driven Forms. Да, еще есть реактивные формы, но это все от лукавого. тдельно разметка, отдельно логика, двустороннее связывание. Ничего лишнего, код чистый и красивый.
4) Каждый компонент делится на файлы - отдельно верстка, отдельно логика, отдельно стили. Вот этот пункт прям камень в сторону реакта. Не понимаю, как можно писать по-другому.
5) Two/One-Way Data Binding. Тут даже комментарии не нужны. В совокупности с настраиваемыми стратегиями на Change Detection - просто песня.
6) View Encapsulation. Для каждого компонента выбирается, что использовать - dom, shadow dom, shadow dom emulation. Нужно редко, но штука крутая.
7) Directives. Кастомные директивы - это штука, которая в большом приложении позволяет очень упростить жизнь разработчику. Наваял директиву со сколь угодно простой или сложной логикой, положил в shared модуль (если нужно) - модифицируешь нужные компоненты просто цепляя на них директиву. Сюда же можно отнести custom pipes.
8) Router. Дочерние роуты, гварды, резолверы... Вместе с lazy loading для модулей позволяет выстраивать очень гибкую систему роутинга, обмазанную проверками прав, предварительной подгрузкой данных итд итп.
В принципе это то, что меня радует регулярно. Есть еще server side rendering, pwa итд итп. Да и из простого я наверное что-то забыл.
Но все эти пункты объединяет одно. Они позволяют нам, делая большое приложение, разделять состояние приложения, модели, вызови к апи, бизнес логику, верстку, логику компонентов итд итд на отдельные, скажем так, слои. И я не представляю, как без этого мы бы не закопались в своем приложении еще год-полтора назад.
Вообще говоря я уверен, что есть много людей, которые могу то же самое сказать о том фрэймворке или библиотеке, на которых пишут именно они. И они тоже будут правы.
Я же так не могу, пока не пну себя выучить что-то еще :)
Я не могу сравнить, скажем, react и angular. Хотя бы потому, что на первом из них я ничего сложнее хэллоу ворлда не писал.
Но я могу в целом рассказать, чем мне нравится angular.
Сейчас идет третий год, как я перешел с бэкенда на фронтенд. Все это время я, в составе команды разработчиков, работаю над одним приложением.
Морда на ангуларе, бэкенд - почти два десятка микросервисов.
В приложении куча модулей - какие-то обязательные, какие-то грузятся по требованию. Дохрена бизнес-логики и взаимодействия модулей и компонентов друг с другом.
0) Typescript. При переходе на с бэкенда облегчает боль. Типизация, классы, интерфейсы, дженерики, юнион тайпы... Складывается ощущение, что пишешь на почти полноценном языке, а не на жабаскрипте.
1) Rxjs. В случае ангулара это библиотека ngrx, которая уже чуть ли не проф. стандарт. Каждый модуль имеет свой feature store, часть store общие - обеспечивает синхронизацию данных между компонентами и модулями, инкапсулирует все обращение к api в эффектах. Позволяет держать компоненты чистенькими.
2) Dependency injection. Офигенно реализован. Используется из коробки, по необходимости легко настраиваются скоупы, фабрики для специфичного создания инстансов итд. Отдельно радует InjectionToken, облегчающий жизнь в тех случаях, когда нужно не просто заинжектить синглтон сервиса в эффект, а передать данные в динамически создаваемый компонент типа сайдвью или диалогового окна.
3) Template Driven Forms. Да, еще есть реактивные формы, но это все от лукавого. тдельно разметка, отдельно логика, двустороннее связывание. Ничего лишнего, код чистый и красивый.
4) Каждый компонент делится на файлы - отдельно верстка, отдельно логика, отдельно стили. Вот этот пункт прям камень в сторону реакта. Не понимаю, как можно писать по-другому.
5) Two/One-Way Data Binding. Тут даже комментарии не нужны. В совокупности с настраиваемыми стратегиями на Change Detection - просто песня.
6) View Encapsulation. Для каждого компонента выбирается, что использовать - dom, shadow dom, shadow dom emulation. Нужно редко, но штука крутая.
7) Directives. Кастомные директивы - это штука, которая в большом приложении позволяет очень упростить жизнь разработчику. Наваял директиву со сколь угодно простой или сложной логикой, положил в shared модуль (если нужно) - модифицируешь нужные компоненты просто цепляя на них директиву. Сюда же можно отнести custom pipes.
8) Router. Дочерние роуты, гварды, резолверы... Вместе с lazy loading для модулей позволяет выстраивать очень гибкую систему роутинга, обмазанную проверками прав, предварительной подгрузкой данных итд итп.
В принципе это то, что меня радует регулярно. Есть еще server side rendering, pwa итд итп. Да и из простого я наверное что-то забыл.
Но все эти пункты объединяет одно. Они позволяют нам, делая большое приложение, разделять состояние приложения, модели, вызови к апи, бизнес логику, верстку, логику компонентов итд итд на отдельные, скажем так, слои. И я не представляю, как без этого мы бы не закопались в своем приложении еще год-полтора назад.
Вообще говоря я уверен, что есть много людей, которые могу то же самое сказать о том фрэймворке или библиотеке, на которых пишут именно они. И они тоже будут правы.
Я же так не могу, пока не пну себя выучить что-то еще :)
"Кровь из глаз у меня начинает течь, когда я вижу, как в одном файле пишут разметку и логику. Это ебаный пиздец."
А в чем проблема? Если норм разделить, то большинство файлов будут либо почти полностью версточным, с парочкой реактивных пропертей(лэндинг какойнить например), либо маленький файлик отвечающий за отдельный компонент на 100-200 строк. Так по моему лучше видно границы того за что файл отвечает, да и поиск методов/пропертей будет быстрее. Если же нужна какая нить тяжелая залупа для вычислений/сортировок и т.д. то выносится в отдельный жсник рядом в папке. А вот scss выносить в отдельные файлы крута, для переиспользований и разгрузки. (Мимо Vuejsник).
А в чем проблема? Если норм разделить, то большинство файлов будут либо почти полностью версточным, с парочкой реактивных пропертей(лэндинг какойнить например), либо маленький файлик отвечающий за отдельный компонент на 100-200 строк. Так по моему лучше видно границы того за что файл отвечает, да и поиск методов/пропертей будет быстрее. Если же нужна какая нить тяжелая залупа для вычислений/сортировок и т.д. то выносится в отдельный жсник рядом в папке. А вот scss выносить в отдельные файлы крута, для переиспользований и разгрузки. (Мимо Vuejsник).
Jesus Script
ладно вместе с книками по Java amazon предлагает камасутру для геев
а чем Vue не угодил???
а чем Vue не угодил???
а ведь кто-то сначала читал те три книги и только потом приступил к js.
Чтобы написать коммент, необходимо залогиниться