Siitä lähtien, kun se alkoi vuonna 2012, Bubble ei ole koskaan lakannut kehittämästä low-code-alustaansa ja hiomasta sen ominaisuuksia, mikä on suurelta osin tiimin yhteisöltä keräämän lukuisan palautteen ansiota.
Tänä päivänä Bubble on täysimittainen alusta, joka tukee suuria ja monimutkaisia ohjelmistoprojekteja.
Bubble-toimistona meiltä kysytään usein kysymyksiä alustan mahdollisuuksista.
Alhaalla olevassa luettelossa kuvataan rehellisesti, mitä Bubble-teknologialla voi/ei voi tehdä (toistaiseksi), jotta voit validoida, onko se sopivin alusta projektisi tarpeisiin.
Bubble on yksi edistyksellisimmistä visuaalisista ohjelmointiympäristöistä, jonka avulla voit rakentaa vankkoja verkkosovelluksia. Halusitpa sitten luoda työpöytäsovelluksen tai responsiivisen verkkosovelluksen, joka sopii mihin tahansa näytön kokoon, voit (todennäköisesti) tehdä sen Bubblen avulla.
Tyypillisiä esimerkkejä sovelluksista, jotka voidaan rakentaa suurelta osin Bubblen avulla, ovat sosiaaliset verkostot, ohjelmistopalvelutuotteet (SaaS) tai markkinapaikat.
Bubble-editori tarjoaa laajan joustavuuden, jonka avulla kokeneet kehittäjät voivat saavuttaa pikselitarkkoja tuotteita, joilla on monimutkainen muotoilu ja responsiiviset vaatimukset.
- ✔️ Rakenna progressiivisia verkkosovelluksia (PWA)
- ✔️ Rakenna hybridi-mobiilisovelluksia
- ✔️ Suorita mukautettua koodia
- ✔️ Yhdistäminen ulkoisiin palveluihin ja laitteistoihin API:iden avulla
- ✔️ Yhdistäminen ulkoisiin tietokantoihin
- ✔️ Sovelluksen skaalautuminen liiketoiminnan kasvaessa
- ✔️ Hallitse tietojen käyttöoikeuksia ja yksityisyyttä
- ❌ Rakenna natiivisovelluksia
- ❌ Sovelluksen isännöinti yksityisellä tai omalla palvelimella
- ❌ Muiden kielten kuin Javascriptin suorittaminen
- ❌ Kehitä monimutkaisia algoritmeja
- ❌ (Kehittyneiden) videopelien luominen
- ❌ Koodin vieminen
✔️ Rakenna progressiivisia verkkosovelluksia (PWA)
Kuten esittelimme uutisen viimeisimmässä Medium-artikkelissamme, tiimimme on rakentanut Bubble-alustalle asennettavan verkkosovelluksen (PWA). Pohjimmiltaan se on Uber-sovelluksen minimalistinen klooni, joka on otettu käyttöön muutamassa päivässä 100-prosenttisella No-Code + Code -sekoituksella.
Progressiiviset verkkosovellukset (PWA) tuovat natiivisovelluksen ominaisuudet verkon kautta, ja niillä on monia etuja:
- PWA:t ovat helposti asennettavissa (1-klikkauksella Android-laitteilla), jolloin se on käytettävissä aloitusnäytöltä kuten mikä tahansa sovellus. Tämä on erittäin hyödyllistä aloittaville yrityksille tai yrityksille, jotka haluavat säästää natiivin mobiilisovelluksen kehittämiskustannuksissa sekä Androidille että iOS:lle. Lisäksi jäsenyyttä Applen kehittäjäohjelmassa ei tarvita.
- PWA:n myötä sovellusten manuaaliset päivitykset ja ylläpito ovat historiaa. Koska sovelluksia palvelee verkkoselain, sovellusta ei tarvitse päivittää manuaalisesti sovelluskaupan kautta tai aktivoida asetusta, joka päivittää sovelluksen automaattisesti.
- PWA:t ovat kooltaan pieniä verrattuna natiiviin vastineeseensa. PWA:t mahdollistavat sen, että käyttäjät voivat lisätä ne saumattomasti aloitusnäyttöönsä, ja koska sovelluksen koko on minimaalinen, käyttäjällä ei ole odotusaikaa PWA:n käytön aloittamiseen/jatkamiseen.
- PWA:t ovat loistavia SEO:n kannalta ja tuovat lisää riippumattomuutta sovelluskaupoista (kieltoriski, korkeat palkkiot sovelluksen sisäisistä maksuista…).
Honesty, ellei projektisi vaadi syviä natiiviominaisuuksia (katso täysi luettelo nykyisessä selaimessasi saatavilla olevista ominaisuuksista täältä: ttps://whatwebcando.today/), web-sovellusten ja PWA:iden, jotka ”tuntuvat” natiivilta, pitäisi riittää useimmissa tapauksissa.
Hyvä tietää, että web-sovellus tai PWA on aina mahdollista muuttaa hybridisovellukseksi, jolloin se voidaan helposti ottaa käyttöön sovelluskaupoissa (Android Play Store ja Apple Store).
✔️ Rakenna hybridi-mobiilisovelluksia
Tänään Bubble ei tarjoa out-of-the-box -ratkaisua natiivisovelluksille. Vaikka tämä projekti näyttää olevan suunnitteilla heidän pitkän aikavälin tiekartassaan, on silti mahdollista luoda hybridi-mobiilisovelluksia Bubble-editorilla käärimällä verkkosovellukset ja julkaisemalla ne kauppoihin.
Hybridisovellukset tarjoavat suuren edun kehittäjille, jotka haluavat päivittää sovellustaan usein, koska uutta versiota ei tarvitse lähettää uudelleen. Lisäksi, koska hybridimobiilisovellukset perustuvat web-teknologioihin, ne voidaan helpommin ottaa käyttöön sekä Android- että Apple-kaupoissa, mikä vähentää kehitysaikaa ja -kustannuksia.
Hybridimobiilisovellukset tarjoavat myös pääsyn useampiin käyttöoikeuksiin ja natiiviominaisuuksiin kuin web-sovellukset ja PWA:t (kuten yhteystiedot, biometriikka & älykäs sisäänkirjautuminen &…).
On olemassa erinomainen lisäosa optimoitujen verkkosovellusten muuttamiseksi natiivisovelluksiksi: BDK Native by Gaurav Jain.
✔️ Suorita mukautettua koodia
Bubble-alustan natiivikoodittomat ominaisuudet ovat vaikuttavia. Bubble tarjoaa todellakin paljon natiiviominaisuuksia tehokkaiden verkkosovellusten rakentamiseen. Mutta joissakin tapauksissa visuaalinen kieli ei ole sopivin tapa rakentaa ominaisuus tai saavuttaa tietty toiminto. Joskus voi olla tarpeen laajentaa ominaisuuksia luomalla omia elementtejä ja toimintoja Bubble-ominaisuuksien päälle.
Useimmat no-code-työkalut eivät salli ominaisuuksien laajentamista perinteisillä koodiriveillä. Bubble erottuu tästä: se antaa kehittäjille mahdollisuuden ajaa mukautettua koodia sovelluksensa laajentamiseksi, kun he törmäävät rajoitukseen.
Siten kehittäjät voivat luoda liitännäisiä kirjoittaakseen ja ajaakseen mukautettua (Javascript) koodia sovellusten sisällä. Tästä huolimatta on pieni mahdollisuus, että törmäät kovaan rajoitukseen projekteissasi. Siksi kutsumme Bubblea mieluummin Low-Code-alustaksi, koska siihen on mahdollista lisätä koodia sovelluksen parantamiseksi.
✔️ Yhdistäminen ulkoisiin palveluihin ja laitteistoihin API:iden avulla
Joskus sovellusten on kerättävä tietoja ulkoisista lähteistä tai käynnistettävä joitakin toimintoja (esimerkiksi haettava sosiaalisen tilin tietoja, lähetettävä tapahtumakohtainen sähköpostiviesti tai luettava lämpötilaa anturista). Bubble-alusta tarjoaa tehokkaan työkalun, API-liittimen, jolla sovellukset voidaan yhdistää ulkoisiin ohjelmistojärjestelmiin tai laitteistolaitteisiin. Teknisesti voit liittää API:iden kautta melkein kaikkeen, kuten tekoälyllä toimivaan moottoriin, joka luokittelee massiivisen kuvajoukon tai ohjaa IoT-laitetta.
✔️ Yhdistäminen ulkoisiin tietokantoihin
Oletusarvoisesti sovelluksen tiedot luetaan ja tallennetaan AWS:n palvelimille. Bubble-editori tarjoaa työkalun, SQL Database Connectorin, jonka avulla kehittäjät voivat liittää sovellukset ulkoisiin tietokantoihin ja suorittaa SQL-kyselyitä Bubblesta käsin.
✔️ Sovelluksen skaalautuminen liiketoiminnan kasvaessa
Skaalautuvuus on säännöllinen huolenaihe. Monet perustajat miettivät, onko Bubble-moottori tarpeeksi tehokas tukemaan heidän sovelluksensa skaalautumista.
Ensisijaisesti on otettava huomioon, että suorituskykyyn ja skaalautumiskykyyn vaikuttaa suuresti se, miten sovellus on rakennettu ja optimoitu Bubble-editorilla. Koska Bubble on ohjelmointityökalu kuten mikä tahansa muukin teknologia, kehittäjien on noudatettava hyviä käytäntöjä varmistaakseen kunnollisen suorituskyvyn ja tarjotakseen hyvän kokemuksen loppukäyttäjille. Toisin sanoen se edellyttää hyvin suunniteltua tietokantamallia, optimoitua logiikkaa ja tietokantakyselyjä sekä toimivaa käyttäjäkokemusta.
Toisaalta Bubble-tiimi työskentelee ahkerasti skaalautuvuuden ja suorituskyvyn parantamisen parissa ja tarjoaa erilaisia (kohtuuhintaisia) hosting-paketteja sovelluksen suorituskyvyn tarpeisiin. Oletusarvoisesti Bubble-sovelluksesi jakaa samat laskentaresurssit kaikkien muiden Bubble-sovellusten kanssa (Hobby- ja Personal-hostingpaketeissa). Paremmissa suunnitelmissa sinulla voi olla enemmän kapasiteettia (mikä tarkoittaa, että sovellus voi tehdä enemmän toimintoja tietyssä ajassa, kun se on tarpeen).
Tarpeen vaatiessa Bubble-tiimi tarjoaa dedikoituja suunnitelmia asiakkailleen. Tällöin hyödyt infrastruktuurista, joka toimii aina AWS-palvelimella, mutta joka on eristetty muista Bubble-sovelluksista, mikä johtaa suurempaan luotettavuuteen ja skaalautuvuuteen.
Bubble on edullinen ratkaisu ohjelmistoprojektin aloittamiseen rajoitetuilla laskentatarpeilla. Kun se tulee tarpeelliseksi, sovelluksesi infrastruktuuria on helppo skaalata kohtuulliseen hintaan.
✔️ Hallitse tietojen käyttöoikeuksia ja yksityisyyttä
Bubble on muihin no-code-työkaluihin verrattuna erittäin avoin alusta. Tästä huolimatta on loputtomasti tapoja kehittää sovellusta Bubbleen, joskus huonoilla tavoilla. Oletusarvoisesti kaikki tiedot ovat julkisia, kun luot Bubble-sovelluksen. Bubble-editori tarjoaa kuitenkin joitakin työkaluja, joiden avulla voit määrittää sovelluksesi tiedonsaantia. Tietosuojasäännöt antavat todellakin vallan suojata tietoja ja varmistaa, että ne ovat turvassa.
❌ Rakenna natiivisovelluksia
Bubble-alusta ei toistaiseksi tarjoa erityistä moottoria natiivisovellusten rakentamiseen ja käyttöönottoon sovelluskaupoissa. Vaikka tämä on asia, joka pitäisi toteuttaa keskipitkällä/pitkällä aikavälillä, on silti mahdollista rakentaa mobiileja PWA-sovelluksia tai ottaa käyttöön hybridejä mobiilisovelluksia sovelluskaupoissa joidenkin tekniikoiden ja kiertotekniikoiden avulla (ks. yllä).
❌ Sovelluksen isännöinti yksityisellä tai omalla palvelimella
Bubble tarjoaa asiakkailleen isännöintiä Amazon Web Servicesin (AWS) pilvipalvelimilla tai dedikoiduilla instansseilla. Tällä hetkellä ei ole mahdollista itse isännöidä Bubble-sovellusta yksityisellä isännöintipalvelulla tai paikan päällä olevalla palvelimella.
Pilvilaskennasta on kuitenkin tulossa normi, ja AWS on tunnustettu johtavaksi pilvipalveluntarjoajaksi (>50 %:n markkinaosuus) suorituskyvyn ja turvallisuuden suhteen.
❌ Muiden kielten kuin Javascriptin suorittaminen
Todennäköistä on, että Bubble-kehittäjät pystyvät laajentamaan sovelluksen ominaisuuksia räätälöidyllä koodilla. Mutta vain Javascript-kieli on tuettu.
Bubblen ydinmoottori on kirjoitettu Javascript-kielellä. Toistaiseksi kehittäjät pystyvät käyttämään Javascriptiä vain rakentaessaan mukautettuja integraatioita Bubblen päälle.
❌ Kehitä monimutkaisia algoritmeja
Bubblen visuaalinen kieli ei ole sopivin työkalu monimutkaisten algoritmien kehittämiseen, etenkään rekursiivisten tai silmukkaoperaatioiden tekemiseen tiedoille. Parempana vaihtoehtona kehittäjät voivat käyttää tai kirjoittaa mukautettuja algoritmeja Bubblen ulkopuolella (esimerkiksi Amazon Lambdassa isännöitynä) ja käyttää niitä välittämällä dataa API:n kautta (esimerkiksi koneoppimisalgoritmi).
❌ (Kehittyneiden) videopelien luominen
Ei kannata odottaa, että Bubble-moottorilla voi luoda ja pyörittää monimutkaisia 3D- tai tasohyppelypelejä… vaikka jotkut fiksut Bubble-käyttäjät ovatkin onnistuneet luomaan kokeilemisen arvoisia pikkupelejä, kuten J805:n kirjoittama The Legend of Zeldinia tai Landowskyn kirjoittama Pizza Mania.
❌ Koodin vieminen
Bubble-sovellukset voidaan pyörittää vain Bubblen alusta. Tämä omistusoikeusmalli on perusteltu Bubblen liiketoimintamallilla. Näin ollen sovellusta ei voi viedä koodina. Jos päätät siirtyä pois Bubble-alustalta, sinun on rakennettava sovelluslogiikka (ilman koodia) uudelleen. Voit viedä vain sovelluksen tiedot ja mukautetun koodin, jonka olet lisännyt Bubblen päälle.
Kysymys, jota kannattaa miettiä: miksi sinun pitäisi siirtyä pois Bubble-alustalta?