Monday, March 23, 2015

MIT App Inventor - sissejuhatus

MIT App Inventor on keskkond, kus on võimalik teha nutiseadmetele äppe ning neid samas ka testida.

http://appinventor.mit.edu/explore/

Keskkonda saab kasutada Google kontoga (Viimsi Kooli õpilaste e-post või gmail.com lõpuga meiliaadress). NB! Kellel ei ole Google kontot, siis küsige selle tegemiseks abi õpetajalt!

Keskonna tutvustus ja tööleht: http://www.progetiiger.ee/content/1-sissejuhatus

Ülesanne 1
Loo äpp, mis vastamise nupule vajutades kuvaks kasutajale erinevaid vastuseid (vt Progetiigri materjali linki ülalpool).
Täiusta oma äppi nii, et nupule vajutamisel mängitakse helinat ja vastus kuvatakse telefoni raputamise peale.

NB! Äppi saad katsetada oma nutiseadmes. Selleks klõpsa menüüribal sõna "Build" ja vali loetelust "App (provide QR code for .apk)".

Nüüd kuvatakse mõne aja pärast arvuti ekraanile QR kood, mida telefoniga lugedes saate käivitada rakenduse allalaadimise.

Oma seadmes pead selle rakenduse installimiseks lubama installimise tundmatutest allikatest pärit rakendustele - selle võite nutiseadme seadete alt korraks sisse lülitada ja siis tunni lõpus panna peale jälle piirangu, et see poleks lubatud (telefoni turvalisuse huvides).

Monday, March 2, 2015

Objektid ja meetodid Javascriptis

Codecombati mängu mängides puutusid kokku sellega, et tegelase liigutamiseks pidid kasutama süntaksit this.moveRight(); või this.attack(enemy); selles mängus on tegelased kirjeldatud objektidena ning neile saab mängu käigus lisada uusi omadusi ja funktsioone.

Objekte kasutataksegi Javascriptis selleks, et andmeid organiseerida. Objektiks sisuks olevad omadused võivad muutuda (nii nagu mängus saab tegelane järjest tugevamaks). 

Objekti defineerimisel on üheks võimaluseks panna objekti omadused loogeliste sulgude vahele

var objektinimi = {};

var mina = {
  nimi: "Minu Nimi",
  vanus: 10
};

Teine võimalus on kõigepealt defineerida tühi objekt (new Object();) ja siis täida see sisuga.

var mina = new Object();
mina.nimi = "Minu Nimi";
mina.vanus = 10;


Meetodid

Meetodid on objektiga seotud funktsioonid. Neid saab kasutada objekti omaduste väärtuste muutmiseks (näiteks uus vanus) ja objekti omaduste põhjal arvutuste tegemiseks.

Meetod muudab ära kasutaja vanuse:
mina.muudaVanus = function (uusVanus){
  mina.vanus = uusVanus;
};
Meetod arvutab vanuse järgi inimese sünniaasta:
mina.leiaSynniAasta = function () {
  return 2014 - mina.vanus;
};
console.log(mina.leiaSynniAasta());

Võtmesõna this 
toimib kohatäitjana ja viitab meetodi kasutamisel meetodi välja kutsunud objektile.