LINUX.ORG.RU

JS фреймворк для фронтэнда с минимальным погружением

 , ,


3

5

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

Из поверхностного обзора веяний моды в этой области я узнал, что то, что я ищу, описывается термином single page application. В идеале, фреймворк должен взять на себя и визуальную составляющую, но если что, CSS я напишу сам.

Хочется сказать фреймворку: «Положи на DOM 4 кнопки, 2 списка, затем еще 3 кнопки. И пусть оно выглядит не совсем отвратительно.» Для каждого из элементов DOM прописать простенькую логику и повесить на события: сходи на сервер с таким запросом, из ответа возьми данные и замени контент там-то. Часть данных о состоянии для каждого элемента желательно хранить за пределами DOM, они нужны не пользователю, а чтобы составить правильное обращение к бэкэнду. Желательно иметь заготовки для чисто клиентских операций: сортировать список, фильтровать список и т.п.

На моем уровне знаний я бы сгенерировал DOM на стороне сервера, обмазал бы элементы коллбэками и для красоты взял бы CSS от Bootstrap. Но (а) это долго и скучно, (б) в результате получится хрупко и плохо читаемо, (в) я никуда не спешу и поэтому хочу сделать хорошо.

Обзор хелловорлдов для фреймворков из списка «Топ 10 баззвордов чтобы зашибать деньги на фрилансе» показал, что кашу они там заварили знатную, и вот это коричневое в ней - вряд ли шоколад. Поэтому прошу совета, с каким из фреймворков приятнее иметь дело для краткого и довольно дилетантского знакомства?

★★★

Ответ на: комментарий от Stack77

Да, как-то грубо написал. Прости

Прощаю, я не очень злопамятный. Не могу долго злиться на тебя.

Владимир

anonymous
()
Ответ на: комментарий от ddidwyll

Какие?

нужно попробовать, чтобы понять.

Достаточно выйти за пределы «hello world». Если коротко, то к «кровавому энтерпрайзу» он совершенно не готов.

Stack77
()

Сделай по старинке. Рендер на бекенде. Никаких СПА.

deep-purple ★★★★★
()
Ответ на: комментарий от Stack77

Достаточно выйти за пределы «hello world». Если коротко, то к «кровавому энтерпрайзу» он совершенно не готов

Очень убедительно :) А ты пробовал?

ddidwyll ★★★★
()
Ответ на: комментарий от Stack77

к «кровавому энтерпрайзу» он совершенно не готов

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

Владимир

anonymous
()
Ответ на: комментарий от byko3y

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

А какие там слои? Все еще IE8 поддерживаете? Браузер у нас давно один словно фюрер. Чего реально не хватает вебне, так это банального тулкита с виджетами. Причем неясно, что мешает это встраивать прямо в браузер. Зачатки там есть сто лет в обед — формы. Почему дальше не пошли мне не понять. Вместо этого вебельщики переизобретают гуи каждый раз заново с помощью стремных низкоуровневых средств как тот же реакт. И то потому что трясти DOM вручную каждый раз это уже совсем дно и долго. Но многие призывают таки трясти. Все это выглядит как намеренная диверсия ради удорожания разработки.

bread
()

Разбор, откуда пошли «одностраничные приложения» и куда им предлагается пойти

  1. Когда веб-странички стали интерактивными, они рендерились на сервере. Браузер получает уже готовый HTML, всё быстро грузится и не тормозит. Общение с сервером происходит через гиперссылки и HTML-формы, страничка каждый раз перерендеряется заново.

  2. Потом людям захотелось ещё больше интерактивности. Так появился т. н. AJAX — яваскрипт научился в фоне посылать HTTP-запросы на сервер и обновлять части странички прямо на лету. Придумали jQuery, все были счастливы.

  3. Потом людям захотелось ЕЩЁ БОЛЬШЕ ИНТЕРАКТИВНОСТИ. Стали писать на HTML не только простые гостевухи и форумы, но и вообще аналоги полноценных десктопных приложений. Почтовые клиенты, электронные таблицы и на что извращённой фантазии хватит.

  4. Оказалось, что для сложных веб-приложений концепция «рендеринг на сервере + частичное обновление на клиенте» не годится. Когда графический интерфейс де-факто один, но почему-то отрисовывается ДВУМЯ разными программами на двух разных языках, работающими на разных машинах, общающимися друг с другом через HTTP и пытающихся договориться, кто какую часть интерфейся должен отрисовыать — это шизофрения реально. Должен остаться кто-то один. Рендеринг на сервере уже был, т. е. остаётся рендеринг на клиенте.

  5. Вместо готового HTML браузер теперь получает пустую страничку, которая грузит килотонну яваскрипта, который долго грузится, долго парсится, затем начинает неспешно тянуть данные через HTTP-запросы и неспешно их рендерить. Сранички грузятся по полчаса. Вебари приходят к решению: загрузить страничку только один раз и больше её не выгружать. А давайте вместо «килотонна говнокода» будем говорить SPA! Круто!

  6. SPA — это не от хорошей жизни и не круто, это решение проблемы, которую вебари сами себе и создали, пытаясь тянуть приложения в веб. Если тебе хватает рендеринга на сервере — юзай его, и всё будет летать. А лучше вообще юзать статический HTML, потому что в 50% случаев его достаточно.

  7. Если же ОЧЕНЬ нужна интерактивность, то возвращаться в эпоху jQuery не надо, лучше делать т. н. изоморфные приложения. Это такой костыль для костыля. Один и тот же код рендеринга странички работает и на сервере, и на клиенте. На сервере он генерит HTML и посылает его клиенту, как в старые добрые времена. На клиенте он обновляет куски страницы на лету, как jQuery, но без присущей jQuery лапши и шизофрении. Потому что код рендеринга странички де-факто один, только он работает и на сервере, и на клие… ну ты понял. Для реакта это Next.js, для Vue это Nuxt.js, для Svelte это Sapper и в будущем SvelteKit. Sapper норм¹.


¹ Если вебдев вообще можеть быть норм. Вебарь — вообще не человек, это униженное в душе существо. Подумай, прежде чем становиться им. А ставши — не жалуйся, что тебя отовсюду гонят, насмехаются, по-всякому показывают, что ты — изгой.

anonymous
()

ЧТО БЫЛО ПРИ СТАЛИНЕ. ЧТО МЫ ПОТЕРЯЛИ.

  1. ПЕНОПЛАСТ ДЕЛАЛИ ИЗ МОЛОЧНОЙ ПЕНЫ. МОЖНО БЫЛО ДЕТЕЙ КОРМИТЬ.

  2. СИЛА ГРАВИТАЦИИ БЫЛА СЛАБЕЕ ПРОЦЕНТОВ НА 80. ЛЮДИ НА ДОМ ЗАПРЫГИВАЛИ С РАЗБЕГУ.

  3. ЧЕЛОВЕК ЖИЛ В СРЕДНЕМ 150-190 ЛЕТ. БОЛЕЗНЕЙ НЕ СУЩЕСТВОВАЛО КРОМЕ ТРУДОВЫХ МОЗОЛЕЙ.

  4. ЕСЛИ НА УЛИЦЕ СПОТКНЕШЬСЯ И УПАДЕШЬ - ЛЮДИ ПОДБЕГАЛИ, ДЕНЬГИ В КАРМАН ЗАСОВЫВАЛИ, В ГУБЫ ЦЕЛОВАЛИ, ПРЕДЛАГАЛИ ВЫПИТЬ, ПОРОДНИТЬСЯ.

  5. ЗАЙЦЫ И КУРОПАТКИ СРАЗУ НА СКОВОРОДУ ЗАЛЕТАЛИ. ХЛЕБ ПОКУПАЕШЬ - ТЕБЕ ЕЩЕ ДОПЛАЧИВАЮТ. К РЕКЕ СТРАШНО ПОДОЙТИ БЫЛО: НАЛИМЫ В КОТЕЛОК ПРЫГАЛИ.

  6. ДЕД РАССКАЗЫВАЛ: ЛЮДИ НОЧЬЮ ПРОСЫПАЛИСЬ ОТ СЧАСТЛИВОГО ДОБРОГО СМЕХА. УТРОМ ВСЕ ОБЛИВАЛИСЬ ЛЕДЯНОЙ ВОДОЙ ИЗ ВЕДРА.

  7. СРОК БЕРЕМЕННОСТИ СОСТАВЛЯЛ 4.5 МЕСЯЦА. ДЕТИ РОЖДАЛИСЬ ПО 12-15 КИЛОГРАММ С БЕЛОКУРЫМИ ВОЛОСАМИ И ЯСНЫМИ ГОЛУБЫМИ ГЛАЗАМИ И ВОЛЕВЫМИ УМНЫМИ ЛИЦАМИ - СРАЗУ НА ПРОИЗВОДСТВО ПРОСИЛИСЬ.

  8. ВОДА В ВОЛГЕ БЫЛА СЛАДКАЯ КАК ПАТОКА. А ЕНИСЕЙ СОСТОЯЛ ИЗ ТЁМНОГО ПИВА.

  9. ЗИМОЮ БЫЛО МИНУС ТРИСТА, ВСЕ РУМЯНЫЕ ХОДИЛИ.

  10. ЯГОДЫ РОСЛИ НА ОПУШКЕ С КОТА РАЗМЕРОМ. КОТЫ БЫЛИ С СОБАКУ, СОБАКА С КОРОВУ, А КОРОВА КАК ЦЕХ, А В ЦЕХУ МУЖИКИ В ШАХМАТЫ ИГРАЛИ ПО МЕТОДИКЕ БОТВИННИКА - КОНЁМ МАТ СТАВИЛИ С ПЕРВОГО ХОДА!

anonymous
()
Ответ на: комментарий от ddidwyll

А ты пробовал?

Да. Отказались в итоге. Вводить нового разработчика в разрастающейся проект - сплошная боль. Отсутствие готовых решений усложняют разработку в разы, нет поддержки TS, нет нормального UIKit’a и т.д. и т.п. Или тебе нужен полный детальный отчёт, почему его рано использовать в проде? Завтра с ребятами посидим, а то ночь уже. Ок? Нотариально документ нужно для господина заверять? В каком часе курьера лицезреть изволите?

Stack77
()
Последнее исправление: Stack77 (всего исправлений: 1)

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

И еще долго и дорого пишется. Легким движением руки формошлепы превращаются в высокооплачиваемых инженеров. Профит!

bread
()
Ответ на: комментарий от anonymous

Разве это судаки? - говорили рыбаки
Раньше вытащишь бывало - хвост буквально с полруки!
Разве это червяки? - говорили судаки
Червяком одним бывало наедалось полреки!
Разве это рыбаки? - говорили червяки
Их наслушавшись, бывало, сами лезли на крючки!

------------

https://knockoutjs.com/ - почему-то тут его никто не вспоминает, а мне понравилось 5 лет назад с ним всякое пыш-пыш на страничке делать )

Toxo2 ★★★
()
Ответ на: комментарий от Stack77

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

Так вы ничего не разрабатываете там, а тупо из кирпичиков сайт собираете 😀

Нет бы с нуля Бутстрап прикрутить на Svelte - вот тебе и UI, а TS это далеко не каждой конторе нужен

menangen ★★★★★
()

Долго грузится и парсится то, что написано монстрами индустрии на всяких Ангулярах с абстракциями на абстракция реактивности. Во всяких Vue/Svelte сайт мгновенно работает - глянь сайт тинькова к примеру

menangen ★★★★★
()
Ответ на: комментарий от menangen

Так вы ничего не разрабатываете там, а тупо из кирпичиков сайт собираете

Так и деньги ведь не за «изобретения велосипедов превозмогая трудности» платят, а за готовое решение по согласованному ТЗ.

Какой смысл тратить на разработку в 2-3 раза больше времени, получая в итоге тот же результат?

Stack77
()
Ответ на: комментарий от Stack77

Не заводись, просто интересно, пока аргументы, на мой вкус, уровня «не хватает is-odd с is-even».

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

ddidwyll ★★★★
()
Ответ на: комментарий от menangen

Так вы ничего не разрабатываете там, а тупо из кирпичиков сайт собираете

CopyPastDrivenDevelopment :)

ddidwyll ★★★★
()

Никого не слушай: тебе нужен Vaadin, там никакого жабаскрипта ваще.

anonymous
()
Ответ на: комментарий от Stack77

Если нужен SSR - Next.js. Redux для простых задач не нужен

Тут ты прав.

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

А вот тут — не прав. Потому что создает избыточный оверхед из-за Virtual DOM, а расширяемость его ничем не выделяется. Зато фактическое построение SPA, именно динамической его составляющей, то есть, изменений DOM в ответ на движение и изменение данных, оказывается неожиданно сложным из-за плохой проработанности этой составляющей в реакте. Простота и бесхитростность тебе кажется плюсом, как раньше людям казалась плюсом простота ассемблера — но писать на нем программы даже среднего размера при этом сложно. На самом деле это не «легкость», не «простота», а «сырость» и «примитивность». Потому столько людей пишут на C++, а не на простом Си, и еще более простом ассемблере.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

Прост жить в столице надо, а не где-то посреди леса.

deiru
()
Ответ на: комментарий от ddidwyll

сложных клиентов на свелте

хватает is-odd с is-even

Тоже bootstrap (с jQuery, наверное) прикручиваете и развитой инфраструктурой не пользуетесь? Зачем вам строгая типизация и т.п., которая «не каждой конторе нужна», спрашивать бессмысленно.

Такие «велосипеды» уж точно не несложными не назовешь. :D

Ну дерзайте, дерзайте! Ёжики кололись…

Stack77
()
Ответ на: комментарий от byko3y

Ты вроде как выводы правильные сделал, но к чему их привязал - непонятно. Да, виртуальный DOM не лучший выбор. Но, это же и есть «C++». Можно на ванильном JS писать или на Svelte (он хорош, только на него ничего нет), только это и есть Си или Асм в твоём сравнении.

Stack77
()
Ответ на: комментарий от bread

Браузер у нас давно один словно фюрер

Особенно на мобилках, ага.

Nervous ★★★★★
()
Ответ на: комментарий от Stack77

Выигрыш в десяток миллисекунд и меньший размер bundle (или как это правильно назвать в случае Svelte?) не покрывает все его минусы

Какие минусы? У реакта тоже есть Preact на 3 кб, так что размер рантайма можно не учитывать. «Все минусы» — это просто отсутствие готовых оберток над JS/jQuery компонентами под Svelte. Хотя пишутся онные весьма нехитро:

https://github.com/Budibase/svelte-ag-grid/blob/master/src/Component.svelte

Но да, готовых меньше. Правда, для простых задач этого «меньше» скорее всего хватит. Но это не точно.

лучшего, и с поддержкой от огромной транснациональной корпорации, с огромным комьюнити и массой готовых решений, просто нет

Вот, я тебя искал. Объясни мне свой взгляд: почему если большая корпорация запрыгивает ногами на стол, накладывает на этот стол кучу дерьма, а потом поддерживает это «решение», то все это решение хавают? Я прихожу и говорю «у вас на столе кучап дерьма!», а мне отвечают «ты ничего не понимаешь, это проверенное решение с большим сообществом». SPA — это не MySQL, не ядро Linux, его тяжело уронить, сегфолтов там нет, в нем тяжело сделать уязвимость удаленного выполнения кода.

byko3y ★★★★
()
Ответ на: комментарий от Igron

vue.js попроще, react по ощущениям в долгосрочной перспективе востребованнее

Да, здесь я не спорю не секунды, и я уже описал свою позицию выше:

JS фреймворк для фронтэнда с минимальным погружением (комментарий)

Особенно это касается React, который делает реализацию большинства задач СЛОЖНЕЕ. Помешательство на React родило абсолютно нездоровый спрос на кодеров на React, поскольку поддерживать и модифицировать проект на React сложнее, чем на ванильном JS.

По той же причине PHP будет жить, и Java, и .NET, и Python.

byko3y ★★★★
()
Ответ на: комментарий от anonymous

По мне так jquery лаконичнее и красивее чем чистый js

Большая часть jQuery уже находится в составе ES6, потому jQuery и отправлена на покой.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

Все минусы» — это просто

Ты попробуй сначала подключить нового разработчика к проекту на Svelte, когда в нем компонентов хотя бы за сотню. Потом будешь говорить о «сложности» React (на самом деле в нем никакой мифической сложности нет).

Ладно, встал, называется, водички попить :D Сами холиварте, надоело.

Stack77
()
Ответ на: комментарий от bread

А какие там слои? Все еще IE8 поддерживаете? Браузер у нас давно один словно фюрер

Читать от корки до корки:

https://www.w3.org/TR/html51/single-page.html

Тысяча страниц в виде PDF. И это только одно расширение HTML5, без предыдущих версий. Хуже я встречал только OOXML офиса от мелкомягких на 20 тыс страниц

Чего реально не хватает вебне, так это банального тулкита с виджетами. Причем неясно, что мешает это встраивать прямо в браузер. Зачатки там есть сто лет в обед — формы

Вот последние 25 лет именно это и происходит: давайте вот эти кнопки добавим, а вот еще этот тулкит, а тут еще блоки неплохо было бы встроить в браузер — и всё, уже ни один человек на планете не знает до конца, что же умеет делать браузер. В этом как раз и проблема.

byko3y ★★★★
()
Ответ на: комментарий от byko3y

Вот, я тебя искал. Объясни мне свой взгляд: почему если большая корпорация запрыгивает ногами на стол, накладывает на этот стол кучу дерьма, а потом поддерживает это «решение», то все это решение хавают?

Потому что фронт-энд - это очень быстро меняющиеся технологии, где каждый год появляется новая «модно и молодежно». И когда решение выпускает корпорация - есть надежда, что изучив технологию её хватит хотя бы на минимально необходимый период. А когда решение выпускает «Васян», такой уверенности нет.

Stack77
()
Ответ на: комментарий от Stack77

Отсутствие готовых решений усложняют разработку в разы, нет поддержки TS, нет нормального UIKit’a

Господа, между вам возникло недопонимание. У Svelte есть три версии, причем, третья сильно отличается от первых двух, написана на TypeScript изначально, и вышла в 2019 году. Это и есть то Svelte, про которое по крайней мере я веду разговор. Более раннее Svelte мало чем отличалось от Vue, поскольку разработчики обоих фреймворков тесно общаются друг с другом и перенимают разработки. Svelte v3 же отличается от Vue серьезно. UI компоненты для него есть, они в том же 2019 начали разрабатываться, нынче дойдя до более-менее юзабельного состояния:

https://github.com/ryanatkn/awesome-svelte-resources#ui-component-sets

byko3y ★★★★
()
Ответ на: комментарий от byko3y

Мы в 2019 как раз и пробовали. Могу ошибаться, но версия 3, кажется. И TypeScript в ней не было. UI Kit тоже самое (вернее был, но очень сырой). Даже с роутерами путаница (в смысле, решений было несколько, какое брать непонятно). Ну и по мере роста проекта поняли, что кто над ним не работал - разобраться без сторонней помощи не в состоянии.

Если сейчас там завезли TS, UI Kit… То, несомненно, я в части сказанного заблуждался (странно, что люди которые работают с ним сейчас ничего подобного не сказали). Будет время - посмотрю, самому интересно стало. Может я и погорячился, насчет его неготовности к проду.

Stack77
()
Последнее исправление: Stack77 (всего исправлений: 1)
Ответ на: комментарий от menangen

Во всяких Vue/Svelte сайт мгновенно работает - глянь сайт тинькова к примеру

В сайте тинькова реакт. По крайней мере это я обнаружил в самых больших файлах JS. Но у сайта есть fallback на чистом HTML, и есть обычный JS — это странно, поскольку тогда вообще не понятно, зачем там React, страница ведь статична. Либо тиньков подписал макак сайт дорабатывать после лебедева, либо макаки сидят в самой студии лебедева, что тоже не исключено.

byko3y ★★★★
()
Ответ на: комментарий от Nervous

поддерживать и модифицировать проект на React сложнее, чем на ванильном JS.

Свежо предание

Да, свежо, а что? ES6 и Shadow DOM не так давно вышли.

byko3y ★★★★
()
Ответ на: комментарий от Stack77

Ты попробуй сначала подключить нового разработчика к проекту на Svelte, когда в нем компонентов хотя бы за сотню. Потом будешь говорить о «сложности» React (на самом деле в нем никакой мифической сложности нет)

«Компонентов за сотню» — это очень размытое описание. У меня есть проект, где сотни «однострочных» компонентов, но это на самом деле переусложненная архитектура, где количество компонентов можно было урезать раз так в пять, получив лучше читаемость и поддерживаемость. Я бы все-таки старался ориентироваться на число строчек JS кода без учета вспомогательных объявлений.

byko3y ★★★★
()
Ответ на: комментарий от Stack77

Если сейчас там завезли TS, UI Kit…

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

Stack77
()
Ответ на: комментарий от Stack77

И когда решение выпускает корпорация - есть надежда, что изучив технологию её хватит хотя бы на минимально необходимый период. А когда решение выпускает «Васян», такой уверенности нет

«Васян» выпускает решения уровня прода последние 6 лет.

Так уж и быть, я отвечу за тебя, хотя мне и хотелось бы, чтобы ты сам это озвучил. Причина популярности React заключается в сетевом эффекте:

https://ru.wikipedia.org/wiki/Сетевой_эффект

Я знаю, что в индии знают, что React разработан большой корпорацией. Индус знает, что я знаю, что React разработан большой корпорацией. Откуда мы друг о друге это знаем? Да ниоткуда — мы просто знаем, что React разработан большой коропорацией, а дальше мы додумываем «про это говорят в телевизоре, значит об этом знает много и людей, и многие этим пользуются». То есть, алгоритм принятия решения больше похож на покупку айфона или CD ранеток, чем на разработку архитектуры софта.

И поскольку «все» знают, что «все остальные» принимают решения по тому же принципу, то в массовом IT формируется суммарная тенденция «искать самое распиаренное и вкладываться в него». Даже если в итоге это приведет к убыткам в виде растянутого времени разработки по сравнению с более удобным для данной задачи решением.

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

То есть, еще раз, речь вообще не про само решение — люди, использующие реакт, как правило, вообще не понимают его преимуществ и недостатков. Им нужен рынок раб силы, будь то со стороны предложения или спроса. Потому не «технологии хватит», а «рынок труда будет существовать хотя бы на минимально необходимый период». Я даже больше скажу: поскольку тренды в IT лагают примерно на 5 лет, то значимого рынка по Svelte можно ждать только к 2023 году, а сейчас его нет — тут и спорить не о чем.

byko3y ★★★★
()
Ответ на: комментарий от Stack77

Мы в 2019 как раз и пробовали. Могу ошибаться, но версия 3, кажется. И TypeScript в ней не было

Не ошибаешься. Svelte написана на TypeScript, компонент Svelte может импортировать TS и TS может импортировать компонент Svelte, но на TS нельзя было писать компонент в 2019. Только в 2020 эту фичу завезли:

https://github.com/sveltejs/svelte/issues/4518

UI Kit тоже самое (вернее был, но очень сырой)

Многие из них начинали разрабатываться в июле 2019.

byko3y ★★★★
()
Ответ на: комментарий от Stack77

фронт-энд - это очень быстро меняющиеся технологии, где каждый год появляется новая «модно и молодежно».

Что изменилось во фронтенде, скажем, за последнии пять лет? Что появилось нового модно-мододежного?

anonymous
()
Ответ на: комментарий от byko3y

Фреймворки упрощают.

Во первых придерживаешься какой-никакой архитектуры и паттернов.

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

Никто и ничего не заварил. Google и Facebook делают отличные инженерные решения, под современные задачи.

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

systemdwayland
()
Ответ на: комментарий от anonymous

А ты попробуй более или менее крупный проект так сделать…

И очень сомневаюсь, что многие кто кричит, что фреймворки не нужны, отлично знают паттерны и умеют их реализовывать на чистом JS.

Я бы посмотрел на полную реализацию паттерна Observer на ванильном JS =)

Ну и как бы один из плюсов фреймворков - компонентый подход.

А эти все простые html/css + jquery превращаются в лютое говнище и портянку не связанных логически блоков.

systemdwayland
()
Ответ на: комментарий от anonymous

Да, сфера по сути еще формируется и подходы могут со временем меняться.

Яркий пример - React.

Переход от классов к хукам.

И отлично, что все меняется, не соскучишься, не выгораешь.

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

Зато мозг не костенеет.

systemdwayland
()
Ответ на: комментарий от menangen

Удивляет как ругают вес страниц из-за фреймворка.

Сейчас вроде как ни Angular, ни React в сжатом виде не более 150kb весят.

2020 на дворе, много у кого уже интернет 100Mb/s, грядет 5G.

Я понимаю на DSL стремно было бы со скоростью 64Kb/s сидеть выкачивать эти 150Kb, так в современном мире картинка в начале статьи весит уже больше, чем весь фреймворк :)

P.S ага, не все знают/используют новые форматы для изображений, до сих пор устаревшие jpg зачастую

systemdwayland
()
Ответ на: комментарий от anonymous

Учить надо то, что:

  1. Требуется в современном мире
  2. Самому интересно
  3. Достаточное кол-во вакансий
  4. Готов этим заниматься долгое время, ибо жизнь это не спринт, а марафон
systemdwayland
()
Ответ на: комментарий от byko3y

Тысяча страниц в виде PDF.

Ну и что? Макаке это всё зачем? Формы шлепай, и всё тут. Как на культях шлепают не заучивая наизусть стандарт C++. Только нет для веба никакого стандартного тулкита. Только говно и палки в ассортименте. Даже стандартной фигни для компонентов и «реактивности» до сих пор нет. Вот вы тут копья ломаете: vue, svelte, huelte. А все потому что никто до сих пор не сделал ничего юзабельного, и не знает как делать. Потому что натурально школьники этим занимаются. Надо подождать еще лет 10 наверно пока хипстеры наконец сделают дельфи.

bread
()
Последнее исправление: bread (всего исправлений: 1)
Ответ на: комментарий от systemdwayland

Готов этим заниматься долгое время, ибо жизнь это не спринт, а марафон

Это только из-за парты так кажется.

bread
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.