Mikä ohjelmointikieli on paras?
Kommentit (165)
Vierailija kirjoitti:
Parhaasta en tiedä, hyvin tuntuu kaikilla kielillä bugeja tulevan.
Niinhän sä luulet!
Delphi = kieli, joka parhaiten tukee ohjelmoijaa tuottamaan ohjelman, jossa on tasan 0 bugia eli ohjelmointivirhettä.
Juuri tämä on Delphin paras vahvuus. Delphi tekee helpoksi tehdä bugittoman ohjelman.
Java on tosiaan yritysmaailmassa erittäin suosittu. Mutta se, että se on suosittu, ei tee siitä teknisesti hyvää.
Ja se, mitä moni pitää Javan vahvuutena (=automaattinen muistinhallinta), minä pidän sitä Javan heikkoutena. Miksikö?
SIKSI, että kun Java -ajoympäristön muistinsiivousajo käynnistyy, niin siihen hetkeen saakka kun se muistinsiivousajo on kokonaisuudessaan valmis, niin mikään muu osa JAVA -ohjelmasta ei tee mitään, vaan ne odottavat vuoroaan kunnes se muistinsiivousajo on kokonaisuudessaan valmis.
JAVAa suosivat tahot sanovat tähän: kuormantasausjärjestelmä.
Mutta: Mistä se kuormantasausjärjestelmä tietää, mikä useista rinnakkaisista tietokoneista (jossa kussakin pyörii JAVA -ohjelma) on juuri nyt suorittamassa muistinsiivousajoa, jotta se osaisi välttää tuota konetta, ja ohjata tulevat pyynnöt toiselle koneelle?
JOS vastaus on "ei se sitä mistään tiedäkään" niin ei se kuormantasausjärjestelmä auta yhtään mitään!
Ja vaikka tietäisikin (MISTÄ?) niin sekin ratkaisee ongelman vain osittain: uusi käyttäjä osattaisiin ohjata koneelle, joka ei juur nyt ole jumissa tuon muistinsiivousajon takia. Mutta käyttäjä, jonka asiat ovat kesken koneessa, joka on muistinsiivousajon takia jumissa, tätä käyttäjää edes älykäs kuormantasausjärjestelmä (joka jostain tietäisi missä koneessa/koneissa on muistinsiivousajo käynnissä) ei auttaisi.
SIKSI Delphi. Delphillä voi välttää koko ongelman. Delphi -ohjelma ei mene jumiin muistinsiivousajon takia, siinä missä JAVA -ohjelma jumiutuu.
Ikävin esimerkki JAVAlla koodatusta systeemistä joka kärsii sekä tuosta että muutenkin heikkolaatuisesta toteutuksesta on tämä:
https://www.siirretytnumerot.fi/
Silloin, kun vielä ei ollut tarjolla GSM -liittymiä, joissa olisi rajaton puhepaketti KAIKKIEN kotimaisten operaattorien liittymiin, niin tuon palvelun käyttö oli asiakkaan ainoa mahdollisuus soitella paljon ja silti estää puhelinlaskun kasvu jättimäisen kalliiksi.
Vielä n. 5-6 vuotta sitten tilanne oli se, että puhepaketit olivat joko naurettavan pieniä (esim. 250 min/kk) tai sitten ne olivat voimassa vain saman operaattorin/konsernin liittymiin, ja puhelu kilpailevan operaattorin liittymiin maksoi tyypillisesti 9 snt/min (=tunnin puhelu siis 5,40€).
Tuo siirretytnumerot.fi on toteutettu JAVAlla, ja sen toteutuksesta on vastannut Accenture Oyj.
Tuon jos olisin saanut koodata Kylixillä (=Delphin Linux -version 2000 -luvun alkupuolelta), niin palvelu olisi toiminut aina luotettavasti, ei olisi koskaan mennyt jumiin!
Jos laadulla ei ole väliä, silloin voi koodata JAVA:lla.
Laadukkaat ohjelmistot koodataan Delphillä, nykyversiot Delphistä tuottavat paitsi Windows -ohjelmia, myös ohjelmia Linuxille, Androidille sekä iPhonelle.
Suomessa vain IT -johtajat tuntuvat vihaavan Delphiä --- mutta silloin kuin tekninen laadukkuus ratkaisee, valinta on itsestäänselvästi Delphi.
Prolog
Koodasin sillä yhden esitekoälyohjelman kasarin loppuvuosina ensin hupina ja sitten sain sille asiakkaankin.
Delphi on itseasiassa sovellyskehitin ja sen käyttämä ohjelmointikieli on Object Pascal.
Vierailija kirjoitti:
Delphi on itseasiassa sovellyskehitin ja sen käyttämä ohjelmointikieli on Object Pascal.
Delphi taisi olla kuuminta uutta joskus 90-luvulla kun aloittelin ohjelmoinnin opettelua. Ja tottakai joku finanssiala jää tyylilleen uskollisena jumiin tuohon yhteen valintaan ikuisiksi ajoiksi, kuten coboliinkin.
Sanoisin että ala ja tuotettu koodi on terveempää jos ei jäädä jumiin johonkin ikivanhaan valintaan kuten nää cobol ja delphi firmat, tai toisaalta vaihda frameworkkiä 2 viikon välein kuten nää js-front/back/sideways/Ai firmat.
Vierailija kirjoitti:
C, sit C++, ja tämän jälkeen muita höpöhöpö kieliä.
Noista kieltämättä oppii eniten siitä mistä ohjelmoinnissa on kyse. Noiden jälkeen kaikki muut tuntuvat kukin tavallaan tutuilta.
Ja mihinkä tarvitset ohjelmointia? Joka aihepiiriin löytyy valmiita ohjelmia. Minulle on tuttuja valmisohjelmia mallinnukseen Ideas, ProE, Catia, SolidWorks ja Inventor. Dokumentoinnista Primas, Aton, Agile, Ematrix ja Alma. Isännöinti, tilitoimisto, kauppa, mikä vaan. Aina löytyy ohjelmia.
Vierailija kirjoitti:
Vierailija kirjoitti:
C, sit C++, ja tämän jälkeen muita höpöhöpö kieliä.
Noista kieltämättä oppii eniten siitä mistä ohjelmoinnissa on kyse. Noiden jälkeen kaikki muut tuntuvat kukin tavallaan tutuilta.
C64 assembly riittää siihen ihan hyvin. Ei tietenkään tarkoita että sitä pitäisi loppuelämä käyttää.
Harmi että Pascal on jäänyt nykymaailmassa täysin paitsioon. Se kuitenkin pakottaa tekemään kurinalaista, rakenteista koodia. Jos C.llä aloittaa, se houkuttelee tekemään dokumentoimattomia ihmetemppuja joista ei itsekään ota jälkikäteen selvää, että mitä tuossa oikein pitäisi tapahtua.
Mutta, kaiken kaikkiaan "paras" kieli määräytyy siitä, mitä sillä on tekemässä. Ja kun osaa yhden, niin toisen oppiminen on lopulta aika helppoa.
Vierailija kirjoitti:
Vierailija kirjoitti:
Vierailija kirjoitti:
C, sit C++, ja tämän jälkeen muita höpöhöpö kieliä.
Noista kieltämättä oppii eniten siitä mistä ohjelmoinnissa on kyse. Noiden jälkeen kaikki muut tuntuvat kukin tavallaan tutuilta.
C64 assembly riittää siihen ihan hyvin. Ei tietenkään tarkoita että sitä pitäisi loppuelämä käyttää.
Juu, mikä hyvänsä assembly on kyllä opettavainen. Taidan vieläkin osata suunnilleen ulkoa Z80:n käskykannan kun tuli joskus sen kanssa reistatuksi. Jos osaa c/c++:n ja osaa yhdistää siihen assemblykielisiä rutiineja, tietää kyllä jo aika lailla.
Vierailija kirjoitti:
Harmi että Pascal on jäänyt nykymaailmassa täysin paitsioon. Se kuitenkin pakottaa tekemään kurinalaista, rakenteista koodia. Jos C.llä aloittaa, se houkuttelee tekemään dokumentoimattomia ihmetemppuja joista ei itsekään ota jälkikäteen selvää, että mitä tuossa oikein pitäisi tapahtua.
Mutta, kaiken kaikkiaan "paras" kieli määräytyy siitä, mitä sillä on tekemässä. Ja kun osaa yhden, niin toisen oppiminen on lopulta aika helppoa.
Me vielä koodataan aivan uusia järjestelmiä viritetyllä Pascalilla. Sopii meidän tarkoituksiin hienosti, mutta Python-koulun käyneet junnut ei oikein arvosta.
Luin monta kertaa, että ohjelmointikikkeli ja hyvä kun en jo mennyt googlaamaan, että mikä ihme se on :D No siitä puhe mistä puute vai miten se meni
Ensin Python. Kun se hallussa, muut kielet. Nykypäivää.
Vierailija kirjoitti:
Luin monta kertaa, että ohjelmointikikkeli ja hyvä kun en jo mennyt googlaamaan, että mikä ihme se on :D No siitä puhe mistä puute vai miten se meni
Ai et tyyliin "Seppo teki tepposet ja käy tam tam..." Aika hidasta on kikkelillä koodata.
Vierailija kirjoitti:
Harmi että Pascal on jäänyt nykymaailmassa täysin paitsioon. Se kuitenkin pakottaa tekemään kurinalaista, rakenteista koodia. Jos C.llä aloittaa, se houkuttelee tekemään dokumentoimattomia ihmetemppuja joista ei itsekään ota jälkikäteen selvää, että mitä tuossa oikein pitäisi tapahtua.
C on justiinsa sen takia hyvä että se opettaa yrityksen ja erehdyksen kautta. Kun sillä voi tehdä melkein mitä vain niin muutaman erheen jälkeen on jo jonkinmoinen käsitys siitä mitä oikeasti kannattaa tehdä.
Määki väännän pyytonit pari kertaa päiväsä.
**** COMMODORE 64 BASIC V2 ****
64K RAM SYSTEM 38911 BASIC BYTES FREE
READY.
Logo.