4 settembre, 2020 – 7 min read

Dal suo inizio nel 2012, Bubble non ha mai smesso di far evolvere la sua piattaforma low-code e di perfezionare le sue caratteristiche, in gran parte grazie ai numerosi feedback che il team ha raccolto dalla comunità.

Oggi, Bubble è una piattaforma full-stack che supporta progetti software grandi e complessi.

Come agenzia Bubble, ci vengono spesso poste domande sulle capacità della piattaforma.

L’elenco qui sotto descrive onestamente ciò che si può/non si può fare con la tecnologia Bubble (finora) in modo da poter convalidare se è la piattaforma più adatta alle esigenze del vostro progetto.

Bubble è uno dei più avanzati ambienti di programmazione visuale per costruire robuste applicazioni web. Sia che vogliate creare un’applicazione web desktop o responsive che si adatti a qualsiasi dimensione dello schermo, potete (probabilmente) farlo con Bubble.

Esempi tipici di applicazioni che possono essere notevolmente costruite su Bubble sono i social network, prodotti software as a service (SaaS) o marketplaces.

L’editor Bubble offre un’ampia flessibilità che permette agli sviluppatori esperti di realizzare prodotti pixel-perfect con design complessi e requisiti responsive.

✔️ Costruire Progressive Web Apps (PWA)

Come abbiamo introdotto la notizia nel nostro ultimo articolo Medium, il nostro team ha costruito un’applicazione web installabile (PWA) sulla piattaforma Bubble. Fondamentalmente, si tratta di un clone minimalista dell’app Uber, distribuito in pochi giorni con una miscela 100% No-Code + Code.

Le PWA (Progressive Web Apps) portano le caratteristiche delle app native attraverso il web e hanno molti vantaggi:

  • Le PWA sono facilmente installabili (1-click con dispositivi Android), rendendole accessibili dalla schermata iniziale proprio come qualsiasi altra applicazione. Questo è estremamente vantaggioso per le start-up o le aziende che cercano di risparmiare sui costi di sviluppo di un’applicazione mobile nativa sia per Android che per iOS. Inoltre non sarà necessaria un’iscrizione all’Apple Developer Program.
  • Gli aggiornamenti e la manutenzione manuale delle app appartengono al passato con le PWA. Poiché le applicazioni sono servite da un browser web, non c’è bisogno di aggiornare l’applicazione manualmente attraverso un app store o di attivare un’impostazione per aggiornare l’applicazione automaticamente.
  • Le PWA sono di piccole dimensioni rispetto alle loro controparti native. Le PWA permettono agli utenti di aggiungerle senza soluzione di continuità alla loro schermata iniziale, e poiché le dimensioni dell’applicazione sono minime, non vi è alcun tempo di attesa per l’utente per avviare/continuare a utilizzare una PWA.
  • Le PWA sono ottime per il SEO e portano più indipendenza dagli application store (rischio di ban, alte commissioni per i pagamenti in-app…).

In tutta onestà, a meno che il vostro progetto non richieda profonde funzionalità native (vedere un elenco completo delle funzionalità disponibili nel vostro attuale browser web qui: ttps://whatwebcando.today/), le web app e le PWA che “si sentono” native dovrebbero fare il lavoro nella maggior parte dei casi.

Bene a sapersi, è sempre possibile trasformare una web app o PWA in un’applicazione ibrida, permettendole di essere facilmente distribuita negli application store (Android Play Store e Apple Store).

✔️ Costruire app mobili ibride

Ad oggi, Bubble non offre una soluzione out-of-the-box per applicazioni native. Mentre questo progetto sembra essere previsto nella loro roadmap a lungo termine, è ancora possibile creare applicazioni mobili ibride con Bubble editor avvolgendo le applicazioni web e pubblicandole negli store.

Le app ibride offrono un grande vantaggio per gli sviluppatori che desiderano aggiornare frequentemente la loro app, poiché non è necessario ripresentare la nuova versione. Inoltre, poiché le app mobili ibride sono alimentate da tecnologie web, possono essere distribuite su entrambi gli store Android e Apple più facilmente, riducendo così i tempi e i costi di sviluppo.

Inoltre, le app mobili ibride forniscono accesso a più permessi e funzioni native rispetto alle applicazioni web e PWA (come Contatti, Biometria & Smart Login…).

C’è un ottimo plugin per trasformare le web app ottimizzate in app native: BDK Native di Gaurav Jain.

✔️ Esegui codice personalizzato

Le capacità native no-code della piattaforma Bubble sono impressionanti. Infatti, Bubble fornisce un sacco di funzioni native per costruire potenti applicazioni web. Ma in alcuni casi, il linguaggio visivo non è il modo più adatto per costruire una funzione o raggiungere un’azione specifica. A volte, può essere necessario estendere le caratteristiche creando elementi e azioni personalizzate sopra le capacità di Bubble.

La maggior parte degli strumenti no-code non permettono di estendere le capacità con linee di codice tradizionali. Bubble si distingue su questo punto: permette agli sviluppatori di eseguire codice personalizzato per estendere la loro applicazione quando incontrano una limitazione.

Quindi, gli sviluppatori possono creare plugin per scrivere ed eseguire codice personalizzato (Javascript) all’interno delle applicazioni. Detto questo, c’è una piccola possibilità di incontrare un limite rigido nei vostri progetti. Ecco perché preferiamo riferirci a Bubble come una piattaforma Low-Code, perché è possibile aggiungere codice per migliorare la vostra app.

✔️ Connettersi a servizi esterni e hardware attraverso le API

A volte, le applicazioni hanno bisogno di raccogliere dati da fonti esterne o innescare alcune azioni (per esempio il recupero dei dati degli account sociali, l’invio di una e-mail transazionale o la lettura della temperatura da un sensore). La piattaforma Bubble offre un potente strumento, il connettore API, per collegare le applicazioni a sistemi software esterni o dispositivi hardware. Tecnicamente, è possibile connettersi quasi a tutto attraverso le API, come ad esempio un motore AI-powered per classificare un massiccio set di immagini o il controllo di un dispositivo IoT.

✔️ Collegarsi a database esterni

Di default, i dati delle applicazioni vengono letti e memorizzati sui server AWS. L’editor di Bubble fornisce uno strumento, il SQL Database Connector, che permette agli sviluppatori di collegare le applicazioni a database esterni ed eseguire query SQL dall’interno di Bubble.

✔️ Scalare l’app mentre il business cresce

La scalabilità è una preoccupazione regolare. Molti fondatori si chiedono se il motore di Bubble sarà abbastanza potente da supportare la scalabilità della loro app.

Prima cosa da considerare, le prestazioni e le capacità di scalabilità sono altamente influenzate da come l’app è costruita e ottimizzata sull’editor Bubble. Poiché Bubble è uno strumento di programmazione come qualsiasi altra tecnologia, gli sviluppatori devono seguire buone pratiche per garantire prestazioni decenti e fornire una buona esperienza agli utenti finali. In altre parole, richiede un modello di database ben progettato, una logica ottimizzata e query di database, e un’esperienza utente funzionale.

Dall’altro lato, il team di Bubble sta lavorando duramente sui miglioramenti della scalabilità e delle prestazioni e offre vari piani di hosting (accessibili) per soddisfare le esigenze di performance delle applicazioni. Per impostazione predefinita, la vostra applicazione Bubble condivide le stesse risorse di calcolo con tutte le altre applicazioni Bubble (nei piani di hosting Hobby e Personal). Sui piani superiori, puoi avere più capacità (ciò significa che l’applicazione può fare più azioni in un dato periodo quando è necessario).

Se necessario, il team di Bubble offre piani dedicati ai propri clienti. In questo caso, si beneficia di un’infrastruttura, sempre in esecuzione sul server AWS, ma isolata da altre app Bubble che portano ad una maggiore affidabilità e scalabilità.

Bubble è una soluzione conveniente per iniziare un progetto software con esigenze informatiche limitate. Quando diventa necessario, è facile scalare l’infrastruttura della tua app, ad un prezzo equo.

✔️ Gestisci l’accesso ai dati e la privacy

Bubble è una piattaforma estremamente aperta rispetto ad altri strumenti no-code. Detto questo, ci sono infiniti modi per sviluppare un’applicazione su Bubble, a volte con cattive abitudini. Per impostazione predefinita, tutti i dati sono aperti al pubblico quando si crea un’applicazione Bubble. Tuttavia, l’editor di Bubble offre alcuni strumenti per configurare l’accesso ai dati nella tua app. Infatti, le regole sulla privacy danno il potere di proteggere le informazioni e assicurarsi che siano sicure.

❌ Costruire app native

La piattaforma Bubble non fornisce finora un motore specifico per costruire e distribuire app native sugli application store. Mentre questo è qualcosa che dovrebbe essere implementato a medio/lungo termine, è ancora possibile costruire PWA mobili o distribuire app mobili ibride sugli store con alcune tecniche e work around (vedi sopra).

❌ Ospitare un’app su un server privato o on-premise

Bubble fornisce l’hosting per i propri clienti su server cloud Amazon Web Services (AWS) o istanze dedicate. Attualmente, non è possibile ospitare autonomamente un’applicazione Bubble su un servizio di hosting privato o su un server on-premise.

Detto questo, il cloud computing sta diventando la norma e AWS è riconosciuto come il principale fornitore di cloud (>50% di quota di mercato), in termini di prestazioni e sicurezza.

❌ Eseguire altri linguaggi oltre a Javascript

È vero che gli sviluppatori Bubble possono estendere le funzionalità di un’applicazione con codice personalizzato. Ma solo il linguaggio Javascript è supportato.

Il motore centrale di Bubble è scritto in linguaggio Javascript. Ad oggi, gli sviluppatori potranno usare solo Javascript per costruire integrazioni personalizzate sopra Bubble.

❌ Sviluppare algoritmi complessi

Il linguaggio visivo di Bubble non è lo strumento più appropriato per sviluppare algoritmi complessi, specialmente operazioni ricorsive o di looping sui dati. Come opzione migliore, gli sviluppatori possono usare o scrivere algoritmi personalizzati al di fuori di Bubble (ospitati su Amazon Lambda per esempio) e usarli passando i dati attraverso un’API (per esempio un algoritmo di apprendimento automatico).

❌ Creare videogiochi (avanzati)

Non aspettatevi di creare ed eseguire complessi giochi 3D o di piattaforma con il motore Bubble… anche se alcuni utenti intelligenti di Bubble sono riusciti a creare piccoli giochi che vale la pena provare come The Legend of Zeldinia di J805 o Pizza Mania di Landowski.

❌ Esportare codice

Le applicazioni Bubble possono essere eseguite solo sulla piattaforma Bubble. Questo modello proprietario è giustificato dal modello di business di Bubble. Pertanto, non è possibile esportare un’applicazione come codice. Se decidi di allontanarti dalla piattaforma Bubble, dovrai ricostruire la logica dell’applicazione (senza codice). Sarete solo in grado di esportare i dati dell’applicazione e il codice personalizzato che avete aggiunto sopra Bubble.

La domanda a cui pensare è: perché dovreste avere bisogno di spostarvi da Bubble?

Lascia un commento

Il tuo indirizzo email non sarà pubblicato.