Sviluppo applicazioni, intervista a Fabio Gerosa di Couchbase

Couchbase Mobile permette un approccio offline-first nello sviluppo di applicazioni mobile e IoT.

trasformazione digitale Sviluppo applicazioni cloud computing

Fabio Gerosa, Sales Director Italy di Couchbase, racconta come sta cambiando il settore dello sviluppo applicazioni e le novità della piattaforma Mobile 3.

– Couchbase Mobile 3, quali sono le prerogative peculiari della piattaforma?

La piattaforma Couchbase Mobile è una soluzione completamente integrata che permette di realizzare applicazioni che siano offline first, ovvero che possano funzionare in maniera completamente indipendente dalla presenza di connettività, permettendo di realizzare architetture edge altamente performanti il più possibile vicine all’utente e al dispositivo.

Una delle novità più importanti della release 3 è sicuramente il supporto ufficiale allo sviluppo di applicazioni scritte in linguaggio C tramite il nostro SDK. Grazie a ciò sarà possibile integrare la nostra soluzione in maniera completamente supportata in una ampia varietà di dispositivi IoT ed embedded che utilizzano principalmente questo linguaggio di sviluppo.

– Semplificazione dello sviluppo applicazioni, come contribuisce Couchbase Mobile 3 in questo?

Couchbase Mobile permette un approccio offline-first nello sviluppo di applicazioni mobile e IoT. Tutto ciò è reso possibile dal fatto di avere un database locale con cui l’applicazione si interfaccia direttamente senza dover ogni volta contattare servizi di backend, rendendo di fatto l’applicazione moto più semplice da implementare e manutenere. In questo modo lo sviluppatore deve solamente occuparsi di interagire con il database offline locale al dispositivo mentre tutta la parte di sincronizzazione è demandata al prodotto e viene gestita in maniera completamente automatica e trasparente tramite il middleware di sincronizzazione, ovvero il Sync Gateway.

La versione 3 semplifica ulteriormente lo sviluppo introducendo il supporto diretto per le query SQL che in questo modo possono essere scritte una sola volta e riutilizzate sia per interagire con il database locale al dispositivo che con quello lato server. Oltre a questa importante novità sulla parte di database offline, ne vengono introdotte altre numerose tra cui la possibilità di rendere persistente la parte di configurazione del Sync Gateway sul database, il middleware di sincronizzazione, cosa che permette di essere sicuramenti più agili nello sviluppo e nella manutenzione delle applicazioni.

– Lo sviluppo delle app, oggi, rappresenta un nodo cruciale per gli ambienti di business, quali sono le esigenze tipiche che ricevete da clienti e aziende?

I clienti richiedono sempre più spesso funzionalità mobile e edge per soddisfare le esigenze delle applicazioni moderne e i dati devono essere sempre disponibili in modo da consentire un costante funzionamento dell’app a velocità ottimale. Con Couchbase Mobile 3, abbiamo semplificato lo sviluppo e la gestione di complesse attività di sincronizzazione dei dati. Il nostro primo, moderno database embedded permette ai clienti di costruire facilmente applicazioni dinamiche dal cloud all’edge, sfruttando competenze e codice esistenti.

– “Database moderno ad alte prestazioni”: come declinate questa combinazione?

Couchbase ha tutte le caratteristiche per essere definito un database moderno, in particolare la nostra soluzione permette di avere massima flessibilità nello sviluppo, non obbligando gli sviluppatori a dover definire un modello dati rigido che nel tempo risulta complesso da mantenere ed evolvere.

Altra caratteristica fondamentale è che la nostra soluzione è nata con l’idea di essere essa stessa cloud native come lo sono le applicazioni moderne, in particolare può essere implementata assecondando le più diverse necessità dei nostri clienti supportando praticamente tutti i modelli: dal bare metal alle virtual machine fino a Kubernetes tramite il nostro Autonomous operator fino ad arrivare a una soluzione completamente gestita di DBaaS. Le alte prestazioni sono garantite, d’altro canto, da un’architettura che è in primis memory first e ci permette di garantire performance ottimali in ogni contesto grazie all’utilizzo delle capacità in memory senza dover far ricorso, come spesso accade con altri prodotti, a cache o soluzioni esterne.

– Il concetto stesso di “Database” sta cambiando, come osservatori privilegiati, quali considerazioni potete fare?

Assolutamente vero, al giorno d’oggi si avverte il bisogno urgente di un database che possa supportare sia lo sviluppo di nuove applicazioni che nascono già in un’ottica cloud native che la modernizzazione e l’aggiornamento di quelle esistenti. Couchbase può rispondere a entrambi i requisiti superando la tradizionale dicotomia tra database relazionali, in grado di supportare le classiche applicazioni transazionali, e database NoSQL moderni, che invece sono vicini alle applicazioni odierne sviluppate in un’architettura cloud native e basate sul concetto di microservizi.

Couchbase soddisfa entrambe le esigenze supportando da un lato la possibilità di utilizzare SQL, linguaggio di query universale e conosciuto da tutti gli sviluppatori, e garantire transazionalità per quelle applicazioni che lo richiedono e, dall’altro, offrendo un modello dati flessibile basato su JSON e una scalabilità pressoché lineare grazie alla sua architettura distribuita.