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

99

    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. Naiset miltä kiihottuminen teissä tuntuu

      Kun miehellä tulee seisokki ja ja sellainen kihmelöinti sinne niin mitä naisessa köy? :)
      Sinkut
      147
      10682
    2. Olet sä kyllä

      ihme nainen. Mikä on tuo sun viehätysvoiman salaisuus?
      Ikävä
      56
      3033
    3. Teuvo Hakkaraisesta tulee eurovaalien ääniharava

      Persuissa harmitellaan omaa tyhmyyttä
      Maailman menoa
      206
      2849
    4. Hiljaiset hyvästit?

      Vai mikä on :( oonko sanonut jotain vai mitä?
      Ikävä
      25
      2137
    5. Miksi kohtelit minua kuin tyhmää koiraa?

      Rakastin sinua mutta kohtelit huonosti. Tuntuu ala-arvoiselta. Miksi kuvittelin että joku kohtelisi minua reilusti. Hais
      Särkynyt sydän
      17
      1888
    6. Turha mun on yrittää saada yhteyttä

      Oot mikä oot ja se siitä
      Suhteet
      17
      1709
    7. Voi kun mies rapsuttaisit mua sieltä

      Saisit myös sormiisi ihanan tuoksukasta rakkauden mahlaa.👄
      Ikävä
      14
      1656
    8. Kyllä poisto toimii

      Esitin illan suussa kysymyksen, joka koska palstalla riehuvaa häirikköä ja tiedustelin, eikö sitä saa julistettua pannaa
      80 plus
      18
      1597
    9. "Joka miekkaan tarttuu, se siihen hukkuu"..

      "Joka miekkaan tarttuu, se siihen hukkuu".. Näin puhui jo aikoinaan Jeesus, kun yksi hänen opetuslapsistaan löi miekalla
      Yhteiskunta
      18
      1543
    10. 82
      1478
    Aihe