Strumenti Dev

F-Droid 2.0: come si riscrive (bene) un'app che esiste da 10 anni

F-Droid, lo store di app Android libere e open source, ha appena rilasciato la sua versione 2.0: il più grande aggiornamento in un decennio, con il cuore dell'app riscritto in Kotlin Compose dopo oltre un anno di lavoro e 14 release di test. Al di là della notizia in sé, il modo in cui è stata condotta questa riscrittura è una guida pratica per chiunque si trovi a dover rifare un'app che ha anni di storia alle spalle.

Cosa cambia in F-Droid 2.0

La novità più visibile è la navigazione, semplificata in tre aree principali — Discover, Search e My Apps — mentre impostazioni e scambio "Nearby Swap" restano a portata di tap ma non competono più per spazio nella barra principale. Il vero lavoro, però, è sotto il cofano: componenti chiave sono stati riscritti in Kotlin Compose, il toolkit moderno per costruire interfacce Android, sostituendo il vecchio sistema a View che l'app usava da anni.

Sul fronte della scoperta dei contenuti, le categorie sono state ampliate e riorganizzate: da un numero ridotto di categorie generiche si passa a decine di categorie specializzate (VPN, firewall, gestori di password, navigazione), raggruppate in "meta-categorie" per non disorientare chi arriva per la prima volta. La categoria Giochi, ad esempio, non è più un unico calderone ma si divide in 17 generi distinti. Anche la ricerca è stata rifatta per capire meglio cosa sta cercando davvero chi digita una query.

La lezione per chi deve riscrivere qualcosa di vecchio

  • Quattordici release di test prima del rilascio pubblico. Un anno di sviluppo non è finito in un salto: è arrivato in produzione attraverso 14 versioni di prova, distribuite gradualmente prima del lancio definitivo. Per un'app con milioni di installazioni, un rilascio "big bang" sarebbe stato un rischio enorme. La lezione vale per qualunque riscrittura importante di un prodotto già in uso: un canale beta con utenti reali che segnalano problemi prima del rollout generale costa tempo, ma costa molto meno di un rollback su larga scala.
  • Riscrivere lo strato UI non è solo estetica. Passare da un sistema a View a Kotlin Compose non è un semplice restyling: cambia il modo in cui l'interfaccia viene descritta e aggiornata, e questo si traduce, nelle parole del team, in una base più solida "per consegnare miglioramenti più rapidamente negli anni a venire". È il motivo tecnico più solido per giustificare una riscrittura: non "sembra più moderna", ma "da qui in poi cambiare qualcosa costerà meno".
  • Organizzare il catalogo conta quanto ridisegnarlo. Espandere le categorie e introdurre meta-categorie è un lavoro di architettura dell'informazione, non di grafica. Per chi gestisce un catalogo che cresce — un e-commerce, un blog con centinaia di articoli, un portfolio di progetti — la lezione è diretta: spesso il problema non è che i contenuti non si vedono bene, è che non sono organizzati in un modo che aiuti chi cerca a trovarli in pochi tap.

Se vuoi provarlo

F-Droid 2.0 viene distribuito gradualmente nelle prossime settimane a chi ha già l'app installata; chi vuole verificare la propria versione o installarla da zero può farlo direttamente dal sito ufficiale del progetto. Per chi lavora con Android, vale comunque la pena guardare da vicino questa riscrittura anche solo come caso di studio: è raro vedere un progetto open source di questa scala documentare così apertamente il percorso da un'architettura UI legacy a una moderna, senza fermare gli aggiornamenti per anni.

Fonte: F-Droid 2.0: A New Chapter for Android Freedom, su f-droid.org