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!
Pyydetään vähän helppii
16
199
Vastaukset
- 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
Minkä tähden just Javalla? Nopeammin saat tuloksia kun otat aloittelijalle nopeammin omaksuttavan kielen. Jos osaat englantia? Esim alat pyörittää Object Pascalia Lazaruksella.
Tutustuppa alkuun vaikka näihin:
http://fi.wikipedia.org/wiki/Lazarus
http://www.lazarus.freepascal.org/- 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
- 904332
Onko jollakin navetassa kuolleita eläimiä
Onko totta mitä facebookissa kirjoitetaan että jonkun navetassa olisi kuolleita eläimiä? Mitä on tapahtunut?442721Minä en ala kenenkään perässä juoksemaan
Voin jopa rakastaa sinua ja kääntää silti tunteeni pois. Tunteetkin hälvenevät aikanaan, poissa silmistä poissa mielestä1132481Miksi olet riittämätön kaivatullesi?
Mistä asioista tunnet riittämättömyyden tunnetta kaipaamaasi ihmistä kohtaan? Miksi koet, että et olisi tarpeeksi hänell1082258Tiedän, että emme yritä mitään
Jos kohtaamme joskus ja tilaisuus on sopiva, voimme jutella jne. Mutta kumpikaan ei aio tehdä muuta konkreettista asian281947- 321945
Aloitetaan puhtaalta pöydältä
Mukavaa iltaa mukaville. 😊 ❤️ ⚜️ Minusta ei kaikki täällä tykkää, eikä tarvitsekaan. Kun eivät ymmärrä, niin sitten ei2111642Näin pitkästä aikaa unta sinusta
Oltiin yllättäen jossain julkisessa saunassa ja istuttiin vierekkäin, siellä oli muitakin. Pahoittelin jotain itsessäni91617- 291598
- 791426