sunnuntai 15. marraskuuta 2015

Mobiiliapplikaation vaiheita (OSA I)

Tässä blogisarjassa käymme lävitse Morse-miehet 2.0 ryhmän mobiiliapplikaation kehitystä. Blogisarjasta tulee uusi kirjoitus noin viikon välein. Tämä on sarjan ensimmäinen kirjoitus.


Alustan valitseminen



Kuva: http://www.teckilla.com/wp-content/uploads/2012/09/windos_ios_android.jpg

Mobiilikehitystä aloittaessa oikean mobiilialustan valitseminen tuli vastaan ensimmäiseksi. Mietimme, mille alustalle tätä on järkevintä lähteä kehittämään sekä asiakkaiden, että meidän kehittäjien näkökulmasta. Asiakkaiden näkökulmasta tärkeintä on se, että applikaatio pyörii heidän laitteillaan. Tällä hetkellä Android käyttöjärjestelmällä varustettuja puhelimia myydään selkeästi eniten yli 80% osuudella. iOS tulee tämän jälkeen noin 15% osuudella.  Muiden puhelinten osuus jää pieneksi. Tulee kuitenkin huomata, että tilanne saattaa muuttua nopeasti, kuten huomattiin Nokian kanssa.

Kuva: http://www.bargainteers.com/wp-content/uploads/2012/12/ios-vs-android-vs-wp7.jpg

Meidän kehittäjien näkökulmasta mietimme ensiksi mitä puhelimia meillä on. Pienestä budjetista johtuen ei ole järkevää kehittää laitteelle, jota meillä itsellämme ei ole. Kehittäminen ja testaaminen olisi hidasta. Totesimme, että meillä on puolella jäsenistä Android puhelin ja puolella Windows Phone puhelin. Totesimme iOS kehityksen vaativan Mac tietokonetta, joita meillä ei ole, joten suljimme iOS:n ulos. Kavensimme valinnan Androidiin ja Windows Phoneen. Mietimme myös alustan sopivuutta tämän tyyppiselle applikaatiolle, sillä kehitystyökaluilta ja käyttöjärjestelmältä tarvitsemme hyvää tukea. Android ja WP osoittautuivat tasavertaisiksi. Mietimme myös omaa osaamistamme ja huomasimme osaavamme parhaiten Java – ohjelmointikieltä, mitä Android kehityksessä käytetään. Emme halunneet käyttää liikaa aikaa uuden opettelemiseen ohjelman haastavuuden takia, joten päädyimme yksimielisesti Androidiin.



Kuva: http://blog.letsalign.com/content/images/2015/08/mobileapp-development1.png

Tulevaisuudessa saatamme toteuttaa applikaation myös muille alustoille. Sovelluksemme arkkitehtuuri on semmoinen, että applikaatio on helppo toteuttaa uudelle alustalla. Päätimme esimerkiksi tehdä valojen tunnistuksesta kokonaan erillisen C++ kielellä kirjoitetun kirjaston, jota on helppo kopioida alustalta toiselle. Tällä on ollut myös suorituskykyvaikutuksia, sillä natiivi C++ koodi on osoittautunut nopeammaksi kuin Java koodi.

Androidin valitseminen alustaksi osoittautui hyväksi päätökseksi. Kehityksessä ei ole tullut ylitsepääsemättömiä teknisiä esteitä ja kehitys on edistynyt jouhevasti. Haasteita on myös ollut, mutta niistä lisää seuraavissa blogikirjoituksissa!





 

Ei kommentteja:

Lähetä kommentti