PLA-32820 Mobiiliohjelmointi

PLA-32820 Mobiiliohjelmointi
Mika Saari
[email protected]
http://www.students.tut.fi/~saari5/PLA_32820_2015/
2
1. Luento
• Suoritus vaatimukset
• Kurssin sisältö
• Kirjallisuus
• Mobiiliohjelmointi
• Mobiililaitteita...
• Web-sivustoja, Lähteitä
[email protected]
12.01.2015
3
Kurssin sisältö
1. Luento 13.1.2015 kello 8-11. Aihe: Johdantoa Mobiiliohjelmoinnin opiskeluun .
2. Luento 27.1.2015 kello 8-11. Aihe: Windows Phone ohjelmointia.
3. Luento 2.2.2015 kello 9-12. Aihe: Windows phone -ohjelmointia. Aiheet olioiden tallennus ja
käyttö
4. Luento 10.2.2015 kello 8-11. Aihe: Windows phone -ohjelmointia.
5. Luento 17.2.2015 kello 8-11.Aiheet: Taskit ja chooserit
6. Luento 10.3.2015 kello 8-11. Aihe: kameran käyttö
7. Luento 17.3.2015 kello 8-11.Aihe: Android -ohjelmointia.
8. Luento 24.3.2015 kello 8-11. Aihe: Android -ohjelmointia. Aiheet: Android -ympäristö ja työvälineet.
9. Luento 31.3.2015 kello 8-11. Aihe: Android -ohjelmointia.
10. Luento 14.4.2015 kello 8-11. Aihe: Android -ohjelmointia. Android ja tietokanta
11. Luento 21.4.2015 kello 8-11. Aihe: Android -ohjelmointia
Muita aiheita: Azure pilvipalvelut.
[email protected]
12.01.2015
4
Kurssin sisältö
Tavoitteita
• Ohjelmointia Mobiililaitteisiin
• Tutustuminen
• Koodaus
• mahdollisuudet
• Työvälineet: niiden käyttö ja
niillä ohjelmointi erilaisissa
ympäristöissä.
• Mobiiliohjelmointia
•
•
•
•
•
•
•
Windows phone
Android
(Qt ja lisäpalikat)
(Qt for Maemo)
(MeeGo)
(Symbian)
(iPhone?)
Abstrakti luento
• Luennoidaan teoriaa
• Tutkitaan esimerkkiä
• Koodataan esimerkin mukaan
tai jatkeeksi
Abstrakti harjoituskerta
• Harjoitustehtävän esittely
• Ratkaisutavasta keskustelu,
kysymykset
• Itsenäinen toteutus
• Palautus tai tuotoksen esittely
[email protected]
12.01.2015
5
Kurssin suoritus
•
•
•
•
Luennot 11 x 3h
Harjoitukset 11 x 2h
Laajuus 5 op.
Arvosana koostuu:
⁃ Palautetuista
harjoitustehtävistä (15p)
⁃ Lopuksi yksi pakollinen
laajempi harjoitustehtävä,
joka arvostellaan (15p).
Arvosana rajat:
0-14 → 0
15-17 → 1
18-20 → 2
21-23 → 3
24-26 → 4
27-30 → 5
[email protected]
12.01.2015
6
Harjoitukset
• Harjoitustehtävät ohjelmointitehtäviä.
• Kurssin webbisivulta
http://www.students.tut.fi/~saari5/PLA_32820_2015/
löytyy tehtäväkuvaukset.
• Harjoitukset palautetaan harjoitusten vetäjälle (Tai
osoitetaan muutoin tehdyiksi).
• Palautuspäivät tehtävänantojen yhteydessä
• Tehtäviä on noin 20, joista voi saada 15 pistettä.
• Harjoituksia voi tehdä harjoitustunneilla tai itsenäisesti.
(Ohjaus harjoitustuntien aikana, tai sovittuna aikana,
Ei mielellään sähköpostilla)
[email protected]
12.01.2015
7
Laajaharjoitustyö max. 15 pistettä.
• Laajan harjoitustyön tavoitteena suunnitella ja toteuttaa
itsenäisesti sovellus mobiililaitteeseen ja saada se toimimaan
mobiililaitteessa.(max. 10 pistettä)
• Ohjelmointi ympäristöt: Windows phone tai Android
• Laajan harjoitustyön aihe ilmoitettava ja hyväksytettävä 1.3
mennessä.
• Laajasta harjoitustyöstä tutoriaalin kaltainen ohjeistus
sovelluksen rakenteesta (max. 4 pistettä)
• Jokainen esittelee lyhyesti(30min) oman aiheensa, (valmiin
sovelluksen?). Esittelyt viikoilla 16 ja 17.(1 piste)
• Laajan harjoitustyön palautus 1.6 mennessä.
• Laajan harjoitustyön max. 15 pistettä.
[email protected]
12.01.2015
8
Esimerkkejä aikaisemmista:
•
•
•
•
•
Kryptomemo -Android sovellus
GymLog -Android sovellus
PalloPeli -Android sovellus
Pakkoruotsi -Android sovellus
Kalastus -Windows phone
[email protected]
12.01.2015
9
Mitä puhelimella voi tehdä?
• Peruskäyttäjä?
•
•
•
•
•
• Koodari?
•
•
•
•
[email protected]
12.01.2015
1
0
Mobiiliohjelmointi
Windows Phone 8
C#
XAML
.Net
Silverligth
(VB, C++)
Android
Java
IPhone
IOS 6
Nokia Asha
Java ME
Web app
Qt
(Symbian / MeeGo)
Qt C++
Qt Quick
QML
[email protected]
12.01.2015
Mobiiliohjelmoinnin ansaintamallit
1
1
(eli Miten kerään tolkuttoman määrän rahaa mobiiliohjelmoinnilla?)
• Kehitän KillerApp-sovelluksen ja alan myydä sitä
markkinapaikalla
• Kehitän hyvän sovelluksen – jaan sovellusta ilmaiseksi
mainoksilla – kerään mainostuloja
• Kehitän hyvän sovelluksen – jaan sovellusta ilmaiseksi –
sovelluksen lisäominaisuuksia(kenttiä, hahmoja, jne..) voi ostaa
sovelluksen sisällä.
• (Edellisten kombinaatiot)
• Menen töihin ohjelmointifirmaan tekemään yrityssovelluksia
mobiiliympäristöön
Eriympäristöt toteuttavat nämä suunnilleen samalla tavalla.
• Näitä käsitellään tarkemmin...
[email protected]
12.01.2015
1
2
Kirjallisuus
Kirjoja ohjelmointiin
● http://library.books24x7.com
● Windows Phone ohjelmointi
● http://create.msdn.com
• http://msdn.microsoft.com
● Nokian laitteiden ohjelmointi
● http://www.developer.nokia.com/
● Android ohjelmointi
● http://developer.android.com/index.html
● Qt -ohjelmointi
● http://developer.qt.nokia.com/
● IOS -ohjelmointi
• https://developer.apple.com/technologies/tools/
● Foorumit kysymyksille:
• http://stackoverflow.com/
…
●
[email protected]
12.01.2015
Mobiiliohjelmointi - Yleisesti
1
3
• Laite
• Ohjelmointikieli
• Ohjelmointityökalut
• Testausympäristö
• Tietoturva / Julkaisu / Jakelu
[email protected]
12.01.2015
1
4
Laite-esittelyä
Vanhimmasta nuorimpaan?
- Muita: Communicator, N-Gage, 6600...MeeGo
- N810
- N95
- 5800 ExpressMusic
- N900
- Samsung Google Nexus S
- Lumia 800
- Lenovo A1000
- Lumia 1520
- Lumia 520
- Nexus 7
- Nexus 9
[email protected]
12.01.2015
Ohjelmointikieliä mobiiliympäristöön
•
•
•
•
•
•
•
•
1
5
C# , C++ VisualBasic ja XAML (Windows phone 8 )
Qt C++, QML / Qt quick(Meego, Symbian)
Java (Android)
Symbian C++ (Versioita runsaasti)
Java ME (Aikaisemmin J2ME)
Objective-C, C, C++ tai JavaScript
HTML5
Muita?
[email protected]
12.01.2015
Ohjelmointityökaluja mobiiliohjelmointiin
•
•
•
•
•
•
•
1
6
Visual studio Express
Eclipse (lisäpaketeilla)
Qt Creator
Carbide C++
Blend
Xcode (Iphone)
Unity
Lisäksi tarvitaan aina sopiva SDK
[email protected]
12.01.2015
SDK – Software Development Kit
1
7
• Erilaisia vaihtoehtoja
[email protected]
12.01.2015
1
8
Testaus ympäristö
• Perus PC, jossa sopiva käyttöjärjestelmä(huom.versio)
• Windows
• Linux
• iOS
• Emulaattori tai vastaava testiympäristö
• Debuggaus
• Toimintojen emulointi(Liikeanturin liikkeen emulointi, GPS -paikka...)
• Sovelluksen testaus / debuggaus laitteessa
• Tukeeko ohjelmointiympäristö tätä?
• ...
[email protected]
12.01.2015
Tietoturva / Julkaisu / Jakelu
1
9
• Sovelluksien asennusta laitteeseen on rajoitettu
• Eri ympäristöt toimivat eritavalla
• Android helpoin?
• Symbian haastavin?
• Sovelluskehittäjä saa kehittäjäoikeudet(Rahalla?)
• Sovellukselle markkinapaikka:
• play.google.com/store/apps
• www.windowsphone.com/fi-fi/store/featured-apps
• http://www.amazon.com/mobile-apps/b?node=2350149011
•
[email protected]
12.01.2015
Virransäästö ja ohjelmointi
[email protected]
2
0
Lähde: 3T, NRO 13, 12.4.2013
12.01.2015
Virransäästö ja ohjelmointi
[email protected]
2
1
Lähde: 3T, NRO 13, 12.4.2013
12.01.2015
2
2
Yhteenveto
• Mobiiliohjelmointi on haastavaa
• Ensiviikolla Windows Phone ympäristö ja sen ohjelmointi
• Ensimmäinen harjoitustehtävä
[email protected]
12.01.2015