1. Tämä sivusto käyttää evästeitä. Jatkamalla tämän sivuston käyttöä, annat suostumuksesi evästeiden käytöllemme. Lue lisää.

Symbian ohjelmointi

Keskustelu osiossa 'Matkapuhelimet', aloittaja tomsqu, 28/4/05.

  1. tomsqu

    Liittynyt:
    31/3/05
    Viestit:
    62
    Tykkäykset:
    0
    Mistä olisi hyvä aloittaa? Löytyykö netistä mitään oppaita aloittelijoille, mahdollisesti suomenkielisiä? Entä onko suomenkielisiä aiheeseen liittyviä kirjoja saatavissa jostain?
    Kyllä Lontoon kielikin kelpaa, jos selkeästi ymmärrettäviä oppaita löytyy.
    Osaan perustaidot c++:sta ja pythonia yms. on tullut kokeiltua. Nyt kiinnostaisikin, millaista ja kuinka vaikeaa tuo kännykkäsoftien tekeminen olisi. :p
    Tarvittavat työkalut on eli kääntäjä ja tietysti s60-luuri. ;)

    Jostain luin vertauksen symbian/s40/s60/uiq että mitä ne vastaa Linux-maailmassa, mutta en täysin kuitenkaan sisäistänyt asian ydintä. ;P
    Eli voiko (yksinkertainen) s60-ohjelma olla mahdollisesti yhteensopiva myös jonkun muun sovellusalustan kanssa vai onko se aina ehdoton, että ei toimi? Ja miten eri s60-versioiden ja eri symbian-versioiden välillä?

    Mikä "osuus" c++:lla on symbiania koodatessa?

    Kiitos jo etukäteen vastauksista.


    PS. *Linux-puhelinta odotellessa*
     
  2. hiphei Aktiivinen jäsen

    Liittynyt:
    24/1/04
    Viestit:
    1994
    Tykkäykset:
    0
    Suomenkielisiä Symbian-kirjoja en ole kyllä koskaan nähnyt. Se ei toki tarkoita, etteikö sellaisia voisi ollakin...

    Hankalaa ja aikaa vievää tuo ainakin on. Symbian on C++:aa, mutta ei juurikaan näytä siltä. Joudut opiskelemaan paljon uusia käsitteitä (descriptorit, CleanUpStack, 2-vaiheiset rakentimet yms.) ja kännykän rajoitetut resurssit mm. muistinhallinnan suhteen tekevät yksinkertaisestakin asiasta haastavan.

    Series 60 on paljon enemmän kuin itse pelkkä Symbian. Kaiken tarvittavan dokumentointineen saat ladattua Forum Nokia:sta. S60 on yhteensopiva vain toisten S60-puhelinten kanssa. Tietty rajoituksia tulee vastaan ominaisuuksien suhteen mitä voi koodissa käyttää (esim. onko kameraa vai ei). Nykyiset S60-versiot on periaatteessa ylöspäin yhteensopivia, mutta sekin riippuu mitä ja miten on koodannut.

    Puhtaan C++:n osuus on aika pieni Symbian-ohjelmoinnissa - kaiken joudut käytännössä tekemään Symbianin tavalla. Mutta Symbian siis on tehty C++:lla, joten perimiset, sijoitukset, funktioiden määrittelyt yms. ihan simppelijutut on toki samanlaisia.
     
  3. tomsqu

    Liittynyt:
    31/3/05
    Viestit:
    62
    Tykkäykset:
    0
    Mites noin tulevaisuutta ajatellen, mitä kannattaisi opiskella jos alkaisi? Tuleeko Series60:stä yleisin softa-alusta kännyköihin? Eikös justiinsa Symbiankin päivittynyt sillei, ettei vanhat binäärit enää toimikaan siinä? eeHuoh..

    Itse lähtisin ehkä kehittämään kännykkää vielä enemmän tietokonemaiseksi, että olisi jonkinlainen BIOS, joka käynnistäisi varsinaisen käyttöjärjestelmän ja käyttiksen seotessa sen pystyisi kotikonstein asentamaan uudestaan / "resetoimaan". Eli huollossa käyttämisen tarvetta pitäisi ennalta ehkäistä. Myös uudet softat pitäisi saada päivitettyä kotikonstein tai automaattisesti verkon kautta (mitä onkin suunniteltu).

    Myöskään eri käyttisvaihtoehdot ei kuulostaisi ihan järjettömältä, mikäli valmistajien omat softat jatkavat samaa keskeneräisenä-myyntiin-linjaa. Toisaalta, Macintoshit ovat osoittaneet, että laitteiston ja ohjelmiston yhdessä kehittäminen takaa vakaamman ja toimivamman lopputuloksen.
    Ja kännyköissä pitää noudattaa tiettyjä standardeja (esim. GSM), joten tee-se-itse ratkaisut eivät välttämättä olisi kovin sallittuja ja turvallisia.

    Kaipaisin vielä joitain hyviä linkkejä... jos olis vaikka hyvin yksinkertaisia ohjelmia lähdekoodineen saatavilla niin niitä voisi tutkailla. :)
     
  4. MaTiAz Aktiivinen jäsen

    Liittynyt:
    26/11/04
    Viestit:
    2924
    Tykkäykset:
    0
    Ite sain tapella hemmetin kauan symbianin kehitysympäristön kanssa, joten en sitten päättänyt koodata sillä. Päätin hakea AppForge MobileVB:n kokeiluversion ja koodata VB:llä, tosin aika rajoittuneesti. Tosin nyt on alla n-gagen tilalla motorola MPx200 kräkätyllä windows mobile 2003-softalla ;) joten .NET-kehitysympäristössä softia on paljon helpompi tehdä. Kannattaa softan koodaaminen symbianille alottaa täältä
    Tosin se motorola maksaa postikuluineen saksasta 150e (tai vähän päälle) nii kannattaa sitäki harkita jos on vähän ylimäärästä rahaa polttelemassa taskunpohjia ;), se on mahtava laite niin halvalla hinnalla.
    .NET-kehitysympäristössä on kyl ihan kiva kirjotella ohjelmia, tosin WM2003:lle pitää olla eMbedded C++.

    Tässä sitten kirjottelin omakohtasia kokemuksia kännyohjelmoinnista ;)
     
  5. tomsqu

    Liittynyt:
    31/3/05
    Viestit:
    62
    Tykkäykset:
    0
    Ok, täytyy alkaa tutkaileen noita forum.nokia-sivuja. :p

    Voipi olla. Mutta siinä on Microsoftin käyttöjärjestelmä! Semmosta paskaa en ala tukemaan, en rahallisesti, en ohjelmoimalla. :D
     
  6. MaTiAz Aktiivinen jäsen

    Liittynyt:
    26/11/04
    Viestit:
    2924
    Tykkäykset:
    0
    :DD
    No ei se MS:n paska oo niin hirvee, voin sanoa Symbiania ja WM:ää käyttäneenä.
     
  7. tomsqu

    Liittynyt:
    31/3/05
    Viestit:
    62
    Tykkäykset:
    0
    Juu, mutta se on periaatekysymys. ;)
    Kun tietää millä tyylillä Microsoft "huolehtii" asiakkaistaan PC-puolella niin voi vain arvailla, minkälainen soppa siitä syntyisi, jos M$ saisi monopoliaseman myös kännykkä-OS:ien tekijänä. :|

    E: Näyttäisi aika haastavalta tuo Symbian-ohjelmointi. HelloWorld-ohjelmastakin tulee yllättävän pitkä. :/ Javallakin saisi jotain aikaseksi, mutta oikeastaan tarkoitukseni ei ole päästä tekeen joitain tarvitsemiani ohjelmia, vaan noin yleisesti opiskella kännykän ohjelmointia. Pitäisi kyllä osata enemmän ihan ohjelmoinnin peruskäsitteitä vaikkapa C++:ssa, vaikkei sen osaaminen ilmeisesti paljoa auta Symbiania koodatessa. :eek:
     
  8. MaTiAz Aktiivinen jäsen

    Liittynyt:
    26/11/04
    Viestit:
    2924
    Tykkäykset:
    0
    Niinpä. Ite oon unohtanu mun alkeelliset C++-taidot VB:llä leikkiessäni. Symbianissa suuri osa koodista keskittyy pelkän käyttöliittymän rakentamiseen, VB.NETissä WM:lle käyttöliittymä rakennetaan yksinkertasesti lätkimällä kontrolleja ja kirjoittamalla mitä mikäkin kontrolli tekee. Ite oon kyllä warettanu mun kännykän käyttiksen ;) kyllä mielummin maksan käyttiksestä symbianille kuin MS:lle. Mut jos aikomus on koodailla RAD-kielillä (C#, VB.NET) niin WM on parempi valinta. Tosin symbianilla ohjelman levinneisyys on parempi ;)
     
  9. tomsqu

    Liittynyt:
    31/3/05
    Viestit:
    62
    Tykkäykset:
    0
    Eli siis...? Pystyykö sen päivittään vai? Ja mikä käyttis siinä nyt siis on. :D

    Ei ole aikomusta. Jep jep.


    Sitten vielä kyssäri, että millä lisenssillä Symbian on siis tehty? Onko siitä lähdekoodia jaossa? :)

    Jos osaisin tehdä edes jotain pikkuohjelmia niin laittaisin ne kyllä vapaasti jakoon lähdekoodeineen päivineen. Hämmästyin suorastaan, kun olin kuullut, että s60-laitteille on saatavilla netistä paljon ohjelmia, mutta ne olivatkin suurimmaksi osaksi maksullisia! En oo ollenkaan tottunu tällaseen PC:n ja Linuxin kanssa. ;)
     
  10. MaTiAz Aktiivinen jäsen

    Liittynyt:
    26/11/04
    Viestit:
    2924
    Tykkäykset:
    0
    Mulla on nyt tässä mun motorolassa kräkätty Windows Mobile 2003, flashatty kotikonstein 2002:n päälle ;) Niin eli sen pystyy päivittämään.
    Olen itsekin huomannut sen, että symbianilla on hemmetin paljon maksullisia ohjelmia. Tosin WM:llä oon törmänny maksullisiin ohjelmiin vain handangossa, eikä sielläkään kaikki ohjelmat ole maksullisia.
    Ja symbianin lähdekoodia ei ole jaossa, tietääkseni se ei siis ole GPL-lisenssin alainen. Ja WM poikkeaa PC-windowsista parhaiten sillä tavalla, ettei sille ole viruksia ;) paitsi PocketPC-laitteille on yks, mut sekin on harmiton ja vaatii käyttäjän luvan leviämiselle :) symbianille taas on aika monta, varmaan pahimpana Skulls, joka "tuhoaa" käyttiksen.
     
  11. Zache

    Liittynyt:
    12/12/02
    Viestit:
    540
    Tykkäykset:
    0
    Symbian on closed source niin puhtaasti kuin mitä voi vaan olla, mutta ilmaisia kehitystyökaluja saa ladattua yleensä puhelinvalmistajien sivuilta tai symbian.com:sta ja ainakin toistaiseksi on mahdollista kehittää ilmaiseksi softaa, tiedä sitten miten symbian 9 muutttaa tuota käytäntöä esim nokian kohdalla.

    Suurin levinneisyys on series60 laitteilla ja ne on myös halvimpia joten varmaan niille koodaaminen hyödyllisintä, tietysti uiq tai communicator laitteille on mahdollista tehdä siistimpiä juttuja kuin s60:lle, kun ovat yleensä laitteina monipuolisempia.

    esimerkkikoodia ja ohjeita voi etsiä vaikka tuolta
    http://www.newlc.com
    http://symbianos.org/
    http://www.symbian.com/
    http://www.yipton.demon.co.uk/
    http://www.cs.helsinki.fi/u/mraento/symbian/

    Tuolta voi puolestaan lukea avautumista kun koodaus vituttaa
    http://symbiatch.jutut.fi/

    Tuolta löytyy varmaan kattavin hakemisto symbian softista... tosin ei ole eroteltu ihmeemmin mitkä on maksullisia tai mitkä ei... yleensä ne missä lukee pelkästään free to try on ilmaisia ja ne missä on myös mahdollisuus ostaa on maksullisia. Siellä on muuten oma kategoria open sourcelle eli lähdekoodit löytyy myös..

    http://my-symbian.com/

    -----------

    Elikäs symbian vs pocketpc

    Symbian (+laitteet)
    + nykyään jo ihan kivasti dokumentaatiota ja esimerkkikoodia
    + halpoja laitteita
    + paljon paremmat puhelin yms rajapinnat
    + paljon pidempi akkukesto
    + loppujen lopuksi kohtuu täysjärkinen koodata c++:lla
    - yhteensopimattomuus eri laiteversioiden välillä
    - rad kielet on yleensä tuskasen raskaita (vb, java jne)
    - tuskasen closed ja keinotekoisesti estetään juttuja kaupallisista syistä
    - vanhojen laitteiden tuki unohdetaan mahdollisimman nopeasti kun ne on myyty

    Pocket PC
    + rad kielet
    + paljon tehokkaampi rauta
    + wlan
    + mahdollisuus päivittää linuxiin (joka tosin ei toimi kovinkaan kummoisesti)
    - rad kielet jotka bugittaa :)
    - myös suljettu rauta ja käyttis, tosin mitään ei aktiivisesti estetä tekemästä ja yleensä vanhan laitteen softat voi päivittää uudempaan
     
  12. MaTiAz Aktiivinen jäsen

    Liittynyt:
    26/11/04
    Viestit:
    2924
    Tykkäykset:
    0
    Itekin oon törmänny tohon "esimerkit ei käänny"-ongelmaan ja muihinkin inhottaviin juttuihin. Itsekin toivon että MS:n WM-puhelimet löisivät itsensä läpi, vaikka ovatkin MS:n tekeleitä. Sain tapella tuntikausia kehitysympäristön kanssa jotta saisin edes esimerkit käännettyä.Turha toivo. Piti asentaa 3 kertaa SDK:t uusiksi ja Perlikin piti tunkea koneelle. Sain melkein käännettyä jonkin ohjelman, mutta se tyssäsi perlin yhteistyöhaluttomuuteen. Päätin sitten yömyöhään tyytyä AppForgen mobileVB:hen. Sillä sentään sain softaa tehtyä. Nyt .NETin avustamana koodailu on suorastaan nautintoa verrattuna symbianin epämääräisiin dokumentaatioihin, SDK:ihin jne. http://symbiatch.jutut.fi/?id=51 ;)
     
  13. tomsqu

    Liittynyt:
    31/3/05
    Viestit:
    62
    Tykkäykset:
    0
    Kiitos linkeistä ja kommenteista. :)

    Eikös se ole vähän niin, että ohjelmoinnin kuuluukin olla vaikeata? ;)
    Sen verran on noista Microsoftin ohjelmointityökaluista kokemusta, että 9-vuotiaana naperona tuli väsättyä Visual Basicilla semmonen Kivi, paperi ja sakset -peli ja se oli vieläpä hieno. :D
    Eli todellakaan ei ollut vaikeata, tavallaan vähän liiankin helpoksi menee homma, on se k00daus kuitenkin aina ollut niiden nörttien hommaa, ei tavallisten käyttäjien. :p
    Toki jos osaa hommansa ja silti kääntäjät yms. hyppii silmille niin sitten on vika jossain muualla kuin tuolin ja pöydän välissä.

    Mutta vaikka Symbianille koodaus olisi kuinka vaikeata tai veemäistä niin en ikimaailmassa toivoisi, että joku Windows Mobile tulis yleisimmäks käyttikseks kännyköihin. ;)
    Voihan se olla, että aluks Microsoft nuoleskelee ja tekee asiat jopa toimiviksi, mutta kun luottamus saavutetaan niin sitten ei olekaan enää millään mitään väliä.. paitsi tietysti kaikki M$:n softia warettavat saavat viettää loppuelämänsä linnassa ja rehellisten kuluttajien säästöpossu ryövätään viimeistä penniä myöten.
    <OFFTOPIC>
    Tästä hyvä esimerkki, kun isä oli normaaliin tapaansa lähettämässä sähköpostia koneelta Outlookilla, oli kirjottanut pitkän viestin ja sitten painoi Lähetä-nappulaa. Outlook ilahdutti viestillä: "Käyttöoikeutesi eivät riitä tämän toiminnon suorittamiseen." Minä tietysti repesin nauruun siinä samassa, kun isä kirosi, että "Saamari, sää oot taas sotkenu tän jotenkin.." :D
    </OFFTOPIC>

    Kyllä se on se Linux (tai sanotaanko *nix), mihin saisivat kaikki siirtyä... =)
     
  14. MaTiAz Aktiivinen jäsen

    Liittynyt:
    26/11/04
    Viestit:
    2924
    Tykkäykset:
    0
    Mäkin väsäilin 9-vuotiaana VB:llä kaikenlaista. Nyt oon 13v ;) mut sen koodailun ei tartte olla NIIN vaikeeta, et niitä esimerkkejäkään ei saa käännetyks. Mjoo mut nyt en ylistä WM:lle koodauksen helppoutta, vaan meen kouluun. Moro!
     
  15. tomsqu

    Liittynyt:
    31/3/05
    Viestit:
    62
    Tykkäykset:
    0
    <OT>
    Ohhoh, oikee pikku MS-hakkeri. :D
    Kyllä mäkin vielä tuossa iässä ylistin Windows XP:tä verraten aikaisempien WIndowsien kaatuiluun, vaan nyt on ääni muuttunut kellossa. ;) Näin 16-vuotiaana on kertynyt parisen vuotta kokemuksia tuosta Windowsin pahimmasta kilpailijasta ja kyllä se on se "freedom" mikä siinä viehättää.
    </OT>

    Ainiin, tämä olikin kännykkäfoorumi. =)
    Juu, olet oikeassa. Välillä tosin huomaa sellaista, että kokeillaan jotain ja jos ei heti toimi niin kokeillaan jotain muuta ja kas kummaa, sattumalta se vaihtoehto lähtikin toimiin "pienemmällä vaivalla". Mutta en epäile yhtään, kyllähän näissä ongelmia piisaa. Ja "yllätys", ettei ole Symbian-kääntäjiä Linuxille. Ei sikäli, ei varmasti kyllä WM-kehitystyökaluitakaan. :D

    Ja mikä ihme älynväläys Symbian-kehittäjiltäkin oli matkia Microsoftia käyttämällä levyasematunnuksia C:\ D:\ ... =S

    Mutta hei. Elämä on.
     
  16. MaTiAz Aktiivinen jäsen

    Liittynyt:
    26/11/04
    Viestit:
    2924
    Tykkäykset:
    0
    Joo nii on ;) tosin onhan motorolaltakin tulossa linuxpuhelin... jos sen sais jossain vaiheessa smaan hintaan ku tän mun nykysen (150e) nii vois sitäkin koittaa.... Itelläkin on vähän kokemusta linuxista, SuSE:a kun käytin. Tosin äiti ja iskä ilkeästi heitti vanhan koneen johon pistin sen linukan kaatopaikalle ;( eikä mulla ole omaa konetta johon saisin asentaa linuxin (no okei, tää nykynen on melkeen mun oma, mä en vaan saa vaihtaa käyttistä). Ja toisaalta mä taidan ylistää Win2k:ta verraten XP:n kaatuiluun :D (XP kaatui VMwarella 2k:ta pyöritettäessä :D tosin jostain kumman syystä VMware jatkoi iloisesti toimintaansa xD)

    Tosin voishan jostain ettii vanhan iPaqin ja asentaa siihen linukan :)

    Mjoo mut nyt siihen koodailuun, nii ei ole ollenkaan ihme ettei symbian-kääntäjii oo linukalle. Tosin itekin oon ihmetelly miks symbianissa on nää asematunnukset. WM:ssä ne on Storage Card\ IPSM\ Temp\ Windows\ ja 2003:ssa ne on Mounted Volume\ Storage\ profiles\ temp\ ja Windows\ eli tavallisia asematunnuksia ei käytetty :)
     
  17. tomsqu

    Liittynyt:
    31/3/05
    Viestit:
    62
    Tykkäykset:
    0
    Onhan Motorolalta tullut jo useampiakin Linux-puhelimia, mutta ei oo Suomeen tuotu. Ja maksanu yli 500e kaikki. :/

    Ihme pullamössöporukkaa. :D Mä oon ollu aina se joka hoitaa meillä nää atk-asiat, adsl-motukat yms. on ollu ihan mun hallinnassa ja jos haluan Linuxin kovolle niin mä laitan enkä kysele. (Joskus joutuu ottamaan myös riskejä, esim. kerran oli kaikki digikuvat varmuuskopioimattomana ja aloin asentaan Gentoota, tein sitte osioinnit, mutta onneks en sählänny, vaan säily vanhat osiot paikallaan jne. ;P) Tosin nykyään on ihan oma kone, jolla voi tehdä mitä lystää. :)

    Oho! Eipä olis Microsoftilta uskonu. :D Kun noissahan on Internet Explorer, MSN Messenger yms. vastaavat softat ku Windowseissa ni miks muuttaa kaikille tuttua asematunnusmenettelyä?
     
  18. MaTiAz Aktiivinen jäsen

    Liittynyt:
    26/11/04
    Viestit:
    2924
    Tykkäykset:
    0
    Eipä voi tietää, mutta IMO PIE(Pocket IE) toimii paljon paremmin kuin symbianin vastaava. Ainakin sen perusteella mitä olen 3650:lla ja N-Gagella kokenut.
     
  19. hiphei Aktiivinen jäsen

    Liittynyt:
    24/1/04
    Viestit:
    1994
    Tykkäykset:
    0
    Noi levyasematunnukset on kyllä peräisin CP/M:stä, jonka DOS kopioi.
    Mutta luultavammin ne Symbianissa käytössä, koska sitä softaa kehitysvaiheessa emuloidaan Windowsissa, jolloin on helpompaa että DLL:t ja muut filet löytyvät samalla lailla molemmissa ympäristöissä.
     
  20. MaTiAz Aktiivinen jäsen

    Liittynyt:
    26/11/04
    Viestit:
    2924
    Tykkäykset:
    0
    Toimiihan WM-emulaattorikin ihan hyvin ilman normaaleja levyasematunnuksia. Symbian-emulaattoreissa kansiot vastaavat niitä levyasemia nii on helpompi periaattessa kikkailla.
     

Jaa tämä viestiketju