Nelle ultime settimane abbiamo parlato spesso di TDLib e abbiamo notato che più di qualche utente è arrivato a leggere alcuni dei post dedicati a Telegram X e Challegram, proprio perché si parlava di questa libreria. Quindi a questo punto non potevamo non dedicare un post alla libreria TDLib, visto che lo stesso team impegnato nello sviluppo dell’ecosistema Telegram ha deciso di dedicarli una pagina.

TDLib-contest

TDLib la sua storia

La libreria TDLib in realtà non è nata ieri, ma è un progetto che ha avuto inizio qualche anno fa, già nel lontano 2015 quando Pavel Durov lancia il primo contest dedicato alla realizzazione di applicazioni alternative a Telegram Stock e basate proprio sulla libreria TDLib e non la classica libreria MTProto che è quella alla base di tutti i client di Telegram Stock e i bot, indipendentemente dal sistema operativo mobile, desktop o dalla versione web.

Quindi ecco che a Ottobre del 2015, Pavel Durov in persona annuncia che il vincitore di questo contest è Vyacheslav Krylov, che ha realizzato il progetto Challegram. Si proprio quel Challegram che abbiamo imparato a conoscere in queste settimane, proprio perché si è trasformato nel progetto Telegram X per i sistemi operativi Android.

Va detto comunque, che pure i secondi e i terzi arrivati di questo contest non sono stati per niente male nel realizzare la propria versione di Telegram basata sulla libreria TDLib e magari prossimamente vi parleremo anche di loro.

Visto che queste app alternative a Telegram Stock competono apertamente con quelle ufficiali e alcune hanno raggiunto oltre 10 milioni di download su Google Play. Questa è l’ennesima dimostrazione di come gli sviluppatori hanno voglia di fare.

Cosa offre la libreria TDLib

Come vi abbiamo accennato nei precedenti post dedicati a Challegrame e Telegram X per Android, la libreria TDLib si occupa di tutti i dettagli riguardanti l’implementazione della rete, la crittografia e dell’archiviazione dei dati locali. In questo modo gli sviluppatori la vita degli sviluppatori è molto più facile e soprattutto così possono dedicare molto più tempo alla progettazione della propria applicazione, impegnando molto più tempo nella progettazione e realizzazione di interfacce più reattive e animate. Non solo, realizzando un client alternativo basato su queste libreria, lo sviluppatore ha più tempo dà dedicare a tutti quei dettagli che gli permetta di realizzare un client alternativo che soddisfi le richieste degli utenti più esigenti.

Poi va detto che la libreria TDLib supporta tutte le funzionalità di Telegram Stock e rende lo sviluppo di applicazioni alternative basate sul codice Telegram un gioco da ragazzi su qualsiasi piattaforma. Non solo essendo una libreria cross-platform essa può essere utilizzata per realizzare un client alternativo per Android, iOS, Windows, macOS, Linux, watchOS, tvOS, Tizen, Cygwin e su di un qualsiasi altro sistema operativo mobile o desktop. Dalla regia ci dicono, che volendo anche web.

Oltre ad essere compatibile con ogni sistema operativo, la libreria è compatibile con qualsiasi linguaggio di programmazione. Infatti il team Telegram dichiara che TDLib sia in grado di eseguire funzioni C; ha anche collegamenti nativi a Java e C#.

Poi contro ogni aspettativa, questo soprattutto vista in generale la documentazione dedicata alle API e API Bot di Telegram, la libreria TDLib è effettivamente completamente documentata e il suo codice è disponibile in repository aperto su GitHub.

Va anche detto, che così come la libreria MTProto anche la libreria TDLib è stata studia e anzi molto migliorata per quello che riguarda la stabilità su connessioni Internet lente e inaffidabili. Non solo, garantisce che tutti gli aggiornamenti verranno consegnati nell’ordine corretto. In poi anche tutti i dati locali vengono crittografati utilizzando una chiave di crittografia fornita dall’utente. Insomma indipendentemente che si parli di MTProto o TDLib, il focus rimane sempre quello: sicurezza e velocità.

Visto che si parla di sicurezza e velocità, non si può non dire che la libreria TDLib è completamente asincrona e ottimizzata per alte prestazioni indipendentemente dal dispositivo. La libreria viene utilizzata anche per le API Bot di Telegram, dove ogni istanza di TDLib gestisce più di 18.000 bot attivi contemporaneamente. Roba non da poco si potrebbe dire.

Va detto che TDLib non è nata con tutte le funzionalità che oggi sono state introdotte e migliorate passando da MTProto 1 a MTProto 2, però il team ha lavorato e lavora tutto il giorno per migliorare questa libreria. Infatti pure loro hanno ammesso che ci è voluto quasi un anno per realizzare e introdurre tutte le principali funzionalità di Telegram Stock per Android.

Conclusione:

Per farvi capire l’iportanza di questa libreria, vogliamo farmi questo esempio per concludere questo cammino alla scoperta di TDLib.

In un comunicato nel canale ufficiale del client Unigram, gli sviluppatori di questo client hanno informato tutti gli iscritti che stanno già lavorando a stretto contato con gli sviluppatori della libreria TDLib per realizzare una nuova versione del client dedicata a tutti coloro che hanno Windows 10. Non solo hanno anche voluto anticipare l’arrivo di Unigram X nel Microsoft Store entro la fine del mese.

Insomma che dire, questa libreria è sempre piaciuta e sicuramente sarà molto apprezzata da moltissimi sviluppatori con la voglia di fare. Sicuramente sarà una risorsa utili per coloro che vorranno sviluppare un proprio client basato su Telegram da utilizzare in ambito strettamente aziendale e riservato.

Per il momento questo è tutto, noi vi diamo appuntamento alla prossima puntata dedicata a Telegram Stock,  Telegram X e Telegram Desktop, ma anche alle prossime guide dedicate ai vari clienti di questo magnifica applicazione per la messaggistica.

Come al solito, vi aspettiamo sul nostro canale ufficiale su Telegram, ma anche nel supergruppo InsideTelegramLab e nel canale InsiDevCode.

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *

This site uses Akismet to reduce spam. Learn how your comment data is processed.