Java/Android ohjelmointi

Minulla on laaja kokemus ohjelmistosuunnittelusta monilla eri ohjelmointikielillä. Parhaiten hallitsen Java-ohjelmoinnin, jolla olen ohjelmoinut lukuisia erillaisia ohjelmia.

Java-ohjelmointi

Java ikoni DukeOlen Java-ohjelmoinnilla tehnyt sekä tavallisia Java- ja EJB- sekä Android sovelluksia käyttäen Seam- , JUnit- , Hibernate- ,  Android SDK- sovelluskehyksiä. Ohjelmointi on tapahtunut Eclipse sovelluskehitys-ympäristössä, joka toiminnot osaan hyvin. Hallitsen loistavasti Android ohjelmoinnin ja olen luonut sillä monia sovelluksia, joiden edistyneen käyttöliittymän ja projektimääritellyn tein XML-kielellä. Ymmärrän täysin Androidin aktiviteettien ja palveluiden elinkaarimalit ja toiminnan. Kokemukseni Javasta on noin 3 vuotta, josta Android ohjelmointia on ollut noin 1.5 vuotta.

Osaan käyttää seuraavia projektityöskentely työkaluja. Projektin hallinta työkalua Maven sekä EGit, Git, Mercurial ja Subversion versionhallinta työkaluja.

Kokemukseni SQL ohjelmoinnista on pääasiassa SQLite ja MySQL tietokantojen ohjelmoinnin kautta, hallitsen SQL hyvin. Osaan luoda tietokantayhteyksiä käyttäen Hibernate ja JPA sovelluskehyksiä.

Osaan kehittää ohjelman jonkin suunnittelumallin mukaiseksi ja hallitsen loistavasti sovellusarkkitehtuurin suunnittelun ja sen toteutuksen esimerkiksi Java EE periaateiden mukaisesti.Ohjelmointikehyksistä Seamia olen käyttänyt sovelluksen luomiseen. Hibernate ohjelmointikehyksellä olen toteuttanut tietokantayhteyksiä. JUnit testausohjelmistokehystä olen käyttänyt Java-ohjelmien testaamiseen. Olen käyttänyt ohjelmointikehyksiä Maven automaattisen rakennustyökalun kautta Eclipse kehitysympäristössä.

Ohjelmistokehitysympäristöistä Eclipsen hallitsen täysin. Osaan mm. käyttää sen aputoimintoja ja luoda ja ohjata Android emulaattoreita sekä syöttää tietoa emulaattoriin ja tiedän emulattorin tiedostorakenteen. Osaan kääntää ohjelman ja seurata ohjelman toimintaa vaihe vaiheelta.

Tässä on esimerkkejä tekemistäni Java-ohjelmista.

Lähdekoodeja voit nähdä tästä.

Sovellus josta voi valita näkyviin verkkosivut kuudesta eri vaihtoehdosta.

Verkkosivunvalinta

Tämä sovellus on peli jossa kaksi alusta ampuu toisiaan. Lisäksi alla on pelin toiminnasta video.

Video

Pelattava versioBoulder dash

Tein vasta XML tietontalletus-sovelluksen näytetyönä Arcusys Oy nimiselle suomalaiselle yritykselle. Ohjelmalla käsitellään asiakastietoja, jotka on talletettu XML tiedostoon. Tässä on ohjelman alkuvaatimukset. Alla on video sovelluksen toiminnasta.

Tietokanta

Olen tehnyt oman version Commotore 64 klassisesta Boulder Dash pelista. Tässä on video alkuperäisen pelin toiminnasta. Tällä hetkellä teen pelistä myös monisäikeistettyä versiota, jossa on käytetään myös eri suunnittelumalleja. Voin ehkä tehdä pelistä myös tulevaisuudessa version Android kännyköitä tai Applen kannettavia laitteita varten !!. Alla on video pelin toiminnasta ja uudesta kentästä, jonka tein.

Boulder_Dash

Uusikenttä

Android

Hallitsen loistavasti Android ohjelmoinnin ja olen luonut sillä monia sovelluksia, joiden edistyneen käyttöliittymän ja projektimääritellyn tein XML-kielellä. Minulla on syvällistä Android ikoniymmärrystä Androidin aktiviteettien ja palveluiden elinkaarimalleista ja toiminnalisuudesta. Hallitsen hyvin monia omia rajapintoja ohjelmistokehityksessä (esimerkiksi tietokantojen hallinnassa). Olen ohjelmoinut  Android Gps Mobiilisovelluksen, joka  seuraa käyttäjän sijaintia ja näyttää kuljetun reitin. Kuljettureitti voidaan tallettaa ja katsoa myöhemmin uudelleen. Maksimissaan talletuksia voi olla viisi. Tein ohjelman Eclipse sovelluskehitys-ympäristössä käyttäen Android sovelluskehystä. Alla on linkki videoon, joka esittelee GPS paikantimen toimintaa.

GPS-paikannin

Lisäsksi olen tehnyt lukuisia muita Android sovelluksia, voit nähdä ne tästä linkistä ja yhteyttä työasioissa voit ottaa tällä lomakkeella.

Tulevaisuuden tavoitteet

Tavoitteenani on hallita useampi mobiili alusta täydellisesti. Myös esimiestehtävien hallitsemisen koen haasteellisena ja tärkeänä. Jotta voisin tulla edetä tietotekniikan alalla esimerkiksi ohjelmistotiimin  johtamistehtäviin. Tulevaisuus on mobiili !