Geneerisen projektin nosto Windows 10 -versioksi

Geneerisen projektin nosto Windows 10 -versioksi

Windows 10 -alustaan on pikku hiljaa saatu mielenkiintoisia, uusia osia. On ollut hienoa nähdä, miten ne toimivat.

Universal Windows Platform (UWP) tuottaa sovelluksia esimerksi seuraaville laitteille
– Puhelin (Myös Continuum)
– Tabletti
– PC
– Raspberry Pi ja muut pienet laitteet
– XBox (tulossa)
– HoloLens (tulossa).

Aikaisemmassa blogissa kerroin varhaisemmista sovelluksista ja nyt olen nostanut sovellukset UWP-versioksi. Monella eri tekniikalla toteutetut projektit on nyt yhdistetty. Samalla jotain jätettiin pois, mutta myös uutta syntyi.

Tekemäni järjestelmän tarkoitus on olla helppokäyttöinen datan talletus-, raportointi-, IOT-, viestinlähetys- ym. moottori. Kaikkea ohjataan tekstitemplateilla ja -säännöillä.

Säännöillä ohjataan esimerkiksi mailin lähetystä tai IOT-laitteiden toimintaa. Konfigurointia voi muuttaa niin sanotusti ”lennossa”.

Azureen jäi ainoastaan Web Api -rajapinta. Muut poistuivat tarpeettomina.

Azuressa käytetyt tekniikat ovat
– Web Api, johon lähetetään luokka ja palautetaan luokka. Kaikki data kulkee samalla tavalla (teksti ja binääri).
– Geneerinen Table Storage tallettaa tekstimuotoista dataa (lomakkeet, IOT-data ym.)
– Vaihtoehtoisesti voi käyttää Azuren DOcumentDB-varastoa tekstimuotoiselle datalle.
– Binäärit talletetaan Blob Storageen (kuvat ym.)
– SendGrid lähettää mailit (Esim. valokuvan lähetys, kun sääntö laukeaa.)
– SignalR lisättiin nopeuttamaan IOT-laitteiden toimintaa. (Laitteet keskustelevat nopeasti sääntöjen avulla.)

Tässä kohtaa huomasin UWP-mallin voiman. Eri tekniikat sulautuivat yhteen ja syntyi kolme eri sovellusta.

Oli upeaa nähdä, miten ne toimivat monilla eri laitteilla. Sovellukset toimivat siis samalla tavalla – ja samalla koodilla – eri laitteissa.

Käytän sovelluksia näissä laitteissa
– Puhelin ja sen Continuum-tila
– Tabletti
– PC
– Raspberry Pi.

Ainoa merkittävä ero on puhelimen normaalitilassa oleva kapeampi näyttö. Busineslogiikkakoodi on samaa clienteissä ja palvelimella. Tämän koodin jako on tehty vielä perinteisellä tavalla.

Clientin sovellukset
– Admin-sovellus, jolla luodaan uusi sovellus ja sen templatet.
– User-sovellus, jolla sitten syötetään dataa manuallisesti ja katsotaan businessgrafikkaa.
– IOT-sovellus, joka lähettää dataa ja hälytyksiä.

Esimerkiksi
– IOT-puhelimessa voi lähettä paikkatietoa.
– IOT-tabletissa voi otaa kuvia tai lähettää asentotietoa.
– IOT-Rasbberryssä voi lähettää säätietoja.

Toteutettuja IOT-ajureita ovat paikannus, nopeus, valoisuus, sää, puhe, wemo-valot ja -kytkimet.

Sovellus siis luodaan ja käytetään noilla clienteillä. Koodausta ei tarvita.

Uudelleenkäyttö on tässä kaiken ydin. Vain uudet ominaisuudet koodataan ja ne ovat sitten kaikkien vanhojen ja uusien sovellusten käytössä.

Tällä sovelluksella olen tehnyt paljon erilaisia toimivia demoja. Näitä tekniikoita olen käyttänyt onnistuneesti myös asiakasprojekteissa.

Parhaimmillaan sovellukseni on tilanteissa, joissa datakenttiä tulee lisää tai muutoksiin pitää varautua. Muutokset voi tehdä ’lennossa’. Lomakkeilla on lisäksi datan muototarkistukset ja virheilmoitukset.

Esimerkkejä
– Projektinseuranta
– Outlookissa huone-, laite- ja tarjoiluvaraukset
– Businessgrafiikka ja porautuminen
– Valojen sytytys, valokuvan ottaminen ja lähetys mailina sekä ”kiitos kuvasta” -puheena, kun liiketunnistin laukeaa.

Näen UWP-ohjelmointimallin mainiona yritysten kannalta. Sama sovellus toimii tarpeen mukaan eri laitteilla. Ei olla sidottuina laitteeseen tai paikkaan. Työtä voi jatkaa samalla ohjelmalla, mutta toisenlaisella laitteella.

Puhelimen Continuum-tila oli mukava yllätys. Sovellusta voi siinä ajaa täysikokoisena ulkoisella näytöllä. Uskonkin tämän menestykseen.

Lopuksi arvaus tulevasta kehityksestä työpaikoilla. Jatkossa töihin tullessa puhelin liitetään johdolla telakkaan, johon on liitetty näyttö, näppäimistö ja hiiri. Azure ja Office toimivat eri sovellusten palvelimena.

Mainokset

Vastaa

Täytä tietosi alle tai klikkaa kuvaketta kirjautuaksesi sisään:

WordPress.com-logo

Olet kommentoimassa WordPress.com -tilin nimissä. Log Out /  Muuta )

Google+ photo

Olet kommentoimassa Google+ -tilin nimissä. Log Out /  Muuta )

Twitter-kuva

Olet kommentoimassa Twitter -tilin nimissä. Log Out /  Muuta )

Facebook-kuva

Olet kommentoimassa Facebook -tilin nimissä. Log Out /  Muuta )

Muodostetaan yhteyttä palveluun %s