Miksi käytetään montaa kieltä?

Miksi ohjelmoijan paikoissa vaaditaan usein monen kielen osaamista? Eikö riittäisi yksi standardoitu pseudokieli, jota käännettäisiin tai tulkattaisiin kaikille muille kielille?

Olen tosiaan vasta IT-alaa aloittamassa oleva opiskelija.
20899
Äänestä

Muut lukivat myös

Vastaukset 20

Vanhimmat

Ei tuollaista teknisesti kukaan toteuta.
Mutta firmassa pitäis miettiä että millä kielillä softat toteutetaan ettei kaikki softat ole tehty eri kielillä.

Tulee muuten helvetillinen ylläpito-ongelma.

Äänestä
  • Eikö tuo nimenomaan helpota ylläpidettävyyttä, jos ohjelmat ensin käännetään pseudokoodiksi, sitten editoidaan pseudoa ja lopuksi käännetään takaisin kohdekieleksi?

    Äänestä

  • 🍒🍑🍒🍑🍒🍑🍒🍑🍒

    🍑 ­N­y­m­­f­­­o­­­m­a­a­­­n­i -> https://ye.pe/finngirl21#179693051

    🔞❤️💋❤️💋❤️🔞❤️💋❤️💋❤️🔞

    Äänestä

ohjelmointikieli on työkalu jolla tehdään ohjelmointikoodia johonkin tarkoitukseen,
Tarkoituksia ja soveltamisympäristöjä on miljoonittain. Melkein loputtomiin. On ohjelmakoodauksia jotka ovat tiukkaanpakattuja. Ne on kerran luotu eikä niitä koskaan päivitetä ja availla.
Suorittavat salamannopeasti annetun tehtävän ilman että ihminen antaa näyttöpäätteeltä ohjausta. Sitten on ihmislittyväiset tehtävät. Sellaiset ylätason koodit ovat niitä joihin tulee uusia ohjelmistopäivityksiä tämän tästä. Niitä on mahdollista editoida ja laittaa väliin uusia palikoita. Käyttötarkoitus sanelee sen millä ohjelmontikielellä ohjelmat kannattaa tehdä. Uusia kieliä syntyy kun jotkut keksivät uuden paremman tavan tietynlaisten tehtävien suorittamiseen, Ohjelmoinkieliä myös kuolee kun tarve ja kysyntä loppuu. Ohjelmointikieli on työkalu. Saha, vasara, ruuvimeisseli. pensseli. Ei niitäkään voi yhdellä unuversaalityökalulla korvata.
Jokainen softatalo joutuu valitsemaan sovellusalueet joihin erikoistutaan ja valitsemaan ohjelmointikielet joilla työtä tehdään. Samoin ohjelmoijaksi haluava joutuu tekemään päätöksen mille alalle haluaa ja opettelemaan sillä alalla tarvittavat ohjelmointikielet.

Äänestä
  • "Ohjelmointikieli on työkalu. Saha, vasara, ruuvimeisseli. pensseli. Ei niitäkään voi yhdellä unuversaalityökalulla korvata. "

    Miksi ei? Onhan niitä Turing-täydellisiä kieliä. Eikös yhdellä tällaisella kielellä voi tehdä kaiken?

    Äänestä

"Olen tosiaan vasta IT-alaa aloittamassa oleva opiskelija."
Onnea matkaan. Viimeistään 30 vuoden päästä ajattelet, että olisitpa valinnut toisin.

Äänestä
  • Ei välttämättä...tosin joka ammatissa tulee hetkiä ja aikoja jolloin tekisi mieli tehdä jotain muuta.

    Äänestä

  • Anonyymi00008 kirjoitti:

    Ei välttämättä...tosin joka ammatissa tulee hetkiä ja aikoja jolloin tekisi mieli tehdä jotain muuta.

    Näinpä se on, itsellä 12v takana nykyistä hommaa ja välillä tökkii ihan kympillä, ainut on raha jonka takia tätä tulee tehtyä ja nykyisessä taloudellisessa tilanteessa toki hyvä kun on työpaikka. Edelleen toki koodaus kiinnostaisi, mutta jos löytyisi ihan jotain muuta koodailtavaa, kuin tätä iänikuista js/react/php backend, fullstack ym. ym. (ärsyttää jo nuo termit) web-hommaa.

    Esimerkkinä vaikka että olis kiva koodailla vaikka jotain Windows/Linux -sovellusta, ns. perinteisempää softaa, eikä aina tätä web-homma.

    Äänestä

  • Anonyymi00010 kirjoitti:

    Näinpä se on, itsellä 12v takana nykyistä hommaa ja välillä tökkii ihan kympillä, ainut on raha jonka takia tätä tulee tehtyä ja nykyisessä taloudellisessa tilanteessa toki hyvä kun on työpaikka. Edelleen toki koodaus kiinnostaisi, mutta jos löytyisi ihan jotain muuta koodailtavaa, kuin tätä iänikuista js/react/php backend, fullstack ym. ym. (ärsyttää jo nuo termit) web-hommaa.

    Esimerkkinä vaikka että olis kiva koodailla vaikka jotain Windows/Linux -sovellusta, ns. perinteisempää softaa, eikä aina tätä web-homma.

    Mulla on kans ruvennut tässä parin viime vuoden aikana korpeamaan nää hommat, vaikka oon koko ikäni IT-jutuista ollutkin kiinnostunut. Nyt ei vaan tosiaan taida olla oikea aika ryhtyä hommia vaihtamaan, etenkin kun tekisi mieli päästä eroon tästä legacy-ylläpitokurasta ja tehdä jotain uuttakin vaihteeksi

    Äänestä

  • Anonyymi00008 kirjoitti:

    Ei välttämättä...tosin joka ammatissa tulee hetkiä ja aikoja jolloin tekisi mieli tehdä jotain muuta.

    Mitä vanhemmaksi tulee sitä enemmän tätä tulee mietittyä. Eli onko tässä työssä mitään järkeä. Mutta toisaalta, mitä muutakaan sitä tekisi? Ja tähän ikään tultuaan sitä on oppinut, että on monia töitä, joita tekisi vielä vähemmän mieluusti. Kaikkein mieluusti olisi tekemättä töitä ollenkaan. Miksi minun asemassani olevan miehen pitää tehdä töitä, eikö tarvittava rahasumma voisi tulla tilille automaattisesti päivittäin tai edes kuukausittain https://youtu.be/M1mGUQ8DT90?t=66
    ja tämäkin sopii tähän hyvin https://www.youtube.com/watch?v=EZTJjfVqzAk

    Äänestä

  • Anonyymi00010 kirjoitti:

    Näinpä se on, itsellä 12v takana nykyistä hommaa ja välillä tökkii ihan kympillä, ainut on raha jonka takia tätä tulee tehtyä ja nykyisessä taloudellisessa tilanteessa toki hyvä kun on työpaikka. Edelleen toki koodaus kiinnostaisi, mutta jos löytyisi ihan jotain muuta koodailtavaa, kuin tätä iänikuista js/react/php backend, fullstack ym. ym. (ärsyttää jo nuo termit) web-hommaa.

    Esimerkkinä vaikka että olis kiva koodailla vaikka jotain Windows/Linux -sovellusta, ns. perinteisempää softaa, eikä aina tätä web-homma.

    "Esimerkkinä vaikka että olis kiva koodailla vaikka jotain Windows/Linux -sovellusta,"

    Voisitko koodata tällaisen linuxille:

    kirjasto ( siis linuxissa debughlp.so ) joka tarjoaisi linuxiin sitä, mitä Windowsissa on ollut jo melkein 30 vuotta:

    Näitä API -funktioita käytetään Windowsissa Debuggereiden toteutukseen (olisi kiva saada vastaavat Linuxiin):

    Funktion_Nimi Selite
    CheckRemoteDebuggerPresent Determines whether the specified process is being debugged.
    ContinueDebugEvent Enables a debugger to continue a thread that previously reported a debugging event.
    DebugActiveProcess Enables a debugger to attach to an active process and debug it.
    DebugActiveProcessStop Stops the debugger from debugging the specified process.
    DebugBreak Causes a breakpoint exception to occur in the current process.
    DebugBreakProcess Causes a breakpoint exception to occur in the specified process.
    DebugSetProcessKillOnExit Sets the action to be performed when the calling thread exits.
    FatalExit Transfers execution control to the debugger.
    FlushInstructionCache Flushes the instruction cache for the specified process.
    GetThreadContext Retrieves the context of the specified thread.
    GetThreadSelectorEntry Retrieves a descriptor table entry for the specified selector and thread.
    IsDebuggerPresent Determines whether the calling process is being debugged by a user-mode debugger.
    OutputDebugString Sends a string to the debugger for display.
    ReadProcessMemory Reads data from an area of memory in a specified process.
    SetThreadContext Sets the context for the specified thread.
    WaitForDebugEvent Waits for a debugging event to occur in a process being debugged.
    WaitForDebugEventEx Waits for a debugging event to occur in a process being debugged, and enables support for Unicode strings from OutputDebugStringW.
    Wow64GetThreadContext Retrieves the context of the specified WOW64 thread.
    Wow64GetThreadSelectorEntry Retrieves a descriptor table entry for the specified selector and WOW64 thread.
    Wow64SetThreadContext Sets the context of the specified WOW64 thread.
    WriteProcessMemory Writes data to an area of memory in a specified process.

    Nykyisinhän Linuxissa ei ole oikein muita debuggereita kuin GDB, tuo debuggerien paarialuokkaan kuuluva ohjelma, jota käytetään debuggaukseen siksi, kun muita vaihtoehtoja ei käytännössä ole.

    GDB on siis laadultaan täysi ala-arvoinen debuggeri.

    Osaisin sinänsä koodata paremman debuggerin linuxille, mutta sen toteuttamiseen tarvitsisin tuollaisen debughlp.so -kirjaston, joka exportoisi kaikki nuo Windowsista tutut aliohjelmat, joiden päälle jokainen Windowsissa toimiva debuggeri on toteutettu.

    Mielenkiintoisena yksiyiskohtana mainittakoon:

    Onhan GNU:n GDB portattu myös Windowsille, vaikka onkin alunperin Linux -ympäristöstä kotoisin.

    Väitän, että GDB:n windows -versio käyttää ainakain useimpia (ellei kaikkia) ylläolevassa listassa olevia Windows API -funktioita.

    Se, mitä GDB sitten linuxissa käyttää, kun linuxissa ei ole ko. API -funktioita, siitä minulla ei ole aavistustakaan.

    Äänestä

Ohjelmointi on aikaa vievää ja haastavaa, kielet syntyvät evoluutio maisesti vastauksena ongelmaan mitä on yritetty ratkaista. Ja ratkaistukki, Jokainen kieli on hyvinkin pesifoitunut omiin ongelmiinsa paikassa missä niitä käytetään.

Voi miettiä näinkin kuka tai mikä laitos tai instituutio tekisi tällaisen yleiskielen joka sitten kääntää itsensä aluekohtaiseksi kieleksi joka sitten siitä kone kieleksi muuntuu. Mistä se saisi rahaa kilpailemaan kaikkien muiden kielien kanssa ja kuka yllä pitäisi tällaista yleis kieltä sen kielen kirjoittajat pitää olla kaikkien kielien experttejä

Äänestä

Jos yksi pseudokieli riittäisi niin se olisi varmaan jo keksitty. Ohjelmointia on kuitenkin tehty jo 1960-luvulta lähtien.

Backend usein tehdään jollain mulla kuin frontti, ja tietokantoihin tarvitaan SQL jne. Eri vehkeisiin eri kieli.

Vaikka kieli onkin erilaista niin ohjelmoinnin periaateet on samanlaiset. Opittuaan yhden kielen ja kun osaa hyvin ohjelmoida niin uuden kielen oppii helposti.

Onneksi tulit tänne suomi24 kysymään tätä asiaa, koska täällä on paras asiantuntemus.

Äänestä

Riittää kun opettelet hyvin React/Javascriptin. Muuta et tarvitse ja minimipalkka alkaa nelosella.

Äänestä
  • Tai C++:n, sen kokeneille osaajille on aina töitä. Ongelma tietysti on, että mistä sen kokemuksen saa. No, aina ei voi voittaa

    Äänestä

Tekoäly ratkaisee tämän(kin) ongelman.

Äänestä

Ei ole koulussa tekoälystä puhuttu mitään? Eihän sun kohta tarvi varsinaisesti osata mitään kieliä. Kunhan ymmärrät miten ne toimii, miten logiikka pelaa yms. niin voit tekoälyn pistää kirjoittamaan itse koodinpätkät.

Ja kieliä nyt on monia erinäisistä syistä. Ihmetteleeköhän tulkiksi opiskelevat miksei kaikki vaan puhuis englantia niin ois paljon helpompi tulkata?

Äänestä

Kuka tahansa on vapaa tekemään universaalin pseudokielen, joka ratkaisee kaikki ongelmat. Ei sitä tarvitse täällä kysellä. Tunkkaat vaan sellaisen pystyyn niin homma on selvä. Näytät mistä kana pissii.

Äänestä
  • Valitettavasti näitä pölvästejä tuntuu riittävän, jotka pätemisen ja näyttämisen halusta aina keksivät pyörän uudelleen ja kehittävät jonkun typerän uuden kielen, joka tekee tismalleen saman kuin 100 muuta olemassa olevaa mutta eri syntaksilla.

    Äänestä

  • Anonyymi00020 kirjoitti:

    Valitettavasti näitä pölvästejä tuntuu riittävän, jotka pätemisen ja näyttämisen halusta aina keksivät pyörän uudelleen ja kehittävät jonkun typerän uuden kielen, joka tekee tismalleen saman kuin 100 muuta olemassa olevaa mutta eri syntaksilla.

    Niinpä. Jo olemassaolevilla kielillä voi tehdä kaiken jos vain taidot riittävät. Tosin niistä on kadonnut se "hype" jo kauan sitten ja sekös on joidenkin mielestä ongelmallista.

    Äänestä

Ketjusta on poistettu 1 sääntöjenvastainen viesti.

Kommentoi aloitusta


Anonyymi-ap kirjoitti:

Miksi ohjelmoijan paikoissa vaaditaan usein monen kielen osaamista? Eikö riittäisi yksi standardoitu pseudokieli, jota käännettäisiin tai tulkattaisiin kaikille muille kielille?

Olen tosiaan vasta IT-alaa aloittamassa oleva opiskelija.

Anonyymi
5000

Ilmoita asiaton sisältö

  • Sisältää materiaalia, joka on loukkaavaa, herjaavaa, rasistista, uhkailevaa tai ahdistelevaa.

  • Materiaali sisältää nimiä, yhteystietoja tai muita henkilökohtaisia tietoja. Julkisuuden henkilöistä, julkisissa viroissa toimivista ihmisistä sekä yritysten vastuuhenkilöistä saa keskustella työhön liittyen. Myös yksityiselämään liittyvistä asioista voi keskustella siltä osin, kuin niistä on julkisesti kerrottu.

  • Sisältää lapsille haitallista tai heiltä kiellettyä materiaalia. Seksuaalinen sisältö on sallittua aiheeseen tarkoitetuilla palstoilla, joiden ikäraja on 18 vuotta.

  • Lainvastaista sisältöä voi olla mm. yksityiselämää loukkaavan tiedon levitys, kiihottaminen kansanryhmää vastaan, laiton uhkaaminen, alaikäisiin liittyvä seksuaalinen sisältö/grooming, petokset, identiteettivarkaudet, kunnianloukkaukset ja tekijänoikeusrikkomukset.

  • Sisältö ei liity palstan tai keskusteluketjun aiheeseen.

  • Viesti ei ole suomea tai ruotsia (pl. International Forums), se sisältää mainontaa, se sisältää tekijänoikeuksin suojattua materiaalia, se on massapostitus tai jokin muu syy.

Jaa keskustelu