Стройный
![]() | |
Оригинальный автор(ы) | Рич Харрис |
---|---|
Разработчик(и) | Участники Svelte. Ключевые участники: Рич Харрис, Алан Фобер, Тан Ли Хау, Бен Макканн и Саймон Холтхаузен. |
Первоначальный выпуск | 26 ноября 2016 г |
Стабильная версия | 4.2.11 [1] ![]() |
Репозиторий | github.com/sveltejs/svelte |
Написано в | JavaScript , TypeScript |
Платформа | Веб-платформа |
Тип | Веб-фреймворк |
Лицензия | МОЯ лицензия |
Веб-сайт | https://svelte.dev/ |
Svelte — это с открытым исходным кодом , основанная на компонентах бесплатная клиентская программная среда . [2] и язык [3] создан Ричем Харрисом и поддерживается членами основной команды Svelte. [4]
Svelte не является монолитной библиотекой JavaScript, импортируемой приложениями: вместо этого Svelte компилирует HTML-шаблоны в специализированный код, который напрямую манипулирует DOM , что может уменьшить размер передаваемых файлов и повысить производительность клиента. [5] Код приложения также обрабатывается компилятором, вставляя вызовы для автоматического перерасчета данных. [2] и повторно отображать элементы пользовательского интерфейса при изменении данных, от которых они зависят. [6] Это также позволяет избежать накладных расходов, связанных с промежуточными представлениями времени выполнения, такими как виртуальный DOM . [7] в отличие от традиционных фреймворков (таких как React и Vue ), которые выполняют большую часть своей работы во время выполнения, то есть в браузере. [5] [6] [4] [8] [2] [7]
Сам компилятор написан на JavaScript . [9] [8] Его исходный код лицензирован под лицензией MIT License и размещен на GitHub . [8] Среди сопоставимых интерфейсных библиотек Svelte имеет один из самых маленьких размеров пакета — всего 2 КБ. [10]
История
[ редактировать ]Предшественником Svelte является Ractive.js, созданный Ричем Харрисом в 2013 году. [11]
Версия 1 Svelte была написана на JavaScript и выпущена 29 ноября 2016 года. По сути, это был Ractive с компилятором. [12] Название Svelte было выбрано Ричем Харрисом и его коллегами из The Guardian . [12]
Версия 2 Svelte была выпущена 19 апреля 2018 года. Она была призвана исправить то, что сопровождающие считали ошибками в более ранней версии, например замену двойных фигурных скобок одинарными фигурными скобками. [12]
Версия 3 Svelte была написана на TypeScript и выпущена 21 апреля 2019 года. Она переосмыслила реактивность, используя компилятор для скрытого инструментирования назначений. [2]
Веб-фреймворк SvelteKit был анонсирован в октябре 2020 года и вступил в бета-версию в марте 2021 года. [13] [14]
Версия 4 Svelte была выпущена 22 июня 2023 года. Это служебная версия, меньше и быстрее, чем версия 3. [15] Частью этого выпуска была внутренняя перезапись TypeScript обратно на JavaScript с аннотациями JSDoc . [9] Это было встречено сообществом разработчиков с недоумением, к которому обратился создатель Svelte Рич Харрис. [16] [17]
Ключевые первые участники приняли участие в присоединении Conduitry с выпуском Svelte 1, Тан Ли Хау, присоединившегося в 2019 году, и Бена Макканна, присоединившегося в 2020 году. [12] Рич Харрис и Саймон Холтхаузен присоединились к Vercel для постоянной работы над Svelte в 2022 году. [18] Доминик Ганнауэй присоединился к Vercel из основной команды React, чтобы работать над Svelte на постоянной основе в 2023 году. [19]
SvelteKit 1.0 был выпущен в декабре 2022 года после двух лет разработки. [20]
Синтаксис
[ редактировать ]Приложения и компоненты Svelte определены в .svelte
файлы, которые представляют собой HTML- файлы, расширенные синтаксисом шаблонов, основанным на JavaScript и похожим на JSX .
Svelte перепрофилирует собственный синтаксис помеченных операторов JavaScript $:
отмечать реактивные высказывания. Переменные верхнего уровня становятся состоянием компонента, а экспортированные переменные становятся свойствами, которые получает компонент. Кроме того, { JavaScript code }
синтаксис можно использовать для создания шаблонов в элементах и компонентах HTML, [21] что показано ниже:
<script>
let count = 1;
$: doubled = count * 2;
</script>
<p>{count} * 2 = {doubled}</p>
<button on:click={() => count = count + 1}>Count</button>
Связанные проекты
[ редактировать ]Разработчики Svelte создали SvelteKit как официальный способ создания проектов с помощью Svelte. Это фреймворк в стиле Next.js , который значительно сокращает объем кода, отправляемого в браузер. Разработчики ранее создали Sapper, который был предшественником SvelteKit. [22]
Сопровождающие Svelte также поддерживают ряд интеграций для популярных программных проектов в рамках организации Svelte, включая интеграции для Vite , Rollup, Webpack , TypeScript, VS Code , Chrome Developer Tools, ESLint и prettier. [23] Ряд внешних проектов, таких как Storybook, также создали интеграцию со Svelte и SvelteKit.
Влияние
[ редактировать ]Vue.js смоделировал свой API и однофайловые компоненты по образцу Ractive.js, предшественника Svelte. [11]
Принятие
[ редактировать ]Разработчики широко хвалят Svelte. Заняв первое место в многочисленных крупномасштабных опросах разработчиков, он был выбран самым любимым веб-фреймворком Stack Overflow 2021 и интерфейсным фреймворком State of JS 2020 года с наиболее удовлетворенными разработчиками. [24] [25]
Svelte был принят рядом известных веб-компаний, включая The New York Times , Apple , Spotify , Radio France (французская национальная общественная радиовещательная компания) , [26] Square , Yahoo , ByteDance , Rakuten , Bloomberg , Reuters , Ikea , Facebook , FrontPopulaire-2024 и Brave . [27] [28] [29]
Группа сообщества, не занимающаяся сопровождением, проводит конференцию Svelte Summit, пишет информационный бюллетень Svelte, ведет подкаст Svelte и размещает каталог инструментов, компонентов и шаблонов Svelte. [30]
См. также
[ редактировать ]Ссылки
[ редактировать ]- ^ https://github.com/sveltejs/svelte/releases/tag/svelte%404.2.11 .
{{cite web}}
: Отсутствует или пусто|title=
( помощь ) - ^ Jump up to: а б с д Рич Харрис (22 апреля 2019 г.). «Svelte 3: Переосмысление реактивности» . svelte.dev . Проверено 7 августа 2021 г.
- ^ Харрис, Рич (26 ноября 2018 г.). «Правда о Свелте» . GitHub суть . Проверено 21 декабря 2022 г.
- ^ Jump up to: а б Крил, Пол (2 декабря 2016 г.). «Тонкий и быстрый фреймворк Svelte ставит JavaScript на диету» . Инфомир .
- ^ Jump up to: а б «React против Svelte, фреймворка времени сборки JavaScript» . реакция-etc.net .
- ^ Jump up to: а б «Svelte 3 Front-End Framework переносит реактивность в язык JavaScript, вопросы и ответы с Ричем Харрисом» . ИнфоQ .
- ^ Jump up to: а б Рич Харрис (27 декабря 2018 г.). «Виртуальный DOM — это чистые накладные расходы» . svelte.dev .
- ^ Jump up to: а б с «GitHub — sveltejs/svelte: кибернетически улучшенные веб-приложения» . 11 января 2020 г. – через GitHub.
- ^ Jump up to: а б «Преобразование TS в JSDoc № 8569» . GitHub.com .
- ^ Frontendeng.dev (01 августа 2023 г.). «Svelte против React: какой фреймворк лучше?» . frontendeng.dev .
- ^ Jump up to: а б Свистак, Томаш (19 ноября 2020 г.). «О JavaScript-фреймворке Svelte» . ValueLogic | Блог . Архивировано из оригинала 27 марта 2022 г. Проверено 10 июня 2021 г.
Кстати, на синтаксис Vue повлиял Ractive.js, прямой предшественник Svelte.
- ^ Jump up to: а б с д Svelte Origins: документальный фильм о JavaScript , получено 9 июля 2022 г.
- ^ Рич Харрис: Футуристическая веб-разработка , заархивировано из оригинала 12 декабря 2021 г. , получено 3 августа 2021 г.
- ^ Харрис, Рич (23 марта 2021 г.). «SvelteKit находится в стадии публичной бета-версии» . svelte.dev . Проверено 3 августа 2021 г.
- ^ команда The Svelte (22 июня 2023 г.). «Анонс Svelte 4» . svelte.dev . Проверено 8 августа 2023 г.
- ^ «Преобразование TS в JSDoc» . Хакерские новости (news.ycombinator.com) . 10 мая 2023 г.
- ^ «Господи, я не ожидал, что внутренний пиар о рефакторинге окажется на первом месте в Hacker News…» Hacker News (news.ycombinator.com) . 10 мая 2023 г.
- ^ Харрис, Рич (11 ноября 2021 г.). «сегодня важный день для @sveltejs: я присоединился к @vercel, чтобы работать над этим полный рабочий день!» . Твиттер . Проверено 4 сентября 2022 г.
- ^ «https://twitter.com/trueadm/status/1640761270566633472» . X (ранее Twitter) . Проверено 30 сентября 2023 г.
{{cite web}}
: Внешняя ссылка в
( помощь )|title=
- ^ «Учет SvelteKit 1.0» . 14 декабря 2022 г. Проверено 16 декабря 2022 г.
- ^ «Страница руководства по Svelte» , svelte.dev , получено 6 июля 2022 г.
- ^ Харрис, Рич (31 декабря 2017 г.). «Sapper: На пути к идеальному фреймворку веб-приложений» . svelte.dev . Проверено 29 ноября 2022 г.
- ^ «Свелте» . Гитхаб . Проверено 3 августа 2021 г.
- ^ «Опрос разработчиков Stack Overflow 2021» . Переполнение стека . Проверено 26 октября 2021 г.
- ^ «Состояние JS 2020: интерфейсные фреймворки» . 2020.stateofjs.com . Проверено 26 октября 2021 г.
- ^ «Радио Франции перевело свой сайт на SvelteKit» . Reddit.com . Проверено 4 июня 2024 г.
- ^ «Svelte • Кибернетически усовершенствованные веб-приложения» . svelte.dev . Проверено 3 августа 2021 г.
- ^ «Веб-сайты, использующие Svelte — Wappalyzer» . www.wappalyzer.com . Проверено 3 августа 2021 г.
- ^ «Ваш профиль, ваш домашний опыт» . yourhome.fb.com . Проверено 1 декабря 2021 г.
- ^ «Дом – стройное общество» . sveltesociety.dev . Проверено 3 августа 2021 г.