Pyydetään vähän helppii

karttafriikki

Tarkoituksena olisi hankkia sellainen ohjelmointitaito, jolla pystyy luomaan haluamani laisen karttaselaimen.

Aikaisempaa ohjelmointiosaamista ei ole mutta pytäisin muutamaan kysymykseen vastausta tietävämmiltä:

Ajatus olisi tehdä se Javalla (itseopiskelua) ja mahdollisesti Android sekä windows -pohjille.

MIllaisia ohjelmia minun pitäisi hankkia joilla on hyvä päästä alkuun Java-opiskelussani?

Löytyykö jostain kansantajuista itseopiskelumateriaalia ja yksinkertaisia harjoituksia joilla pääsisi alkuun poeriaatteella että ensin harjoitellaan helpompia perusjuttuja?

Jos ei mielestänne ole mahdollista tällaista oppia itseopiskeluna, niin osaatteko suositella jotain esim. verkkokurssia tms. ?

Kartoista ja koordinaattiasioista minulla on kyllä paljonkin tietoa, koska olen koulutukseltani maanmittausinsinööri.


Kiitetään asiallisista vastauksista!

16

97

    Vastaukset

    Anonyymi (Kirjaudu / Rekisteröidy)
    5000
    • Java&Scala

      Helsingin yliopiston tietojenkäsittelytieteen laitoksen Olio-ohjelmointia Javalla -verkkokurssi

      Ei esitietovaatimuksia
      Kurssi vastaa Helsingin yliopiston kursseja Ohjelmoinnin perusteet ja ohjelmoinnin jatkokurssi
      Aloita viimeistään 31.12.2014

      lue tuolta lisää
      http://mooc.cs.helsinki.fi/

    • LAzaRuS
      • M=Kar

        Lelusysteemeissä ei ole mitään järkeä.


      • Heitetäänkö hatusta
        M=Kar kirjoitti:

        Lelusysteemeissä ei ole mitään järkeä.

        Kun väität jotain niin todennäköisesti väitteesi perustuu johonkin kokemukseen. Olisi siis hienoa tietää millaisia Pascal / Lazarus sovelluksia olet ohjelmoinut?


      • En ole tuo M=Kar.

        En myöskään kommentoi tuota ohjelmointikieltä, että kannattaako sen olla juuri Java vaiko joku muu. Se riippuu vaatimusmäärittelystä.

        Java kyllä on todennäköisestä ihan järkevä kieli kun se on Android API:n natiivi kieli, samalla kielellä saa tehtyä työpöytäsovelluksen sekä web servicen pitkään tuetulla alustalla, ja Java JRE on myös tunnetusti hyvin vakaa.

        Pitäisi kyllä päättää se, että tarvitseeko tässä nyt natiivia vai voiko homman tehdä kätevästi web standardeilla jolloin sovellus olisi riippumaton päätelaitteesta. Eli vaatimusmäärittelyä tarvitsisi.


      • Heitetäänkö hatusta kirjoitti:

        Kun väität jotain niin todennäköisesti väitteesi perustuu johonkin kokemukseen. Olisi siis hienoa tietää millaisia Pascal / Lazarus sovelluksia olet ohjelmoinut?

        "kun otat aloittelijalle nopeammin omaksuttavan kielen."

        No voisit itsekin laittaa jotain perusteluja tälle väitteellesi :)
        Aloittaja mainitsi myös androidin joten java olisi kyllä aika luonnollinen valinta.


    • Javaw

      Java kelpaa ihan hyvin. Tai C , ihan mikä vaan tuntuu sopivalta. Kannattaa tosin valita semmoinen johon saat sitten myöhemmin grafiikkaa, esim juuri Java tai C . Itseopiskeluun suosittelen lainaamaan kirjastosta kirjan. Ainakin Java- ja C -kirjoja löytyy ihan mukavasti. Tarvitset vain kääntäjän ja ohjelmointiympäristön.

    • mmh_aineisto_hyötykäyttö

      Jos kerran olet koulutukseltasi maanmittausinsinööri, niin voisitko ystävällisesti käydä vastaamassa tähän kysymykseen:
      http://keskustelu.suomi24.fi/node/13044639

      Kyse siis siitä, miten saisi muunnettua Maanmittaushallituksen avoimeen aineistoon kuuluvia vektorimuotoisia karttoja joko WMF tai EMF -muotoon.

      Windows -käyttöjärjestelmään ohjelmoitaessa kun nuo ovat 2 hyödyllisintä ja helppokäyttöisintä vektorikuvaformaattia.

      • Miksi ei käyttäisi SVG:tä kun siihen on tuki Windowsissa, se on standardi, siihen löytyy parhaat ohjeet ja dokumentoinnit ja toimii joka paikassa?


      • Ja mitä tulee WMF ja EMF muotoihin niin Microsoft muuten on poistamassa niitä että hullun hommaa tuollaisia muinaismuistoja on käyttää missään.


      • seis._kat
        M-Kar kirjoitti:

        Ja mitä tulee WMF ja EMF muotoihin niin Microsoft muuten on poistamassa niitä että hullun hommaa tuollaisia muinaismuistoja on käyttää missään.

        Jep minusta kannattaa suosia SVG:tä ja PNG grafiikkamuotoja


      • Windows-kehittäjä
        M-Kar kirjoitti:

        Ja mitä tulee WMF ja EMF muotoihin niin Microsoft muuten on poistamassa niitä että hullun hommaa tuollaisia muinaismuistoja on käyttää missään.

        M-Kar, miksi valehtelet päin naamaa?

        Microsoft ei ole poistamassa EMF/WMF -tukea, mitään tällaista ei ole julkisuudessa näkynyt.

        Myöskään MS:n tuesta SVG -formaatille ei ole mitään tietoa missään.

        Onko sinulla joku outo fetismi siihen, että pyrit kaikin keinoin (jopa valheilla) edistämään mitä tahansa, mihin liittyy idea avoimesta lähdekoodista ja GPL -lisenssistä?

        Tosiasia on se, että jos käyttöjärjestelmänä on Windows (ihan mikä tahansa versio PC -tietokoneilla ajettavasta windowsista), niin EMF ja WMF -formaateille on Windowsin GDI:ssä suora tuki, mutta SVG ei ole windowsin tukema tietomuoto.

        Eli Windowsissa SVG:m tukeminen luultavasti vaatisi jonkun GPL tai LGPL -lisensioidun C -koodin imurointia, muokkausta sellaiseksi, että sen saa windows DLL:ksi käännettyä. Ja lisäharmina vielä tietenkin se, että siinä missä windowsin oma API/ABI on vakaa, eli kerran julkaistua ja dokumentoitua (MSDN) Microsoft ei noin vain lähde muuttamaan tavalla joka rikkoo yhteensopivuuden vanhoihin ohjelmiin, niin avoimen lähdekoodin maailmassa tuollaiset yhteensopivuuden rikkovat muutokset ovat enemmänkin sääntö kuin poikkeus.

        Siksipä myöskin Linux Windowsin sijasta ei ole säästöä vaan lisäkustannus.

        on halvempaa maksaa Microsoftille Windows -lisenssistä, kuin ottaa ilmainen linux, ja maksaa ammattitaitoiselle koodaajalle työajasta joka kerran, kun avoimen lähdekoodin nysvääjät muuttavat jotakin tavalla joka rikkoo yhteensopivuuden.

        Windows -maailmassa tuollaisia yhteensopivuusongelmia ei ole eikä tule, Microsoft takaa sen. Windows -lisenssin hinta on tavallaan maksu siitä turvallisuudesta, ettei API/ABI -rajapintoja muuteta tavalla, joka rikkoo yhteesopivuuden.

        M-Kar voi hyvinkin olla pätevä linux -koodari, mutta Windowsissa hänellä ei selvästikään ole minkäänlaista ymmärrystä asioista.

        Pysyisit M-Kar ihan vaikkapa Yleistä Linuxista, Ubuntu, Debian, jne. -palstoilla.


      • Windows-kehittäjä kirjoitti:

        M-Kar, miksi valehtelet päin naamaa?

        Microsoft ei ole poistamassa EMF/WMF -tukea, mitään tällaista ei ole julkisuudessa näkynyt.

        Myöskään MS:n tuesta SVG -formaatille ei ole mitään tietoa missään.

        Onko sinulla joku outo fetismi siihen, että pyrit kaikin keinoin (jopa valheilla) edistämään mitä tahansa, mihin liittyy idea avoimesta lähdekoodista ja GPL -lisenssistä?

        Tosiasia on se, että jos käyttöjärjestelmänä on Windows (ihan mikä tahansa versio PC -tietokoneilla ajettavasta windowsista), niin EMF ja WMF -formaateille on Windowsin GDI:ssä suora tuki, mutta SVG ei ole windowsin tukema tietomuoto.

        Eli Windowsissa SVG:m tukeminen luultavasti vaatisi jonkun GPL tai LGPL -lisensioidun C -koodin imurointia, muokkausta sellaiseksi, että sen saa windows DLL:ksi käännettyä. Ja lisäharmina vielä tietenkin se, että siinä missä windowsin oma API/ABI on vakaa, eli kerran julkaistua ja dokumentoitua (MSDN) Microsoft ei noin vain lähde muuttamaan tavalla joka rikkoo yhteensopivuuden vanhoihin ohjelmiin, niin avoimen lähdekoodin maailmassa tuollaiset yhteensopivuuden rikkovat muutokset ovat enemmänkin sääntö kuin poikkeus.

        Siksipä myöskin Linux Windowsin sijasta ei ole säästöä vaan lisäkustannus.

        on halvempaa maksaa Microsoftille Windows -lisenssistä, kuin ottaa ilmainen linux, ja maksaa ammattitaitoiselle koodaajalle työajasta joka kerran, kun avoimen lähdekoodin nysvääjät muuttavat jotakin tavalla joka rikkoo yhteensopivuuden.

        Windows -maailmassa tuollaisia yhteensopivuusongelmia ei ole eikä tule, Microsoft takaa sen. Windows -lisenssin hinta on tavallaan maksu siitä turvallisuudesta, ettei API/ABI -rajapintoja muuteta tavalla, joka rikkoo yhteesopivuuden.

        M-Kar voi hyvinkin olla pätevä linux -koodari, mutta Windowsissa hänellä ei selvästikään ole minkäänlaista ymmärrystä asioista.

        Pysyisit M-Kar ihan vaikkapa Yleistä Linuxista, Ubuntu, Debian, jne. -palstoilla.

        "Microsoft ei ole poistamassa EMF/WMF -tukea, mitään tällaista ei ole julkisuudessa näkynyt."

        Näköjään poistettu jo:

        https://social.msdn.microsoft.com/Forums/vstudio/en-US/7010cefa-e596-45af-b193-40206451dd90/how-can-i-load-an-emf-file-into-wpf?forum=wpf

        On siis niissä antiikkisissa rajapinnoissa mutta nykyisessä .NET .4.5, WinRT jne. on tuollaiset roskat jo siivottu pois. GDI piirtää vielä niitä mutta sekin on deprekoitu:

        https://msdn.microsoft.com/en-us/library/windows/desktop/ff818516(v=vs.85).aspx#deprecated_or_legacy_apis

        "Myöskään MS:n tuesta SVG -formaatille ei ole mitään tietoa missään."

        Microsoft on tukenut SVG:tä viimeiset 4v.

        "Onko sinulla joku outo fetismi siihen, että pyrit kaikin keinoin (jopa valheilla) edistämään mitä tahansa, mihin liittyy idea avoimesta lähdekoodista ja GPL -lisenssistä?"

        Mistä revit tähän jonkun hemmetin avoimen lähdekoodin ja GPL lisenssin? SVG on STANDARDI: http://www.w3.org/TR/SVG/

        Ymmärrä mitä varten standardeja käytetään. Minusta on tosi kivaa kun voin ostaa vaikka Braunin sähköhammasharjan ja se käy tuohon sähköpistokkeeseen mikä on vessan seinässä. Ei tarvitse siis olla Braunin sähkövoimala, Braunin sähköformaatti ja töpseli.

        Eli miksi tehdä asiat typerästi kun voi tehdä järkevämmin? Melkoista typeryyttä säätää deprekoituja toimintoja.

        "Tosiasia on se, että jos käyttöjärjestelmänä on Windows (ihan mikä tahansa versio PC -tietokoneilla ajettavasta windowsista), niin EMF ja WMF -formaateille on Windowsin GDI:ssä suora tuki, mutta SVG ei ole windowsin tukema tietomuoto."

        Windows GDI ja GDI ovat deprekoituja, eli niitä poistetaan sieltä. SVG ollut IE9, IE10, IE11 ja Spartan moottoreissa ja SVG toistuu nätisti siis käyttöliittymäkomponentissa. XAML:lla ei SVG kyllä näy suoraan, mutta SVG ja XAML ovat molemmat XML:ää ja vektorityökaluilla saa vaivatta tavallisesti konvertoitua näiden välillä.

        "Siksipä myöskin Linux Windowsin sijasta ei ole säästöä vaan lisäkustannus."

        Valhe.

        "on halvempaa maksaa Microsoftille Windows -lisenssistä, kuin ottaa ilmainen linux, ja maksaa ammattitaitoiselle koodaajalle työajasta joka kerran, kun avoimen lähdekoodin nysvääjät muuttavat jotakin tavalla joka rikkoo yhteensopivuuden."

        Koodin avoimuus ei tuohon liity. Kyse on siitä rajapinnasta ja siitä järjestelmän toimittajasta millä politiikalla pitää vakaana. Ei ole mikään ongelma tehdä avoimen koodin rajapinnalle softaa jossa ABI yhteensopivuus säilyy 20v.

        "Eli Windowsissa SVG:m tukeminen luultavasti vaatisi jonkun GPL tai LGPL -lisensioidun C -koodin imurointia, muokkausta sellaiseksi, että sen saa windows DLL:ksi käännettyä."

        Ei tarvitse. Ihan heittämällä näkyy SVG kun DOM:n tunkee sen.

        "Ja lisäharmina vielä tietenkin se, että siinä missä windowsin oma API/ABI on vakaa, eli kerran julkaistua ja dokumentoitua (MSDN) Microsoft ei noin vain lähde muuttamaan tavalla joka rikkoo yhteensopivuuden vanhoihin ohjelmiin, niin avoimen lähdekoodin maailmassa tuollaiset yhteensopivuuden rikkovat muutokset ovat enemmänkin sääntö kuin poikkeus."

        Huuhaata. Koodin lisensoinnilla ei ole mitään tekemistä rajapinnan vakauden kanssa. Se on rajapintakohtaista. ABI muuten mennyt rikki Microsoftilla jokaisessa Visual C runtimessa kuin myös Visual Basicilla silloin aikoinaan, .NET 1.1 -> 2.0 rikkoi, samoin .NET 3.5 -> 4.0 rikkoi ABI:n. Microsoftilla tietokantarajapinnoissa vasta onkin ollut villiä meininkiä.

        Selvästikään sinulla ei ole mitään ymmärrystä Windows ohjelmoinnista vaan säädät deprekoitujen legacyrajapintojen kanssa.


    • Tähän on kaksi järkevää, vaihtoehtoista tapaa:

      1. Java versio

      Android SDK siihen, että teet Android sovelluksen ja sitten Java JDK kun teet siitä käännöksen pöytäkoneille/läppäreille. Sama pöytäkoneille/läppäreille tehty ohjelma toimii sitten kaikissa työpöytäympäristöissä missä on tai saa asennettua Java JRE:n.

      Java kieli on molemmissa sama mutta API on vähän erilainen. Samaa koodia voi käyttää mahdollisesti hyvinkin paljon mutta käyttöliittymäkoodiin tulee muutoksia.

      Tämä tarvinnee myös jonkun palvelimen, siitä lisää alla.

      2. Web versio

      Teet ohjelman suoraan selaintekniikalle jolloin se toimii kaikissa laitteissa. Ohjelmointikieleksi voisin suositella Typescriptiä, joka kääntyy selaimissa ja tarvittaessa myös palvelimessa toimivaksi Javascriptiksi. IDE:ksi voisi suositella tähän vaikka Eclipseä. Päätelaitepuoleksi sitten frameworkiksi vaikka AngularJS.

      Riippuu vähän sovelluksesta, että minkälainen se palvelinpuoli olisi, että kannattaako käyttää sitä Node.js:ää mikä toimii Javascriptillä vai tekeekö Javalla web servicen. WWW-palvelimeksi voisi laittaa vaikka Tomcatin. Eclipse käy edelleen IDE:ksi (Java EE).

      ....

      Tarvitset siis 1-2 ohjelmointikieltä, ja järjestelmä koostuu vähintään 1-3:sta erillisestä ohjelmasta joita olisi esim. Android käyttöliittymä, työpöytäkäyttöliittymä, web käyttöliittymä ja palvelin.

      Vähän riippuu ohjelman vaatimusmäärittelystä, että miten kannattaa homma tehdä. Kaikissa tilanteissa kannattaa rajoittaa käytetyt formaatit standardeihin tiedostomuotoihin ja sellaisiin jotka ei muodosta ylimääräisiä riippuvuuksia. Vektorimuodoissa melko varmasti kannattaa käyttää standardia SVG muotoa.

      Minä en sitten ollut se kuka tuosta Lazaruksesta kommentoi, mutta olen kuitenkin sitä mieltä että se on tässä projektissä väärä työkalu.

      • liianvaikeaa

        Ohjelmointikielissä on paljon yhteisiä piirteitä, mutta kaikissa on omat pienet omituisuutensa. Sen takia uskon, että ilman aikaisempaa kokemusta aiheesta kyseinen projekti on todella vaikeaa toteuttaa.


    • suosittelentätä

      Voit tietenkin yrittää itse opiskella, mutta siinä menisi vähintään ainakin pari vuotta intensiivistä opiskelua (päivittäistä), että pystyisit edes jollakin lailla toteuttaa visioita. Tuossa ajassa mielenkiinto voi kadota monta kertaa. Yksinkertaisilta vaikuttaviin kysymyksiinkin voi olla vaikeaa löytää netistä vastausta, jos ei tiedä tarkalleen mitä etsii.

      Tästä syystä olisi parempi yrittää etsiä sellaisia henkilöitä, joilla olisi jo jonkunlaista taustatietoa aiheesta.

    Ketjusta on poistettu 0 sääntöjenvastaista viestiä.

    Luetuimmat keskustelut

    1. Mitä hittoa tapahtuu nuorille miehillemme?

      Mikä on saanut heidän päänsä sekaisin ja kadottamaan järjellisyytensä normaalista elämästä ja ryhtymään hörhöiksi? https
      Maailman menoa
      361
      4314
    2. En sitten aio sinua odotella

      Olen ollut omasta halustani yksin, mutta jossain vaiheessa aion etsiä seuraa. Tämä on aivan naurettavaa pelleilyä. Jos e
      Ikävä
      83
      1809
    3. Martina jättää triathlonin: "Aika kääntää sivua"

      Martina kirjoittaa vapaasti natiivienkusta suomeen käännetyssä tunteikkaassa tekstissä Instassaan. Martina kertoo olevan
      Kotimaiset julkkisjuorut
      64
      1549
    4. Muistatko kun kerroin...

      että palelen..? Myös nyt on kylmä. Tahtoisin peittosi alle.
      Ikävä
      44
      1546
    5. En vain ole riittävä

      Muutenhan haluaisit minut oikeasti ja tekisit jotain sen eteen. Joo, ja kun et varmaan halua edes leikisti. Kaikki on o
      Ikävä
      29
      1370
    6. Oon pahoillani että

      Tapasit näin hyödyttömän, arvottoman, ruman ja tylsän ihmisen niinku minä :(
      Ikävä
      59
      1341
    7. Kuka sinä oikeen olet

      Joka kirjoittelet usein minun kanssa täällä? Olen tunnistanut samaksi kirjoittajaksi sinut. Miksi et anna mitään vinkkej
      Ikävä
      53
      1333
    8. Persut vajosivat pinnan alle

      Sosiaali- ja terveysministeri Kaisa Juuson (ps) tietämättömyys hallinnonalansa leikkauksista on pöyristyttänyt Suomen ka
      Maailman menoa
      205
      1325
    9. Taasko se show alkaa

      Koo osottaa taas mieltään
      Ikävä
      28
      1215
    10. Hei, vain sinä voit tehdä sen.

      Only you, can make this world seem right Only you, can make the darkness bright Only you and you alone Can make a change
      Ikävä
      8
      1208
    Aihe