Novità dal mondo dello sviluppo di applicazioni multi-piattaforma: ByteDance, la società dietro TikTok, ha introdotto Lynx, un nuovissimo framework basato su Rust, progettato per massimizzare le prestazioni nello sviluppo mobile. Ispirato al felino da cui prende il nome, Lynx punta a offrire velocità fulminea, precisione d’esecuzione e un’eccezionale adattabilità su più piattaforme. Ma scopriamo di più!
Alcuni esempi di Lynx già in uso nei prodotti di TikTok
Esempi di sviluppo in Lynx si possono già trovare in applicazioni ad alto traffico all’interno dell’ecosistema TikTok, tra cui il pannello di ricerca, TikTok Studio e anche esperienze complesse come TikTok Shop e LIVE. La sua capacità di supportare eventi di alto profilo come Disney100 e il Met Gala su TikTok dimostra il suo valore nell’offrire esperienze coinvolgenti e affidabili.
A differenza di framework consolidati come React Native o Flutter, Lynx introduce un motore di rendering UI multi-threaded, pensato per applicazioni ad alte prestazioni.
Un’architettura web-native per un’esperienza di sviluppo modernizzata
Lynx adotta un approccio innovativo nella progettazione dei componenti, avvicinandosi molto più allo sviluppo web rispetto ai tradizionali framework per mobile. Rispetto a React Native, che richiede l’uso di JSX e di un proprio sistema di styling, Lynx offre:
-
Supporto nativo per CSS, incluse variabili, animazioni e transizioni
-
Markup simile a HTML per la costruzione delle UI, facilitando la transizione degli sviluppatori web verso il mobile
-
Componentizzazione familiare, con un modello di sviluppo basato su ReactLynx.
Prestazioni ottimizzate grazie a un’architettura multi-threaded
Uno dei punti di forza di Lynx, come abbiamo detto inizialmente, è il suo motore UI multi-threaded, che separa rendering e logica applicativa:
-
Il thread UI (PrimJS Engine) gestisce il rendering degli eventi e le animazioni
-
Il thread logico esegue la logica applicativa separatamente, evitando rallentamenti
Questa architettura elimina il collo di bottiglia della JavaScript bridge di React Native, consentendo:
-
Aggiornamenti UI più veloci
-
Animazioni senza frame persi
-
Tempi di caricamento quasi istantanei
Component Architecture: dichiarativo e performante
Lynx segue un modello di UI basato sui componenti, simile a React ma con ottimizzazioni chiave:
-
Componenti dichiarativi e nativi, con tag come <view>, <text>, e <image>, direttamente mappati su elementi nativi della piattaforma
-
Styling interamente basato su CSS, eliminando la necessità di sistemi basati su JavaScript come Styled Components o Tailwind
Grazie al supporto completo per CSS, Lynx offre:
-
Animazioni e transizioni native
-
Gestione avanzata di gradienti, ombre e variabili
-
Utilizzo di moduli CSS, stili globali e inline.
Versatilità e adattabilità a diversi framework JavaScript
Gli sviluppatori di Lynx hanno scelto React come framework frontend iniziale, ma ci tengono a sottolineare che Lynx non è legato esclusivamente a React.
Grazie al suo approccio framework-agnostico, la community ha mostrato un forte interesse nell’integrare anche altri framework come Vue, Svelte e Angular. A conferma di questa apertura, durante la conferenza VueJs Amsterdam, Evan You (creatore di Vue) ha parlato di VueLynx, un’integrazione attualmente in fase di prototipo.
Oltre a supportare diversi framework, Lynx si ispira a progetti come Chromium, Flutter e React Native per essere indipendente anche dalla piattaforma host. Questo significa che può adattarsi a nuove primitive di piattaforma e integrare renderer personalizzati, garantendo un’esperienza ottimale su qualsiasi dispositivo, dal web fino agli IoT.
In DotEnv abbiamo testato le prestazioni di sviluppo di Lynx e siamo molto fiduciosi nel suo potenziale futuro.
La sua adozione globale dipenderà dalla crescita dell’ecosistema, dagli strumenti di sviluppo e dall’interesse dell’industria. Tuttavia, i suoi vantaggi architetturali sono evidenti: chi lo adotterà per primo potrà essere tra i pionieri della nuova generazione di applicazioni mobili, performanti e interattive.
Grazie alla sua apertura alla community open-source, Lynx ha il potenziale per diventare un nuovo standard nello sviluppo cross-platform, offrendo una soluzione unificata, veloce e scalabile per il futuro delle applicazioni digitali.