Svelte
Logo programu | |
Autor | Rich Harris |
---|---|
Pierwsze wydanie | 29 listopada 2016; ponad 8 lat temu |
Aktualna wersja stabilna | 5.0.0 (19 października 2024) [±] |
Język programowania | TypeScript |
Platforma sprzętowa | wieloplatformowy |
Rodzaj | kompilator |
Licencja | MIT |
Strona internetowa |
Svelte – darmowy, otwarty front-endowy kompilator, wykorzystywany do tworzenia interfejsów graficznych aplikacji internetowych. Został stworzony przez Richa Harrisa[1].
Aplikacje skompilowane przy pomocy Svelte nie zawierają w sobie bibliotek, tylko wygenerowany kod JavaScript[2] – skutkuje to w zredukowaniu ich rozmiaru, jak i zwiększeniu ich wydajności. W przeciwieństwie do popularnych frameworków JavaScript, Svelte nie wykorzystuje pośrednich rozwiązań, takich jak wirtualny obiektowy model dokumentu, co przyczynia się do mniejszych wymagań aplikacji internetowych stworzonych przy pomocy tego rozwiązania[3]. Sam kompilator napisany jest w języku TypeScript, a jego kod źródłowy dostępny jest na licencji MIT na serwisie GitHub[4].
Historia
[edytuj | edytuj kod]Poprzednikiem Svelte jest Ractive.js, poprzedni projekt Richa Harrisa[5]. Pierwsza wersja Svelte napisana została w języku JavaScript, a do publicznego użytku trafiła 29 listopada 2016. 19 kwietnia 2018 wydana została druga wersja kompilatora, która wprowadziła nowy syntaks szablonów, nowy sposób aktualizowania stanu strony i zgodność z ES2015. Największą, trzecią, aktualizację kompilator otrzymał 21 kwietnia 2019, gdy został przepisany w języku TypeScript[6].
Przykład
[edytuj | edytuj kod]Aplikacje i komponenty zdefiniowane są w plikach „.svelte”, które rozszerzone są o składnię szablonów podobną do JSX. Svelte wykorzystuje natywną składnię instrukcji JavaScript z etykietą $:
, aby oznaczyć zmienne reaktywne. Zmienne najwyższego poziomu stają się stanem komponentu, a wyeksportowane zmienne stają się właściwościami, które otrzymuje komponent.
<script>
let a = 1;
$: b = a * 2;
</script>
<p>{a} * 2 = {b}</p>
<button on:click={() => a = a + 1}>Licz</button>
Powiązane projekty i wpływy
[edytuj | edytuj kod]Vue.js swoją składnie bazuje na tej z Ractive.js, który jest poprzednikiem Svelte[7].
Na potrzeby budowania aplikacji Svelte stworzony został framework SvelteKit[8].
Osoby zajmujące się rozwojem Svelte opracowały liczne projekty integrujące rozwiązania takie jak Vite, Rollup, Webpack, TypeScript, VS Code i więcej[9].
Odbiór publiczny
[edytuj | edytuj kod]Svelte cieszy się największym uznaniem swoich użytkowników spośród wszystkich front-endowych technologii, jednak przegrywa w popularności z frameworkami takimi jak React, Vue czy Angular[10].
Svelte został przyjęty przez wiele znanych firm, w tym The New York Times, Apple, Spotify, Bloomberg, Reuters, IKEA i Facebook[11][12][13].
Przypisy
[edytuj | edytuj kod]- ↑ Svelte 3 Front-End Framework Moves Reactivity into the JavaScript Language, Q&A with Rich Harris. [dostęp 2020-02-07]. (ang.).
- ↑ React vs. Svelte, the JavaScript build-time framework [online], react-etc.net [dostęp 2022-03-18] .
- ↑ Virtual DOM is pure overhead [online], svelte.dev [dostęp 2024-04-26] (ang.).
- ↑ sveltejs/svelte, Svelte, 18 marca 2022 [dostęp 2022-03-18] .
- ↑ About the Svelte JavaScript framework [online], ValueLogic | Blog, 19 listopada 2020 [dostęp 2022-03-18] .
- ↑ https://github.com/sveltejs/svelte/blob/master/CHANGELOG.md.
- ↑ https://valuelogic.one/blog/the-rise-of-the-svelte-javascript-framework/.
- ↑ Introduction • Docs • SvelteKit [online], svelte.dev [dostęp 2024-04-26] (ang.).
- ↑ Svelte · GitHub [online], github.com [dostęp 2024-04-26] (ang.).
- ↑ Stack Overflow Developer Survey 2021 [online], stackoverflow.com [dostęp 2024-04-26] (ang.).
- ↑ Svelte • Cybernetically enhanced web apps [online], svelte.dev [dostęp 2024-04-26] (ang.).
- ↑ https://yourhome.fb.com/
- ↑ Websites using Svelte - Wappalyzer [online], wappalyzer.com [dostęp 2024-04-26] .