Seuraa 
Viestejä24

Tietotekniikka tuttua pitkältä ajalta ja työskentelen "alalla". Ohjelmointi html-kieltä lukuunottamatta lähes nolla.

Jos MOOCin kursseja lähtis vääntämään iltapuhteina niin kumpi järkevämpää, Java peruskurssi vai Java olio-ohjelmointi? Molemmat aloittelijoille.

Sivut

Kommentit (22)

Sisältö jatkuu mainoksen alla
Sisältö jatkuu mainoksen alla
MooM
Seuraa 
Viestejä8558

Java ei ole javascript. Esim https://www.quora.com/What-is-the-difference-between-Java-and-JavaScript 

Java on oliokieli, tuskin sitä opetetaan ilman sitä lähtökohtaa peruskurssillakaan. Ota molemmat rinnakkain, jos aikaa on.

"MooM": Luultavasti entinen "Mummo", vahvimpien arvelujen mukaan entinen päätoimittaja, jota kolleega hesarista kuvasi "Kovan luokan feministi ja käheä äänikin". https://www.tiede.fi/keskustelu/4000675/ketju/hyvastit_ja_arvioita_nimim...

mdmx
Seuraa 
Viestejä6187

Olio suunnittelua voi opetella ilman mitään ohjelmointikieltä, vaikka piirtämällä UML kaavioita.

Jos olio-ohjelmointi ei ole ollenkaan tuttua, niin 'Java olio-ohjelmointi' voisi olla parempi.

Tai no riippuu tietysti mitä haluat tehdä, jos haluat ohjelmoida jotain pieniä kokonaisuuksia, sitten Java peruskurssi voi olla nopeampi tie. Mutta vähänkään isommissa kokonaisuuksissa kannattaa ensin opetella  olio-ohjelmointia kunnolla, niin ohjelman arkkitehtuurista tulee huomattavasti selkeämpi ja työ on mielekkäämpää.

Javalla voi (valitettavasti) ohjelmoida myös niin ettei tajua olio-ohjelmoinnista mitään, vaikka se oliokieli onkin. Aina voi tehdä vaikka tehdä yhden luokan joka tekee kaiken.

MooM
Seuraa 
Viestejä8558

mdmx kirjoitti:

Javalla voi (valitettavasti) ohjelmoida myös niin ettei tajua olio-ohjelmoinnista mitään, vaikka se oliokieli onkin. Aina voi tehdä vaikka tehdä yhden luokan joka tekee kaiken.

Tietenkin voi. mutta luuletko oikeasti, että jossain järjestetään Java-kurssi, jossa tämä on se, miten kieltä opetetaan?

"MooM": Luultavasti entinen "Mummo", vahvimpien arvelujen mukaan entinen päätoimittaja, jota kolleega hesarista kuvasi "Kovan luokan feministi ja käheä äänikin". https://www.tiede.fi/keskustelu/4000675/ketju/hyvastit_ja_arvioita_nimim...

mdmx
Seuraa 
Viestejä6187

MooM kirjoitti:
mdmx kirjoitti:

Javalla voi (valitettavasti) ohjelmoida myös niin ettei tajua olio-ohjelmoinnista mitään, vaikka se oliokieli onkin. Aina voi tehdä vaikka tehdä yhden luokan joka tekee kaiken.

Tietenkin voi. mutta luuletko oikeasti, että jossain järjestetään Java-kurssi, jossa tämä on se, miten kieltä opetetaan?

En, mutta kurssi jossa olio puoleen ei juurikaan keskitytä voidaan kyllä järjestää. Java peruskurssi tuskin menee kovin syvälle periyttämiseen, rajapintoihin, jne.

Diam
Seuraa 
Viestejä2835

Riippuu tietenkin alasta, Java on tullut lähinnä tietokantaintegroitujen nettiliittymien ohjelmointiin, kaikki eivät niitä tarvitse, vaan Lisp, Fortran ja C++. Ei ollut Javaa tuollakaan.

https://software.intel.com/en-us/qualify-for-free-software/student

http://www.uta.fi/sis/tkt/laki/ohjelmointivalineita/java_jdk.html

Mies kysyi kaiulta: Ostanko Nuhvin vai Majorin? ja kaiku vastasi: VAI MAJORIN!

mdmx
Seuraa 
Viestejä6187

Java on vähän sellainen jokapaikanhöylä, ei optimaalinen missään mutta pystyy tekemään mitä tahansa.

Suomen työmarkkinoilla Java osaamista tarvinnee lähinnä natiivien Android softien ja Google Cloud palveluiden tekemiseen.

Toki sillä voi paljon muutakin tehdä, mutta harvoin se on optimaalinen valinta. Lähes kaikki Javalla tehdyt työpöytä softat on turhan raskaita, mutta eihän sekään haittaa jos tehdään kevyt softa jota ajetaan tehokkailla tietokoneilla.

Mutta kyllähän sillä tehdään kaikenlaista, ja joskus asiakkaat haluaa jostain syystä että käytetään Javaa. Ja siellä webbi puolella se tosiaan on ollut omiaan, mutta nykyään  C# .NET webapi2 + HTML5 on niiiin paljon nopeampi ja helpompi tehdä, että itkettäis jos joutuis Javalla jotain REST apeja tekemään.

Android softatkin syntyy paremmin C++ Qt Quick2:lla ja QML:llä, joka toki vaatii Javascript osaamista. Ja pientä Java osaamista että saa tehtyä tarvittaessa natiivikutsuja.

I hate Java. :)

mdmx
Seuraa 
Viestejä6187

Veli H. kirjoitti:
Summa summarum

Kysyjän, ohjelmoinnin nollasta aloittavan kannattaa mieluummin opetella

 C# .NET webapi2 + HTML5 C++ Qt Quick2  QML JavaScript

Ei tietenkään kannata. :)

Aloittajan kannattaa....

mdmx kirjoitti:

Jos olio-ohjelmointi ei ole ollenkaan tuttua, niin 'Java olio-ohjelmointi' voisi olla parempi.

Tai no riippuu tietysti mitä haluat tehdä, jos haluat ohjelmoida jotain pieniä kokonaisuuksia, sitten Java peruskurssi voi olla nopeampi tie. Mutta vähänkään isommissa kokonaisuuksissa kannattaa ensin opetella  olio-ohjelmointia kunnolla, niin ohjelman arkkitehtuurista tulee huomattavasti selkeämpi ja työ on mielekkäämpää.

Mutta paras vastaus on kyllä, että opiskele molemmat peruskurssit.

Diam
Seuraa 
Viestejä2835

Mies kysyi kaiulta: Ostanko Nuhvin vai Majorin? ja kaiku vastasi: VAI MAJORIN!

Ab Surd Oy
Seuraa 
Viestejä11732

Veli H. kirjoitti:
Summa summarum

Kysyjän, ohjelmoinnin nollasta aloittavan kannattaa mieluummin opetella

 C# .NET webapi2 + HTML5 C++ Qt Quick2  QML JavaScript

Ei missään nimessä. Semminkin kun hän ei ilmoittanut haluavansa nimenomaan webbikoodariksi. On turhaa ja vahingollista sotkea kaikki tuo tauhka sekaisin erilaisine frameworkkeineen ja eri metatasojen kielineen. Ensin kannattaa opetella ohjelmoimaan järjestyksessä alkeista alkaen jollain ihan perusohjelmointikielellä eikä sännätä kaikenmaailman API:en ja kirjastojen ja järjestelmien kimppuun, koska siinä jää monta ratkaisevan tärkeää oivallusta saamatta ja toisaalta ehkä oppii ihan väärät tavat käyttää niitä valmismokkuloita.

Java on OK, mutta jos haluaa oikeasti oppia ohjelmoimaan ja ymmärtämään ohjelmointia, niin suosittelen perusteiden opettelemiseen C-kieltä. Siitä saa vankan kivijalan, jonka päälle on hyvä rakentaa ymmärrystä sitten noilla kehittyneemmillä jutukoilla.

MooM
Seuraa 
Viestejä8558

Ab Surd Oy kirjoitti:

Java on OK, mutta jos haluaa oikeasti oppia ohjelmoimaan ja ymmärtämään ohjelmointia, niin suosittelen perusteiden opettelemiseen C-kieltä. Siitä saa vankan kivijalan, jonka päälle on hyvä rakentaa ymmärrystä sitten noilla kehittyneemmillä jutukoilla.

:) Sä oot vaan niin vanha, että olet joutunut kahlaamaan c:n hirvitykset ja kun sen omaksuu, tulee hyvä fiilis.

Ei vaan, kyllä tuollainen lausekieli on hyvä alkukohta, mutta olioajattelukin on jossain vaiheessa tajuttava, jos aikoo laajemmin asiaa hallita. Tärkeintä on kuitenkin oppia ajattelemaan systemaattisesti ja tajuamaan, miten erilaiset ohjausrakenteet (silmukat, ehdot yms) toimivat ja mitä kannattaa käyttää mihinkin tarkoitukseen. Syntaksin oppii kyllä.

"MooM": Luultavasti entinen "Mummo", vahvimpien arvelujen mukaan entinen päätoimittaja, jota kolleega hesarista kuvasi "Kovan luokan feministi ja käheä äänikin". https://www.tiede.fi/keskustelu/4000675/ketju/hyvastit_ja_arvioita_nimim...

Hänen pyhyytensä
Seuraa 
Viestejä28239

peltj2d kirjoitti:
Tietotekniikka tuttua pitkältä ajalta ja työskentelen "alalla". Ohjelmointi html-kieltä lukuunottamatta lähes nolla.

Jos MOOCin kursseja lähtis vääntämään iltapuhteina niin kumpi järkevämpää, Java peruskurssi vai Java olio-ohjelmointi? Molemmat aloittelijoille.

Noista kurssien esittelyistä ei käy kovinkaaan seikkaperäisesti ilmi, mitä kurssit tarkalleen ottaen pitävät sisällään, mutta kaikki olio-ohjelmointikurssit, joihin itse olen törmännyt, ovat edellyttäneet, että ohjelmoinnin perusteet kuten ymmärrys operaattoreista, muuttujien tietotyypeistä, silmukoista, ehtolauseista jne. ovat sen verran tuttuja että voidaan keskittyä nimenomaan olio-ohjelmointiin eikä painia perustoimintojen opettelun parissa. Eli melkein lähtisin liikkeelle javan peruskurssista ja sitten sen suorittamisen jälkeen käivisin olio-ohjelmointikurssin. Mutta tämä on vain ennakkoluuloni siitä, mitä olio-ohjelmointikurssi edellyttää, ja ennakkoluuloni eivät oleluotettava lähde. Kurssiesittelyssä nimittäin luki että oliohjelmointikurssillakin oppisi perusteita ja koska moocin kurssit voi käydä omaan tahtiin, voisi varmaan aloittaa suoraan olio-ohjelmointikurssinkin ja vasta jos tuntuu hankalalta siirtyä sitten suorittamaan javan peruskurssia.

Jos argumentista ei voi johtaa yleistä sääntöä, sillä ei ole sisältöä.

Ab Surd Oy
Seuraa 
Viestejä11732

MooM kirjoitti:
Ab Surd Oy kirjoitti:

Java on OK, mutta jos haluaa oikeasti oppia ohjelmoimaan ja ymmärtämään ohjelmointia, niin suosittelen perusteiden opettelemiseen C-kieltä. Siitä saa vankan kivijalan, jonka päälle on hyvä rakentaa ymmärrystä sitten noilla kehittyneemmillä jutukoilla.

:) Sä oot vaan niin vanha, että olet joutunut kahlaamaan c:n hirvitykset ja kun sen omaksuu, tulee hyvä fiilis.

Ei vaan, kyllä tuollainen lausekieli on hyvä alkukohta, mutta olioajattelukin on jossain vaiheessa tajuttava, jos aikoo laajemmin asiaa hallita. Tärkeintä on kuitenkin oppia ajattelemaan systemaattisesti ja tajuamaan, miten erilaiset ohjausrakenteet (silmukat, ehdot yms) toimivat ja mitä kannattaa käyttää mihinkin tarkoitukseen. Syntaksin oppii kyllä.

Juu, oikeat työt pääasiassa tehdään muulla kuin C:llä (paitsi sulautetuissa ja käyttöjärjestelmähommissa sekä jotkin erikoisemmat jutut) ja olio-ohjelmointi on likimain välttämätöntä opetella jossain vaiheessa. C on kuitenkin erinomainen opetusväline ymmärtämään, mitenkä tietokoneet ja ohjelmointikielet pohjimmiltaan toimivat. Se auttaa paljon, kun on ensin itse koodannut ylivuotoja ja opettelee hanskaamaan muistinvaraukset sekä tekee tietorakenteita pointterilla. Nimittäin sitten kun niillä korkeamman tason oliokielillä pelaa, niin ymmärtää mitä se piilotettu mekanismi siellä alla tekee. Siinä voi olla isoja eroja muistinkäytön yms. tehokkuuden suhteen, missä ja mitenkä initialisoi vaikkapa uusia olioita tai siinä, mitä vaihtoehtoisista tietorakenneluokista käyttää ja miten. On hyvin vaikea käsittää miksi jokin olisi jossain tilanteessa tehokas ja suotuisa valinta jos ei em. perusteita ymmärrä hyvin. Sen lisäksi asiat, kuten (Javassa) carbage collection, erilaiset virhetilanteet ja muut päänvaivaa aiheuttavat jutut on helpompi hahmottaa/ymmärtää ja samalla sekin, miten niiden kanssa voi peuhata. Myös erilaiset algoritmit ja niiden tehokkuus yms. piirteet on helpointa opetella "paljaalla" ohjelmointikielellä, kuten C, ilman että siinä on yhden ainutta kätkettyä kerrosta piilokoodeineen välissä. 

Se ero on siis siinä, että Javan tyylisissä kielissä voi kirjoittaa simppelin "new Kukkaruukku;" ja kaikki toimii hienosti. Sitten kun eräänä päivänä tämän kirjoittaa sopivan silmukan sisällä, niin sovellus vetää umpijuntturaan. Ilman jollain tavoin kehitettyä ymmärrystä perusasioista pulmaa on perin vaikea ratkaista, eikä edes googletus auta. Aloittelija voi joutua hakkaamaan päätään tiiliseinään ihan suotta tämänkaltaisten juttujen vuoksi. Kieleen tai kehykseen liittyvä helpotuksen vuoksi valmiiksi rakennettu toiminnallisuus ei itsestäänslvästi aina ole optimaalista ja soveliasta kaikkeen miten vain.

C ei ole helpoin aloittelijalle siinä mielessä, että kynnys tiettyihin juttuihin voi olla helppoja oliokieliä tai tulkattavia skriptejä korkeampi ja kielen alkeellisuus/matala abstraktiotaso tuottaa taatusti paljon virheitä, debuggausta ja harmaita hiuksia - mutta niiden kautta mielestäni juuri opitaan asiat perusteellisesti ja tullaan hyväksi ohjelmoijaksi sitten myöhemmin. C:n puolesta puhuu myös speksin yksinkertaisuus. Ei tarvitse opetella laajaa kokoelmaa valmiita API-kutsuja yms vaan kaiken voi tehdä itse muutamalla kymmenellä peruskomennolla. ;)

Tämä on vähän sellainen juttu kuin että autokoulussa opetellaan ensin teoria, sitten käytetään simulaattoria ja vasta sitten lähdetään ulos liikenteeseen sekoilemaan. C palvelee teoria ja -simulointivaiheiden lailla sitä oikean ohjelmoinnin hallitsemista.

MooM
Seuraa 
Viestejä8558

Ab Surd Oy kirjoitti:

Juu, oikeat työt pääasiassa tehdään muulla kuin C:llä (paitsi sulautetuissa ja käyttöjärjestelmähommissa sekä jotkin erikoisemmat jutut) ja olio-ohjelmointi on likimain välttämätöntä opetella jossain vaiheessa. C on kuitenkin erinomainen opetusväline ymmärtämään, mitenkä tietokoneet ja ohjelmointikielet pohjimmiltaan toimivat.

Samaa mieltä. Jos se nyt kenenkään käsityksiä ohjelmointitarpeista muokkaa, niin itse olen tässä parinkymmenen työvuoden aikana käyttänyt kielistä c:tä ja Fortrania (esimmäistä muutaman eri laitteen ohjauskielenä ja Fortrania wanhan laskentakoodin muokkaukseen), tosin c:stä vain hyvin suppeaa versiota ilman mitään pointteria erikoisempaa rakennetta. Lisäksi tietyissä esityssoftissa on ollut jonkinlaista omaa skriptikoodiaan, joka on tavallaan oliomaista. Suurimman osan ohjelmoinnistani (kuvan/signaalinkäsittelyä, statistiikkaa ja näiden automatisointia isoille datamäärille) olen tehnyt Matlabilla. Mikään koodari en ole, mutta tietynlainen lukutaito asiaan on.

"MooM": Luultavasti entinen "Mummo", vahvimpien arvelujen mukaan entinen päätoimittaja, jota kolleega hesarista kuvasi "Kovan luokan feministi ja käheä äänikin". https://www.tiede.fi/keskustelu/4000675/ketju/hyvastit_ja_arvioita_nimim...

Sivut

Suosituimmat

Uusimmat

Sisältö jatkuu mainoksen alla

Uusimmat

Suosituimmat