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

424

    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. Nainen kokki autossa kammottavan kuoleman sähköauto-Teslan syttyessä tuleen.

      https://www.is.fi/autot/art-2000011652873.html Näin vaarallisia sähköautopalot voivat olla.
      Maailman menoa
      84
      5157
    2. Persuja ei aluevaltuustoissa näy

      Ei tunnu persuja paljon paikalliset asiat kiinnostavan, vaan ainoastaan ulkomaalaiset, joku Israel ja Trumpin fanitus.
      Maailman menoa
      25
      3480
    3. Päivän Riikka: Uudenkaupungin autotehdas hiljeni

      Näin ne 100 000 uutta pysyvää ei-tempputyötä yksityiselle sektorille tämän hallituksen ansiosta syntyy. Työntekijöille j
      Maailman menoa
      38
      2828
    4. Riikka vie Suomen kohta ykköseksi työttömyyskisassa

      Espanja: 10,5 % Suomi: 10,3 % Ruotsi: 9,3 % Kisa on tiukkaa, mutta Riikalla hyvä draivi päällä. Vasemmistolaisen päämin
      Maailman menoa
      9
      1972
    5. Kerro kaivattusi nimi tai nimikirjaimet

      🌠 Tähdenlento! Kirjoittamalla kaivattusi nimen tai nimikirjaimet tähän, saattaa toiveesi toteutua.
      Ikävä
      58
      1820
    6. Miksi pitäisit enemmän

      Minusta kuin siitä toisesta?
      Ikävä
      47
      1586
    7. Alkuvuodesta poistuu työttömyyskorvaus kaikilta joilla on säästössä rahaa

      Tippuu korvaukselta iso määrä työttömiä.
      Maailman menoa
      263
      1476
    8. Mitä meidän välillä

      Tulee tapahtumaan vai tuleeko mitään?
      Ikävä
      94
      1382
    9. Tämmönen höpsö

      Höpönassu mä olen. En mikään erikoinen…hölötän välillä ihan levottomia. Tykkäisit varmasti jos olisin siellä sun vieress
      Suhteet
      44
      1356
    10. Hiljaisuus

      Tarkoittaa välinpitämättömyyttä, henkistä väkivaltaa ja kiusaamista. Olet valinnut hiljaisuuden.
      Ikävä
      73
      1078
    Aihe