Кэп?
Не изучаешь javascript фреймворки - экономишь пять лет?
Не изучаешь javascript фреймворки -не изучаешь javascript фреймворки
поэтому ты и хуев
зато Мастер, а ты негр
Зато длинный.
А если их скрестить, то может получиться Мастер негр и Длинный Хуев. Хотя, наверное, разницы особой и нет между этими никами, негры же.
Java=/=javascript.
на самом деле есть стабильная тройка пару последних лет - Angular, React, Vue
особенно реакт на слуху
Вроде Vue сейчас самый в тренде.
Наброшу. Я вообще ни в каком месте не фронтендер и этими вашими джаваскриптами не занимаюсь, но попалась маленькая годная шабашка на эту тему. Один раз - не смузихлеб, подумал я. И столкнулся с двумя стульями несколькими безальтернативными выборами:
1) Не берешь никаких JS UI-фреймворков, получаешь портянку на jQuery (или без, на вкус), где чтобы добавить элемент в список его HTML код надо записать в JS-коде строками, как-нибудь добавить нужные данные (хоть конкатенацией), и веселиться с innerHTML, appendChild и прочим.
2) Берешь UI-фреймворк и вроде все сразу проще и лучше, но они жирные (хрен бы с этим), требуют каких-никаких ресурсов, и самое главное, это дерьмо надо изучить и потом ты оказываешься зажатым в его рамках.
Я сел на второй стул и стал выбирать фреймворк. Проект слишком простой, чтобы упарываться по полной, но на всяких jQuery будет адская портянка.
Angular я не захотел, потому что как-то сталкивался и от его DSL с всякими ngIf, ngForOf и формами меня тошнит, а еще он излишне большой и сложный, модули, DI, нахер не упало.
React я как-то видел, прикольная херня, но ебота с неизменяемыми состояниями (которая типо плюс). Поменять значение элемента в списке как-то не доставляет.
Я остановил свой выбор на Riot.js. Эдакий React на минималках. Синтаксис между ангуляром и реактом, простой ненавязчивый шаблонизатор из всего DSL в нем только if={}, each={} и т.п. Никакой еботы, никаких неизменяемых состояний, просто берешь и делаешь. Ну заодно он самый легкий из них. Вин?
Авотхуй. В процессе выяснилось, что хоть этот кусок дерьма развивается уже давно по меркам жс-фреймворков, в нем нахуй не работают sourcemap'ы (ну или работают через их блядский компилятор. Но не вебпаком). И я так и не смог прикрутить TypeScript. А еще одно супер-неочевидное поведение убило у меня целый день. Если присвоить элементу какое-то значение два раза одно и то же он игнорирует это, оптимизатор хуев. В итоге сделать по кнопке стирание введенного пользователем текста путем присваивания "" (пустой строки) - хуй. Извращайтесь.
Резюмируя:
1) Не берешь никаких JS UI-фреймворков, получаешь портянку на jQuery (или без, на вкус), где чтобы добавить элемент в список его HTML код надо записать в JS-коде строками, как-нибудь добавить нужные данные (хоть конкатенацией), и веселиться с innerHTML, appendChild и прочим.
2) Берешь UI-фреймворк и вроде все сразу проще и лучше, но они жирные (хрен бы с этим), требуют каких-никаких ресурсов, и самое главное, это дерьмо надо изучить и потом ты оказываешься зажатым в его рамках.
Я сел на второй стул и стал выбирать фреймворк. Проект слишком простой, чтобы упарываться по полной, но на всяких jQuery будет адская портянка.
Angular я не захотел, потому что как-то сталкивался и от его DSL с всякими ngIf, ngForOf и формами меня тошнит, а еще он излишне большой и сложный, модули, DI, нахер не упало.
React я как-то видел, прикольная херня, но ебота с неизменяемыми состояниями (которая типо плюс). Поменять значение элемента в списке как-то не доставляет.
Я остановил свой выбор на Riot.js. Эдакий React на минималках. Синтаксис между ангуляром и реактом, простой ненавязчивый шаблонизатор из всего DSL в нем только if={}, each={} и т.п. Никакой еботы, никаких неизменяемых состояний, просто берешь и делаешь. Ну заодно он самый легкий из них. Вин?
Авотхуй. В процессе выяснилось, что хоть этот кусок дерьма развивается уже давно по меркам жс-фреймворков, в нем нахуй не работают sourcemap'ы (ну или работают через их блядский компилятор. Но не вебпаком). И я так и не смог прикрутить TypeScript. А еще одно супер-неочевидное поведение убило у меня целый день. Если присвоить элементу какое-то значение два раза одно и то же он игнорирует это, оптимизатор хуев. В итоге сделать по кнопке стирание введенного пользователем текста путем присваивания "" (пустой строки) - хуй. Извращайтесь.
Резюмируя:
Тоже ни разу не фронтендер, vue попробуй.
Спасибо за рекомендацию, но уже запилил почти и перепиливать нет желания. Как-нибудь дотерплю без сурсмапов, угадывая где крашится.
Следующий раз для маленького проекта можешь взять ангуляр 1.7. Вполне простая штука, без страшных компонентов(но если сильно нужны - они там есть), тайпскрипта, и с простыми шаблонами с кучей возможностей.
Доводилось мне как-то переводить пару проектов с Vue 1.x на 2.x - уж лучше портянку на jquery. Я с фронтом завязал, но слышал сейчас планируется обнова с Vue 2.x на 3.x, с нацеливанием "...на использование этих новых языковых функций, чтобы сделать ядро Vue меньше, быстрее и мощнее"(@habr) - имхо, конечно, но нахер такое счастье.
КЭП - можно offtopic вопрос
А нафига классы, если есть функции, нахера ООП.
А нафига классы, если есть функции, нахера ООП.
ну вот хочется пришельцам из других областей поиграться в ООП в вебе, даже в простых лендингах или магазинах.
извращенцы-с.
немножко оффтопа, на днях ко мне товарищ за консультацией обратился: сверстал он несколько лендингов, заказчик хочет ssl, и желательно бесплатно. Спрашиваю - зачем? у лендинга есть логинация? админка? нету, просто одностраничник. С формами из одного поля для телефона "мы вам перезвоним". Зачем ему шифрование??? Ну, чтобы "сайт защитить от хакеров" и красивенько, зелёненьким подсвечивает...
извращенцы-с.
немножко оффтопа, на днях ко мне товарищ за консультацией обратился: сверстал он несколько лендингов, заказчик хочет ssl, и желательно бесплатно. Спрашиваю - зачем? у лендинга есть логинация? админка? нету, просто одностраничник. С формами из одного поля для телефона "мы вам перезвоним". Зачем ему шифрование??? Ну, чтобы "сайт защитить от хакеров" и красивенько, зелёненьким подсвечивает...
ты не понимаешь.
заказчику нужно не шифрование, а название протокола https в строке адреса и, блять, "зелененький замочек".
потому что так все сейчас делают.
маркенинг-с
заказчику нужно не шифрование, а название протокола https в строке адреса и, блять, "зелененький замочек".
потому что так все сейчас делают.
маркенинг-с
И Гугл давно запугивает, что будет отдавать предпочтение https сайтам в выдаче.
Ибо гугл планомерно продвигает концепцию "нахуй http". Сейчас хрмо уже даже зеленый замочек не рисует, мол "HTTPS - это не более безопасно, это как раз норма, а вот HTTP - не безопасно". Вроде планируют дойти до того, что на страницах по HTTP показывать предупреждение (или на страницах с HTTP, где есть формы ввода).
Вообще в принципе сейчас уже можешь это увидеть просто в адресную строку посмотрев. Правда все ожидали красный замочек, что опасно.
На счёт ssl тут как бы понятно )
Если откинуть, типо доверие улучшается + поисковики лучше ранжируют на https, хотя LP не для поисковиков.
Но и реффереры/запорсы и тп передается с того же https://google.com и не передается с https -> http без спец meta в первом. А это уже на статистику влияет при покупке трафа с https сайтов хотя бы даже с поиска гугля Adword. Можно видеть по каким запросам результаты лучше ROI дают и тп.
Если откинуть, типо доверие улучшается + поисковики лучше ранжируют на https, хотя LP не для поисковиков.
Но и реффереры/запорсы и тп передается с того же https://google.com и не передается с https -> http без спец meta в первом. А это уже на статистику влияет при покупке трафа с https сайтов хотя бы даже с поиска гугля Adword. Можно видеть по каким запросам результаты лучше ROI дают и тп.
PS: Ещё забыл добавить из VK если на ssh покупать будет видно будет профили кто заходил ) а следовательно по ним можно потом пройтись рекламным профилем лайкая.
А нахера каждый раз передавать в функцию структуру данных, если можно в этой же структуре хранить связанные с ней функции? Потому что это проще и удобнее в большом ряду случаев.
Потому что ООП это чуть сложнее чем наследование-инкапсуляция-полиморфизм. И на UI он ложиться не так хорошо как на бизнес.
ООП не ложится на бизнес, им удобно классифицировать/генерализовать алгоритмы или группировать классы со схожим поведением. А если ты не веришь, то подумай несколько натужно оопешники приходят к доменным моделям , если вообще их делают. Вот и остаются алгоритмы и круды.
Ну эта, если вдруг еще не все прогорели с летнего хита
пиздец, за неделю выучил jquery, и этого мне было достаточно чтобы решить любую задачу на javascript
Тебе и классик жабаскрипта хватит, написать пару функций для упрощения написания дивов и все. Просто фронтенд разрабы еще те извращенцы, которые вместо изучения чего-то интересного любят дрочить синтаксис фреймворков.
Ага, и потом смотришь в файл с JQ функциями размером в 3 тысячи строк и думаешь, а если я вот сейчас тот див удалю, не поломается ли селектор в какой-то из функций.
Чтобы написать коммент, необходимо залогиниться