Если бы всем поголовно во фронтенд сообществе нужны были бы статические типы, они давно бы уже стали частью стандарта.
Стандартизирование типизации в JS на данное время не иммет смысла потому что там постоянно нужно что-то допиливать, развивать и улучшать так как нельзя просто так взять и сразу типизировать всю мощь javascript. Посмотрите для примера как активно развивается typescript.
Опять же, я понимаю любую критику в отношении синтаксиса, но мне нравится то, насколько легко понять это.
Подобного вида шаблоны с кастомным синтаксисом появляются/умирают/существуют уже десятки лет в самых рзличных фреймворках и библиотеках.
Вместо того, чтобы вкладывать JavaScript в наш HTML-код, мы просто говорим: эй, давайте сделаем цикл по этому массиву и создадим элемент для каждого из них.
Как раз для новичков полноценно освоить обычный JS было бы полезнее чем учить язык размерки определенного фреймфорка и здесь JSX ближе к стандартному JS чем svelte и многие другие фреймворки. Но я JSX не перевариваю.
Для узких задач, например внедрить виджет куда-то в чужую систему, возможно это решение удобное. То есть я бы рассматривал этот фреймворк как средство решения специализированных задач. Для крупных проектов с большой командой не вижу смысла выбирать нишевые вещи. К тому же новичкам будет проще найти работу зная что-то о react/angular/vue чем фокусироваться на svelte.
Как раз понятно. Потому что сложность приложений растет, а делают их все те же индусы. Разбор JS кода на самом деле ведь очень дорогая операция, это ведь не просто парсинг текста.
Вот вот. Лучше уже совсем типизацию не использовать чем постоянно что-то где-то кастовать тк создается иллюзия что типизация присутствует когда ее на самом деле нет (тк постоянный каст).
Реакт и вебпак исторически были прорывными шутковинами и этот факт из истории не убрать. Rollup и SvelteJs не выглядят прорывными, но тем не менее звезд там все равно много и они по свойму популярны. Svelte насколько я понимаю в некоторых областях очень применим, если допустим виджед куда-то внедрить нужно посторонний при этом не тянуть с собой фреймворки.
Например, я хочу, прости господи, типы в JavaScript добавить, понятно, что это уже перебор.
Почему перебор? Мысль здравая, а то все какие-то постцээсэс и автопрефиксеры. Но просто так добавить типы в JS не получится. Там нужно постоянно что-то подпиливать как c TypeScript происходит. Поэтому если и сделают стандарт ES2025+ с типами, то он очень быстро устареет.
Речь ведь идет только о переходном периоде который неизбежен если происходит перевод JS кода на TS. Any расставить можно, но это муторно. Можно включить на время allow implicit any, но мне такой вариант не нравится.
Имелось в виду, что если начать покрывать работающий код типами, то можно погрязнуть в куче разных несовпадений типов, которые пользователям никак не мешали, но компиляцию typescript ломают.
Можно на этап перевода кода разрешить работать с JS файлами (опция allowJs) и так постепенно по файлу переводить на TS. Или что-то такое испольовать github.com/evolution-gaming/tsc-silent
P.S. а что вы имели в виду под «скрипт кидди»? Я знаю только вот это определение и оно тут не при чем.
Не гарантирует потому что TS это структурная штука, которая не существует в рантайме, это by design. То есть да гарантируется только совпадение структуры. Этого как правило достаточно при работе со своим кодом. А при работе с внешними/сомнительными данными все равно применяется рантайм валидация.
Пишут на том на чем способна писать имеющаяся команда разработчиков, на том что компания может осилить. Редкие компании могут позволить себе подбирать правильные инструменты под задачу.
Разумеется древние проекты написанные изначально скорее всего ботаниками для компании «спинофф от универа» нужно кому-то поддерживать. Отсюда и востребованность.
Python живой только потому что курс этого недоразумения преподается в универах. Поэтому это изделие очень популярно в научных кругух, когда всякие академики и прочие ботаны начинают выражить свои идеи в коде. Это еще нормально для простых скриптов, но для серьезных и крупных вещей нужна нормальная типизация.
Подобного вида шаблоны с кастомным синтаксисом появляются/умирают/существуют уже десятки лет в самых рзличных фреймворках и библиотеках.
Как раз для новичков полноценно освоить обычный JS было бы полезнее чем учить язык размерки определенного фреймфорка и здесь JSX ближе к стандартному JS чем svelte и многие другие фреймворки. Но я JSX не перевариваю.
Для узких задач, например внедрить виджет куда-то в чужую систему, возможно это решение удобное. То есть я бы рассматривал этот фреймворк как средство решения специализированных задач. Для крупных проектов с большой командой не вижу смысла выбирать нишевые вещи. К тому же новичкам будет проще найти работу зная что-то о react/angular/vue чем фокусироваться на svelte.
PS оно вроде как на TS напиисано github.com/sveltejs/svelte/tree/master/src но только частично (например каталоги internal и motion на JS). Надеюсь JS со временем ичезнет из проекта совсем. Кроме этого github.com/sveltejs/svelte/blob/master/tsconfig.json меня не слишком впечатлил. Но автор вроде как принимает идеи TS и можно ожидать что дела наладятся github.com/sveltejs/svelte/issues/1639#issuecomment-442974572
Могу перефразировать — код манки.