Roman Kitaev, перефразируя одну песенку из детского советского фильма:
Пока живут на свете дураки
Рефакторингом нам жить с руки...
Не знаю как так вышло, но я заимел в определенных кругах репутацию некой службы спасения от последствий таких идиотов. И вот интересное наблюдение, что бизнес понимает, что те 10 дешевых идиотов обходятся ему в разы дороже только в состоянии "все приплыли", когда добавление новой фичи затягивается на несколько месяцев и выливается в тонну багов, когда все жутко тормозит, и масштабирование не спасет от слова совсем.
Надим Закиров, если речь идет о исходных кодах на любых языках, то парсинг регулярками еще и багов может принести просто уйму.
Для парсинга html и xml в браузере есть встроенный инструмент DOMParser
Для парсинга js лучше взять babel или espree
vladislav997, потому что document.querySelector ищет только первый подходящий элемент
для множества надо использовать document.querySelectorAll и перебирать результат циклом:
Korifa, потому что у Вас capacity и length получаются по значению, то есть копируются, а в исходной функции остаются свои копии, которые не меняются
По хорошему Ваша функция getText вообще не должна иметь аргументов, а должна возвращать все эти данные, например через структуру.
Denis Adamov, в состоянии приложения лучше хранить
при этом не обязательно для этого нужны библиотеки управления состоянием, можно просто и в объект положить
Vann Damm, Вам нужна единая точка входа, условный main.js
в ней Вы проверите условие, на каком устройстве запущен скрипт, и с помощью динамического импорта уже подгрузите нужную кодовую базу.
Все остальное вебпак сделает за Вас
Korifa, в C ручное управление памятью, это значит, что программист руками управляет памятью в куче, и забота о выделении и освобождении такой памяти - это забота программиста.
Память на стеке выделяется компилятором и она фиксированная. То что внутри блока у Вас изолированные переменные - это просто компиляторный сахар. На деле все переменные - это просто некоторое смещение от вершины стека.
Just Me, если бы вордпрес решал любую бизнес задачу, то наверно все бы пользовались им, а не делали свое? Вот только проблема в том, что не возможно создать абсолютно универсальное решение, которое удовлетворило бы всех. Бизнес хочет быть чем-то уникальным, не похожим на других. И если у бизнеса есть деньги, то он нанимает для этого программистов, а если денег нет - довольствуется тем что есть.
А вот популярность технологии никак не коррелирует с дешевизной ее поддержки. Да под популярную технологию может быть больше готовых решений. Вот только какое из них лучше подходит под конкретную бизнес хотелку? А если ничего не подходит? Допиливать напильником или пилить свое? И кто это все будет делать?
И вот еще о чем забывают многие менеджеры:
что сэкономив время 1 раз, можно в последствии потратить его во много раз больше, а время это деньги;
что то что визуально выглядит весьма просто, под капотом может быть очень сложным;
что MVP после запуска нужно выкидывать и переписывать сразу, ибо после месяца поддержки переписать уже будет нереально, а поддерживать дорого...
big_hasan, ну в плане навязывания хороших практик, я бы реакт поставил почти на одном уровне с джиквери... Джиквери до него не хватает разве навязывание компонентного подхода. Ну и еще реакт-дом делает более точечные обновления дом за разработчика, а в джиквери опять же свобода делать плохо, ибо он императивный.
А вот если сравнивать внутреннюю сложность самих библиотек... Относительно рабочий аналог реакта я сделаю за 1-2 вечера, относительно рабочий аналог джиквери - где то за неделю. За ангуляр я даже браться не буду... ибо сложно планировать такие поделки дальше 3х месяцев...
profesor08, может и не бутылочное горлышко, с таким то подходом... Сразу ясно, что благодаря таким приложениям не замерзнешь зимой, проц согреет...
Но это еще и потенциальный баг, ибо код усложнен.
big_hasan, ну так не долго дойти до того, что начинать надо с jQuery, ведь он проще и быстрее позволит начать решать задачи. Вот только писать что-то вменяемое на jQuery еще сложнее, чем на фреймворках.
Да, знать основы естественно надо, понимать сам язык, понимать апи браузера, которое лежит под фреймворками. Вот только большинство не знают и как то работают. Как раз таки ангуляр позволит понять, как правильно построить приложение, чтоб оно не начало дурно пахнуть через пол года (хотя наговнокодить и тут можно). Реакт и вью этого не дают совсем. Более того, я реально встречаю заблуждение, что виртуальный дом работает быстрее нативного, и то что виртуальный дом работает поверх нативного для этих людей не аргумент.