C++ Onko helppoa?

Sain MS.in Visual C 6 Trainer Kit kirjan, kysynkin jos ohjelmointia alkaa harjoittamaan onko C hyvä kieli vasta-alkajalle?
Olen pelehtinyt tietokoneiden kanssa paljonkin mutta ohjelmointi on jäänyt vähälle, kiinnostus heräsi kun sain kirjan käsiini mutta menenkö "heikoille jäille" jos sitä alan opettelemaan? Kirjassa lukee että se käy vasta-alkajalle kuin myös ammattilaisille.
362382
Äänestä

Muut lukivat myös

Vastaukset 36

Vanhimmat

Itse aloitin ohjelmoinnin Delphillä(eli object pascal kielellä). Siirryin sitten C kieleen ja osaan sitä nyt paremmin ensiksi mainittua.

C kieli on hyvä valinta aloittelijalle, se ei ole yhtä helppo kuin object pascal(Delphi) mutta kirjallisuutta(aloittelijoille) ja esimerkkejä löytyy suomeksikin paljon enemmän.

C kieltä sinun ei taas kannata opetella vaan siirry suoraan C :ssaan.

Äänestä
  • > C kieltä sinun ei taas kannata opetella vaan siirry suoraan C :ssaan

    te nykyajan pellet ette tajua mitään c:stä. koko cplusplus on helpoin tapa ampua itseään jalkaan. suosittelisin pitämään suun kiinni, jos ei asiantuntemus riitä. en ole monesta lapsesta kuullut, joka opetteli juoksemaan ennen kävelemistä.

    Äänestä

  • jaahas kirjoitti:

    > C kieltä sinun ei taas kannata opetella vaan siirry suoraan C :ssaan

    te nykyajan pellet ette tajua mitään c:stä. koko cplusplus on helpoin tapa ampua itseään jalkaan. suosittelisin pitämään suun kiinni, jos ei asiantuntemus riitä. en ole monesta lapsesta kuullut, joka opetteli juoksemaan ennen kävelemistä.

    Siis nykyisinhän ei enää tehdä C:llä kuin "vanhaa" softaa, muu tehdään C :lla tai muilla uudemmilla kielillä. Miksi siis opetella kävelemään, JOS voi oppia suoraan juoksemaan? Silti kannatan ohjelmoinnin opettelemista C:llä (itsekin siitä aloitin), sillä C:n avulla oppii ohjelmoinnin perusteet paremmin kuin plussalla. Kun ohjelmoinnin "punainen lanka" on hallinnassa, voi kohtuullisella vaivannäöllä oppia minkä kielen tahansa. Jos taas tuo lanka on kateissa, on ihan sama, millä kielellä yrittää soheltaa.

    Äänestä

  • Saija kirjoitti:

    Siis nykyisinhän ei enää tehdä C:llä kuin "vanhaa" softaa, muu tehdään C :lla tai muilla uudemmilla kielillä. Miksi siis opetella kävelemään, JOS voi oppia suoraan juoksemaan? Silti kannatan ohjelmoinnin opettelemista C:llä (itsekin siitä aloitin), sillä C:n avulla oppii ohjelmoinnin perusteet paremmin kuin plussalla. Kun ohjelmoinnin "punainen lanka" on hallinnassa, voi kohtuullisella vaivannäöllä oppia minkä kielen tahansa. Jos taas tuo lanka on kateissa, on ihan sama, millä kielellä yrittää soheltaa.

    C:n opetellu ei todellakaan ole pakollista. Ainakin itse näen asian niin että nykyaikana ei kannata opetella oikeastaan mitään muita ohjelmointi kieliä kuin olio kieliä.

    Oliot niinsanotusti HIP ja POP.

    C on aivan loistava kieli alkaa ohjelmoimaan. Oikeastaan mikä tahansa ohjelmointi kieli on. Assembler ei ehkä mutta muut kuitenkin =)

    Äänestä

  • Saija kirjoitti:

    Siis nykyisinhän ei enää tehdä C:llä kuin "vanhaa" softaa, muu tehdään C :lla tai muilla uudemmilla kielillä. Miksi siis opetella kävelemään, JOS voi oppia suoraan juoksemaan? Silti kannatan ohjelmoinnin opettelemista C:llä (itsekin siitä aloitin), sillä C:n avulla oppii ohjelmoinnin perusteet paremmin kuin plussalla. Kun ohjelmoinnin "punainen lanka" on hallinnassa, voi kohtuullisella vaivannäöllä oppia minkä kielen tahansa. Jos taas tuo lanka on kateissa, on ihan sama, millä kielellä yrittää soheltaa.

    Kyllä se C :kin on jo vanhaa, tosin rutiinin ja ohjelmoinnin logiikan eli "punaisen langan" (esim. oliot) siinä oppii hyvin.
    Huomisen ohjelmat tehdääc C 'Sharpilla' eli C#:lla. Joten jos vain kiinnostusta ohjelmointiin riittää niin C# kannattaisi siirtyä mahdollisimman pian. Tosin C on kyllä vielä pitkään käytössä, mutta C#:ssa on uusia ominaisuuksia jotka helpottavat elämää kummasti (lähinnä internetin yhdistäminen ohjelmiin).
    Eli kaikkea ei enää tarvitse itse "koodata" vaan suurin osa toiminnoista on "raaha ja pudota" periaatteella toteutettuna (Drag & Drop).
    .Netin ominaisuuksista mielenkiintoisin on tuo että ohjelmat ei käännetä enää ajettavaan .exe binääriin vaan välivaiheeseen joka ajetaan aina tulkin lävitse, joka mahdollistaa jokaiselle ohjelmalle tehtävät oikeusmääritykset sekä laitteisto/alusta vapauden, kunhan .NET tulkkilöytyy koneesta (Win xp:ssä mukana, muihin ~11MB asennus paketti).

    .NET kutsuu ;)

    Äänestä

  • Jukka kirjoitti:

    Kyllä se C :kin on jo vanhaa, tosin rutiinin ja ohjelmoinnin logiikan eli "punaisen langan" (esim. oliot) siinä oppii hyvin.
    Huomisen ohjelmat tehdääc C 'Sharpilla' eli C#:lla. Joten jos vain kiinnostusta ohjelmointiin riittää niin C# kannattaisi siirtyä mahdollisimman pian. Tosin C on kyllä vielä pitkään käytössä, mutta C#:ssa on uusia ominaisuuksia jotka helpottavat elämää kummasti (lähinnä internetin yhdistäminen ohjelmiin).
    Eli kaikkea ei enää tarvitse itse "koodata" vaan suurin osa toiminnoista on "raaha ja pudota" periaatteella toteutettuna (Drag & Drop).
    .Netin ominaisuuksista mielenkiintoisin on tuo että ohjelmat ei käännetä enää ajettavaan .exe binääriin vaan välivaiheeseen joka ajetaan aina tulkin lävitse, joka mahdollistaa jokaiselle ohjelmalle tehtävät oikeusmääritykset sekä laitteisto/alusta vapauden, kunhan .NET tulkkilöytyy koneesta (Win xp:ssä mukana, muihin ~11MB asennus paketti).

    .NET kutsuu ;)

    Jukka, unohdit mainita, että kirjoituksesi on mainos. Merkintä pitää olla aina, että tekstin lukijat osaavat erottaa sen asiallisista kirjoituksista.

    Äänestä

  • Jukka kirjoitti:

    Kyllä se C :kin on jo vanhaa, tosin rutiinin ja ohjelmoinnin logiikan eli "punaisen langan" (esim. oliot) siinä oppii hyvin.
    Huomisen ohjelmat tehdääc C 'Sharpilla' eli C#:lla. Joten jos vain kiinnostusta ohjelmointiin riittää niin C# kannattaisi siirtyä mahdollisimman pian. Tosin C on kyllä vielä pitkään käytössä, mutta C#:ssa on uusia ominaisuuksia jotka helpottavat elämää kummasti (lähinnä internetin yhdistäminen ohjelmiin).
    Eli kaikkea ei enää tarvitse itse "koodata" vaan suurin osa toiminnoista on "raaha ja pudota" periaatteella toteutettuna (Drag & Drop).
    .Netin ominaisuuksista mielenkiintoisin on tuo että ohjelmat ei käännetä enää ajettavaan .exe binääriin vaan välivaiheeseen joka ajetaan aina tulkin lävitse, joka mahdollistaa jokaiselle ohjelmalle tehtävät oikeusmääritykset sekä laitteisto/alusta vapauden, kunhan .NET tulkkilöytyy koneesta (Win xp:ssä mukana, muihin ~11MB asennus paketti).

    .NET kutsuu ;)

    Anteeksi, että poksutan unikuplasi, mutta C#:lla ei ole minkäänlaista tulevaisuutta esim. peliohjelmoinninssa. Tuskin myöskään montaa työpöytä-tai toimistosovellusta tullaan toteuttamaan C#:lla. Syynä on juuri tuo mainitsemasi "välivaihe", jota myös bytecodeksi kutsutaan. Siitä ei valitettavasti ikinä saa tarpeeksi nopeaa nopeutta vaativia sovelluksia varten ja tarpeeksi vaivatonta käyttää.

    C# vastaa käyttötarkoituksiltaan lähinnä Javaa, jota vastaan Microsoft C#:n kehitti. Kaikki C -ohjelmoijat tuskin arvostavat monia Javamaisia kehitelmiä, kuten automaattista garbage collectia ja mainitsemaasi Drag-and-Drop-tyylistä "vaivattomuutta".

    C tulee elämään vielä pitkään, ja C# ei haasta sitä juuri millään alalla, jolla sitä käytetään.

    Miksi Microsoft tekisi erikseen MS Visual C#.Netin ja MS Visual C .Netin, jos niillä olisi päällekkäisiä käyttötarkoituksia? Jos asia olisi näin, C# pakotettaisiin korvaamaan C .

    Äänestä

  • Saija kirjoitti:

    Siis nykyisinhän ei enää tehdä C:llä kuin "vanhaa" softaa, muu tehdään C :lla tai muilla uudemmilla kielillä. Miksi siis opetella kävelemään, JOS voi oppia suoraan juoksemaan? Silti kannatan ohjelmoinnin opettelemista C:llä (itsekin siitä aloitin), sillä C:n avulla oppii ohjelmoinnin perusteet paremmin kuin plussalla. Kun ohjelmoinnin "punainen lanka" on hallinnassa, voi kohtuullisella vaivannäöllä oppia minkä kielen tahansa. Jos taas tuo lanka on kateissa, on ihan sama, millä kielellä yrittää soheltaa.

    ensin ihan yleisesti tähän ketjuun vastanneille: teistä ei kukaan taida ymmärtää ohjelmoinnista hevonvittua. on se muutakin, kuin rivien kirjoittamista; analysointia ja suunnittelua. no, totesinpahan vaan itsestäänselvyyden.

    sitten:

    > Siis nykyisinhän ei enää tehdä C:llä kuin "vanhaa" softaa

    just. milläköhän kaikki järkevät ohjelmat on kirjoitettu? *nixien kernelit, 99% kriittisistä servereistä, lähes päikseen kaikki hiemankin pelejä ammattimaisempi. no myönnetään, vanhaa ja hyödytöntä softaa.

    > muu tehdään C++:lla tai muilla uudemmilla kielillä.

    niinpä, päästään aiheeseen windows-ohjelmointi: ainoa pätevä työkalu, jos todella jotain haluaa tehdä, on visual c++. tämä johtuu siitä, että koko ossin (core-) api on plussaa, ja siihen ei muilla sdk:lla pääse kiinni. kyllä mikki pitää monopolistaan huolta (unohtakaa djgpp:t). lisäksi koko vc++ on yksi vitun sotku, jolla ei aidosti eleganttia plussaa tehdä.

    paskapuheet sikseen ja vihdoinkin asiaan:

    c vs. c++: ydin on c++:n oliopohjaisuudessa ja siihen liittyvissä hienouksissa: jos kieleksi valitaan c johonkin projektiin, johtuu se yleensä tehokkuudesta; jos projekti on helvetin iso (monta tuhatta mötikkää, kymmeniä ohjelmoijia), se pysyy käsissä parhaiten oliopohjaisella rakenteella. c++ on tehokas oliokieli oikeissa käsissä, mutta ilman asiantuntemusta siitä on lähinnä vain murhetta: tapetaan kärpästä härkäsellä. lukemani perusteella voin vilpittömästi sanoa, että teistä kukaan ei varmasti tarvitse, saati edes ymmärrä c++:n hienouksia. argumentti lähinnä se, että aito plus on todella monimutkainen kieli, plussaa ei ole se, että osataan kirjoittaa "class Vittu : Urpo" vaan jotain ihan muuta.

    c++ vs. java: jos halutaan käyttää oliopohjaista kieltä (mikä on usein järkevää), käytetään mieluummin javaa. sillä on huomattavasti simppelimpää, nopeampaa, tehokkaampaa ja turvallisempaa rakentaa kuin c++:lla. olettaen, että todella halutaan olioita. miettikääpä hetki, miksi isot applikaatiot (esim. pankkijärjestelmät jne.) siirtyvät pikkuhiljaa javaan. javassa kärsii nopeus, mutta pointtina on se, että tämän tasoisissa projekteissa on varaa heittää lisää rautaa kehiin, jos siltä tuntuu (kustannussäästöt ovat silti huomattavat, lähinnä bugittomamman koodin ansiosta). javan suurimpia valtteja on myös äärimmäinen skaalautuvuus.

    no, vuodatinpa vähän, vaikka hukkaanhan tämä menee. tehkää niitä vitun pyöriviä kolmioita ja typeriä pelejä, unohtakaa oikea ohjelmointi ja huseeratkaa tajuamatta kielistä ja niiden tarkoituksista hevonvittua. uskokaa silti: tahtoo tehokasta, tahtoo opetella oikeaa ohjelmointia, tahtoo saada suoran kosketuksen koneeseen = c. tahtoo opetella ohjelmoimaan, tahtoo olla olioissa = java. tahtoo olla masokisti = c++.

    Äänestä

  • niinkö kirjoitti:

    C:n opetellu ei todellakaan ole pakollista. Ainakin itse näen asian niin että nykyaikana ei kannata opetella oikeastaan mitään muita ohjelmointi kieliä kuin olio kieliä.

    Oliot niinsanotusti HIP ja POP.

    C on aivan loistava kieli alkaa ohjelmoimaan. Oikeastaan mikä tahansa ohjelmointi kieli on. Assembler ei ehkä mutta muut kuitenkin =)

    > C on aivan loistava kieli alkaa ohjelmoimaan

    en ehkä suosittelisi ihan ensimmäiseksi kieleksi, enkä varsinkaan oliokieleksi. paras valinta lienee java... mikäköhän muuten on nykyään suomessa yliopistojen virallinen ohjelmointikieli?

    Äänestä

  • Jukka kirjoitti:

    Kyllä se C :kin on jo vanhaa, tosin rutiinin ja ohjelmoinnin logiikan eli "punaisen langan" (esim. oliot) siinä oppii hyvin.
    Huomisen ohjelmat tehdääc C 'Sharpilla' eli C#:lla. Joten jos vain kiinnostusta ohjelmointiin riittää niin C# kannattaisi siirtyä mahdollisimman pian. Tosin C on kyllä vielä pitkään käytössä, mutta C#:ssa on uusia ominaisuuksia jotka helpottavat elämää kummasti (lähinnä internetin yhdistäminen ohjelmiin).
    Eli kaikkea ei enää tarvitse itse "koodata" vaan suurin osa toiminnoista on "raaha ja pudota" periaatteella toteutettuna (Drag & Drop).
    .Netin ominaisuuksista mielenkiintoisin on tuo että ohjelmat ei käännetä enää ajettavaan .exe binääriin vaan välivaiheeseen joka ajetaan aina tulkin lävitse, joka mahdollistaa jokaiselle ohjelmalle tehtävät oikeusmääritykset sekä laitteisto/alusta vapauden, kunhan .NET tulkkilöytyy koneesta (Win xp:ssä mukana, muihin ~11MB asennus paketti).

    .NET kutsuu ;)

    c# = java

    vähän samaa tapaan kuin

    basic = c

    Äänestä

  • megari kirjoitti:

    Anteeksi, että poksutan unikuplasi, mutta C#:lla ei ole minkäänlaista tulevaisuutta esim. peliohjelmoinninssa. Tuskin myöskään montaa työpöytä-tai toimistosovellusta tullaan toteuttamaan C#:lla. Syynä on juuri tuo mainitsemasi "välivaihe", jota myös bytecodeksi kutsutaan. Siitä ei valitettavasti ikinä saa tarpeeksi nopeaa nopeutta vaativia sovelluksia varten ja tarpeeksi vaivatonta käyttää.

    C# vastaa käyttötarkoituksiltaan lähinnä Javaa, jota vastaan Microsoft C#:n kehitti. Kaikki C -ohjelmoijat tuskin arvostavat monia Javamaisia kehitelmiä, kuten automaattista garbage collectia ja mainitsemaasi Drag-and-Drop-tyylistä "vaivattomuutta".

    C tulee elämään vielä pitkään, ja C# ei haasta sitä juuri millään alalla, jolla sitä käytetään.

    Miksi Microsoft tekisi erikseen MS Visual C#.Netin ja MS Visual C .Netin, jos niillä olisi päällekkäisiä käyttötarkoituksia? Jos asia olisi näin, C# pakotettaisiin korvaamaan C .

    > Anteeksi, että poksutan unikuplasi, mutta C#:lla ei ole minkäänlaista tulevaisuutta esim. > peliohjelmoinninssa.

    tulihan se sieltä vihdoin: peliohjelmointi. voi vittu, ohjelmoikaa niittä pelezejänne, siihen ainoa oikea kieli on assembler käyttäen direct-x:ää. paitsi, jos haluaa tehdä koodillaan jotain, c ja opengl... mutta ohos, vitullako koodailet c:llä winissä ilman hampaiden kiristelyä?

    hankkikaan oikea käyttöjärjestelmä, oikeita kääntäjiä ja oikeita apeja. kakarat.

    > C# vastaa käyttötarkoituksiltaan lähinnä Javaa, > jota vastaan Microsoft C#:n kehitti.

    kerrankin olen samaa mieltä. lisäisin vielä, että tapahtui taas mikit: mitä ei kopioitu, se varastettiin. suoraan.

    > Kaikki C++- ohjelmoijat tuskin arvostavat monia Javamaisia kehitelmiä, kuten automaattista garbage collectia

    just. nyt tehdään taas niitä pelejä. voisin kritisoida javaakin sivutolkulla, enkä vähiten gc:tä, mutta kun tehdään oikeita ohjelmia, niin sattuu pätemään sellainen hassu sääntö: 90% käytetystä ajasta kuluu bugien korjaamiseen. jos kieli auttaa eliminoimaan näistä sen yleisemmän, muistisotkut (hämärät new:t, hyvin hämärät pointterit ja vieläkin hämärämmät delete:t), niin voit hiukkasen miettiä, mitä tapahtuu kehityskustannuksille. ilmaistahan tämä ei ole, mutta aika = rautaa, rauta = halpaa.

    > ja mainitsemaasi Drag-and-Drop- tyylistä "vaivattomuutta".

    tuo on on puhtaasti eräitten apien näennäistä oliomaisuutta. ei liity varsinaisesti kieliin mitenkään. osoitti vaan loistavaa asiantuntemattomuutta.

    Äänestä

  • jaahas kirjoitti:

    > Anteeksi, että poksutan unikuplasi, mutta C#:lla ei ole minkäänlaista tulevaisuutta esim. > peliohjelmoinninssa.

    tulihan se sieltä vihdoin: peliohjelmointi. voi vittu, ohjelmoikaa niittä pelezejänne, siihen ainoa oikea kieli on assembler käyttäen direct-x:ää. paitsi, jos haluaa tehdä koodillaan jotain, c ja opengl... mutta ohos, vitullako koodailet c:llä winissä ilman hampaiden kiristelyä?

    hankkikaan oikea käyttöjärjestelmä, oikeita kääntäjiä ja oikeita apeja. kakarat.

    > C# vastaa käyttötarkoituksiltaan lähinnä Javaa, > jota vastaan Microsoft C#:n kehitti.

    kerrankin olen samaa mieltä. lisäisin vielä, että tapahtui taas mikit: mitä ei kopioitu, se varastettiin. suoraan.

    > Kaikki C++- ohjelmoijat tuskin arvostavat monia Javamaisia kehitelmiä, kuten automaattista garbage collectia

    just. nyt tehdään taas niitä pelejä. voisin kritisoida javaakin sivutolkulla, enkä vähiten gc:tä, mutta kun tehdään oikeita ohjelmia, niin sattuu pätemään sellainen hassu sääntö: 90% käytetystä ajasta kuluu bugien korjaamiseen. jos kieli auttaa eliminoimaan näistä sen yleisemmän, muistisotkut (hämärät new:t, hyvin hämärät pointterit ja vieläkin hämärämmät delete:t), niin voit hiukkasen miettiä, mitä tapahtuu kehityskustannuksille. ilmaistahan tämä ei ole, mutta aika = rautaa, rauta = halpaa.

    > ja mainitsemaasi Drag-and-Drop- tyylistä "vaivattomuutta".

    tuo on on puhtaasti eräitten apien näennäistä oliomaisuutta. ei liity varsinaisesti kieliin mitenkään. osoitti vaan loistavaa asiantuntemattomuutta.

    >vittu, ohjelmoikaa niittä pelezejänne, siihen >ainoa oikea kieli on assembler käyttäen direct-
    >...jäkäjäkäjäkä
    >koodailet >c:llä winissä ilman hampaiden >kiristelyä?

    Voi luoja...en voi muuta sanoa. Sekoitat iloisesti ne, jotka pelejä tekevät ja ne, jotka niitä pelaavat. Vaikka suuri osa pelaajista olisi minkälaisia tahansa peeloja, ei se oikeuta haukkumaan peliohjelmoijia. Vaikka en itse peliohjelmoija olekaan, voin sanoa, että se jos mikä vaatii mieheltä(tai naiselta) älliä. Oikeassa olet siinä, että assembler olisi _teoreettisesti_ paras kieli pelien toteuttamiseen, mutta käytäntö on ihan jotain muuta. Aikaa kun kuluisi liian kauan. C toimii windowsin kanssa varsin mainiosti ja ongelmat ovat lähinnä marginaalisia ja ratkaistavissa. C nyt vain sattuu olemaan sen verran vanha kieli, että kun kätevämpiä ja uudempia on näköpiirissä ja saatavilla, kiristelee sen kanssa hampaitaan jostain aivan muusta syystä. C :aa kannattaa ehdottomasti käyttää pelkän C:n sijasta.

    >hankkikaan oikea käyttöjärjestelmä, oikeita >kääntäjiä ja oikeita apeja. kakarat.

    Mitä tarkoitat "oikealla käyttöjärjestelmällä"? Kaikki NT-pohjaiset Windowsit WinME(muistaakseni ei enää aidosti DOS-pohjainen) POSIX-yhteensopivat DOS eli aika suuri osa on oikeita käyttiksiä eikä toisen päällä pyöriviä käyttöliittymiä.
    Ja sitten "oikeat APIt"...eivätkös kaikki ohjelmointirajapinnat ole ihan oikeita ja aitoja apeja? Jopa yksittäisellä DLL:llä voi olla oma API.
    Kakaroita? Ehkä, ehkä ei. Mutta omasta kielenkäytöstäsi ja mielipiteittesi ehdottomuudesta ei saa kovin mairittelevaa kuvaa SINUN kypsyydestäsi.

    >kerrankin olen samaa mieltä. lisäisin vielä, >että tapahtui taas mikit: mitä ei kopioitu, se >varastettiin. suoraan.

    Näin tapahtui. Vertaapa muuten zlibiin: microsoft on myöntänyt käyttävänsä sitä, mutta kieltäytyy gpl-lisenssin vastaisesti julkistamasta tuotteidensa zlibiä käyttävien osien lähdekoodia.

    >hämärämmät delete:t), niin voit hiukkasen >miettiä, mitä tapahtuu kehityskustannuksille. >ilmaistahan tämä ei ole, mutta aika = rautaa, >rauta = halpaa.

    Noniin. Täytyy vääntää rautalangasta oikein. Garbage collect hidastaa ohjelmaa ja voi jopa kaataa sen. Bugien jäljitys vaikeutuu tältä osalta. Resurssien tehokas käyttö esim. vaativaa laskentaa suorittavissa ohjelmissa on ensiarvoisen tärkeää, sillä kyseiset ohjelmat voivat tarvita satojen megatavujen, jopa gigojen kokoisia muistialueita varattavaksi ja vapautettavaksi vähän väliä ja tämäkin sadoissa muuttujissa. Ymmärtänet, että "vapautetaan, kun jaksetaan"-meininki ei käy ja voi olla haitallinen. Asia on samoin myös peleissä, jotka ovat nykyään massiivisia.
    Perusteesi bugien jäljitykselle ja eliminoinnille on siis toisaalta pitävä ja toisaalta ei. Garbage collect ei sovi tietynlaisiin ohjelmatyyppeihin lainkaan. Ja rauta on kallista.

    >tuo on on puhtaasti eräitten apien näennäistä >oliomaisuutta. ei liity varsinaisesti kieliin >mitenkään. osoitti vaan loistavaa >asiantuntemattomuutta.

    Onneksi kehitystyövälineet puhuvat tässä asiassa totuuden. Katso niitä ja hämmästy...

    Äänestä

  • megari kirjoitti:

    >vittu, ohjelmoikaa niittä pelezejänne, siihen >ainoa oikea kieli on assembler käyttäen direct-
    >...jäkäjäkäjäkä
    >koodailet >c:llä winissä ilman hampaiden >kiristelyä?

    Voi luoja...en voi muuta sanoa. Sekoitat iloisesti ne, jotka pelejä tekevät ja ne, jotka niitä pelaavat. Vaikka suuri osa pelaajista olisi minkälaisia tahansa peeloja, ei se oikeuta haukkumaan peliohjelmoijia. Vaikka en itse peliohjelmoija olekaan, voin sanoa, että se jos mikä vaatii mieheltä(tai naiselta) älliä. Oikeassa olet siinä, että assembler olisi _teoreettisesti_ paras kieli pelien toteuttamiseen, mutta käytäntö on ihan jotain muuta. Aikaa kun kuluisi liian kauan. C toimii windowsin kanssa varsin mainiosti ja ongelmat ovat lähinnä marginaalisia ja ratkaistavissa. C nyt vain sattuu olemaan sen verran vanha kieli, että kun kätevämpiä ja uudempia on näköpiirissä ja saatavilla, kiristelee sen kanssa hampaitaan jostain aivan muusta syystä. C :aa kannattaa ehdottomasti käyttää pelkän C:n sijasta.

    >hankkikaan oikea käyttöjärjestelmä, oikeita >kääntäjiä ja oikeita apeja. kakarat.

    Mitä tarkoitat "oikealla käyttöjärjestelmällä"? Kaikki NT-pohjaiset Windowsit WinME(muistaakseni ei enää aidosti DOS-pohjainen) POSIX-yhteensopivat DOS eli aika suuri osa on oikeita käyttiksiä eikä toisen päällä pyöriviä käyttöliittymiä.
    Ja sitten "oikeat APIt"...eivätkös kaikki ohjelmointirajapinnat ole ihan oikeita ja aitoja apeja? Jopa yksittäisellä DLL:llä voi olla oma API.
    Kakaroita? Ehkä, ehkä ei. Mutta omasta kielenkäytöstäsi ja mielipiteittesi ehdottomuudesta ei saa kovin mairittelevaa kuvaa SINUN kypsyydestäsi.

    >kerrankin olen samaa mieltä. lisäisin vielä, >että tapahtui taas mikit: mitä ei kopioitu, se >varastettiin. suoraan.

    Näin tapahtui. Vertaapa muuten zlibiin: microsoft on myöntänyt käyttävänsä sitä, mutta kieltäytyy gpl-lisenssin vastaisesti julkistamasta tuotteidensa zlibiä käyttävien osien lähdekoodia.

    >hämärämmät delete:t), niin voit hiukkasen >miettiä, mitä tapahtuu kehityskustannuksille. >ilmaistahan tämä ei ole, mutta aika = rautaa, >rauta = halpaa.

    Noniin. Täytyy vääntää rautalangasta oikein. Garbage collect hidastaa ohjelmaa ja voi jopa kaataa sen. Bugien jäljitys vaikeutuu tältä osalta. Resurssien tehokas käyttö esim. vaativaa laskentaa suorittavissa ohjelmissa on ensiarvoisen tärkeää, sillä kyseiset ohjelmat voivat tarvita satojen megatavujen, jopa gigojen kokoisia muistialueita varattavaksi ja vapautettavaksi vähän väliä ja tämäkin sadoissa muuttujissa. Ymmärtänet, että "vapautetaan, kun jaksetaan"-meininki ei käy ja voi olla haitallinen. Asia on samoin myös peleissä, jotka ovat nykyään massiivisia.
    Perusteesi bugien jäljitykselle ja eliminoinnille on siis toisaalta pitävä ja toisaalta ei. Garbage collect ei sovi tietynlaisiin ohjelmatyyppeihin lainkaan. Ja rauta on kallista.

    >tuo on on puhtaasti eräitten apien näennäistä >oliomaisuutta. ei liity varsinaisesti kieliin >mitenkään. osoitti vaan loistavaa >asiantuntemattomuutta.

    Onneksi kehitystyövälineet puhuvat tässä asiassa totuuden. Katso niitä ja hämmästy...

    > Vaikka suuri osa pelaajista olisi minkälaisia
    > tahansa peeloja, ei se oikeuta haukkumaan
    > peliohjelmoijia.

    missasit täysin ajatuksen taustalla (pitää ehkäpä ruveta vääntämään rautalangasta). Simo ostaa pc:n ja paljon kivoja belejä. Simo tahtoo tehdä itse belejä, Simo opettelee plussan syntaksin ja kirjoittaa quakentappajan. justjoo.

    olen ihan samaa mieltä, että peliohjelmointi on todella vaativa osa-alue, mutta todelliset ammattilaiset eivät suinkaan ole ensin opetelleet pelejä tekemään. yleensä ko. henkilöillä on demoscene (rest in peace) tausta. vituttaa suunnattomasti nämä newbiet, jotka luulevat kuukaudessa oppivansa c++:n ja siinä samalla tekevänsä mualiman barhaan belin. ohjelmointi on siitä kumma juttu, että sitä ei koskaan opi riittävän hyvin. koskaan ei voi mitään kieltä osata täydellisesti, saati tuntea riittävästi kauniita algoritmeja. suunnitelu on vielä asia erikseen, kuinkakohan moni näistäkin belikodezereista on ikinä edes kuullut esim. uml:sta.

    > Oikeassa olet siinä, että assembler olisi
    > _teoreettisesti_ paras kieli pelien
    > toteuttamiseen, mutta käytäntö on ihan jotain
    > muuta

    totta. kukakohan jaksaa enää edes aikakriittisimmät luuppinsa tehdä assyllä. yksi syypää on cpu-valmistajat: kaikki saatanan mmx:t, 3dnow:t, ja mitä vittuja niitä onkaan. tilanne on vähän sama, kuin crossplatformkalan rakentaminen, paitsi askeettisessa ympäristössä. toisaalta myös kääntäjät on nykyään ihan hävyttömän tehokkaita, esim. gcc:lle ei voi kun nostaa hattua (tosin kun sorsaa katselee, meinaa itku päästä).

    > C toimii windowsin kanssa varsin mainiosti ja
    > ongelmat ovat lähinnä marginaalisia

    koko ossin api vaan on plussaa, sehän ei haittaa yhtään, eihän? kokeileppa päästä siihen c:llä kiinni, niin toteat nopeasti, että mieluummin työntelet neuloja kynsien alle.

    > C nyt vain sattuu olemaan sen verran vanha
    > kieli, että kun kätevämpiä ja uudempia on
    > näköpiirissä ja saatavilla, kiristelee sen
    > kanssa hampaitaan jostain aivan muusta syystä.

    onko ikä ja laatu suorassa suhteessa toisiinsa? minkä helvetin takia c:tä kritisoidessa aina vedotaan ikään? voi jumalauta, on *nixitkin 70-luvulta, mutta silti toimivat: "if it ain't broken, don't fix it."

    c on ohjelmointikieli kauneimmillaan. se on ohjelmoijien suunnittelema ohjelmoijille. se on syntynyt tarpeesta. se on onkin kohtalaisen korkeantason kieli, mutta silti omaa matalantason ominaisuudet. c++ ei ole mitään muuta kuin c:n (perverssi) laajennus, älä unohda sitä.

    > C++:aa kannattaa ehdottomasti käyttää pelkän
    > C:n sijasta.

    no kylläpäs perustelit huolella ja syvällisesti. en jaksa copypasteta, lue mun kanta tosta:

    http://keskustelu.suomi24.fi/show.cgi?category=108&conference=652&posting=3000000000097480

    > Mitä tarkoitat "oikealla käyttöjärjestelmällä"?
    > Kaikki NT-pohjaiset Windowsit POSIX-yhteensopivat

    voisin nauraa, mutta en jaksa. win32-"posix" on kyllä pahasti riisuttu ja raiskattu. tämä on normaalia mikkiä.

    > WinME (muistaakseni ei enää aidosti DOS-
    > pohjainen)

    bullshit. sama vitun kerneli siinä on, kuin alemmissakin. vilaseppas piruuttasi io.syssiä, sieltä löytyy mikin (c) vuodelta 1989. niin sitä pitää.

    > Ja sitten "oikeat APIt"...eivätkös kaikki
    > ohjelmointirajapinnat ole ihan oikeita ja
    > aitoja apeja? Jopa yksittäisellä DLL:llä voi
    > olla oma API.

    oikealla tarkoitin lähinnä Oikeaa, en helvetin sekasotkua. mikin apeissa toistuu usein tämä: ensin jokin api suunnitellaan päin vittua tai huolimattomasti, varmaankin vain yhteen tarkoitukseen ajattelematta laajemmin. sen jälkeen joku keksii rakentaa siihen päälle jotain, ja syntynyt ongelma ratkaistaan wrappereillä tai muuten kiertämällä alkuperäistä ongelmaa. seuraus: meillä on kauhea kasa spagettia, josta kukaan ei loppujen lopuksi ymmärrä mitään. lisäksi, kun dokumentaatio on mitä on (markkinointihypeä tai muuten vaan puuttellista), win32-apien käyttö on itsensä ruoskintaa.

    > Kakaroita? Ehkä, ehkä ei. Mutta omasta
    > kielenkäytöstäsi ja mielipiteittesi
    > ehdottomuudesta ei saa kovin mairittelevaa
    > kuvaa SINUN kypsyydestäsi.

    no ei varmasti. vitut siitä, sillä asiat on pakko ladata töksäyttäen ja mahdollisimman vittumaisesti. tervetuloa internettiin.

    > Noniin. Täytyy vääntää rautalangasta oikein.
    > Garbage collect hidastaa ohjelmaa ja voi jopa
    > kaataa sen.

    hidastaa kyllä, kaataa ei. voihan tietenkin olla, että käytät vielä jotain 1.0-1.1 sarjan jvm:ää, mutta sunilta esim. 1.3.1 on todella stabiili, jitti tekee erittäin hyvää työtä ja gc:lläkin on edes jotain älliä. tiedän työkokemuksesta, että monenkin koneen javaclusteri, joka on todella raskaan kuorman alla, kestää nikottelematta, kunhan asiat tehdään oikein. tässä yksi javan vahvuuksista: laitteistoriippumaton skaalautuvuus. esim. sunia ja x86:sta voi miksata miten tykkää, vaikka samassa softassa. kaunista. tutustuppa hiukkasen jiniin ja kumppaneihin, voit ehkä kokea valaistuksen.

    > Resurssien tehokas käyttö esim. vaativaa
    > laskentaa suorittavissa ohjelmissa on
    > ensiarvoisen tärkeää, sillä kyseiset ohjelmat
    > voivat tarvita satojen megatavujen, jopa
    > gigojen kokoisia muistialueita varattavaksi ja
    > vapautettavaksi vähän väliä ja tämäkin sadoissa
    > muuttujissa.

    päästiin asiaan. lue toi mun juttu em. linkistä. tollaset systeemit ei muuten

    a) pyöri windowssilla, se ei yksinkertaisesti sovellu tuohon (uskaltaisitko laittaa win-serverin raksuttamaan jotakin kaavaa kuukaudeksi. minä en).

    b) pyöri amatöörien koodeilla. herää jo ja käytä oikeita argumentteja.

    > Ymmärtänet, että "vapautetaan, kun jaksetaan"-
    > meininki ei käy ja voi olla haitallinen.

    riippuu mistä roikkuu: kumpi on parempi; vapautetaan iso klöntti kerralla, kun alkaa resurssit loppua, vai vapatetaan vähän väliä sieltä täältä. vastaus: paha sanoa, toinen rasittaa ossia, toinen aiheuttaa epätasaista suoritusta. riippuu täysin sovelluksesta.

    > Asia on samoin myös peleissä, jotka ovat
    > nykyään massiivisia.

    totta. java ei ole tarkoitettu beleihin, se ei sovellu beleihin, eikä sillä pitäisi belejä tehdä. olet varmaan vaan jo saanut sen mun mielipiteestä irti, että en hirveästi arvosta näitä belizohjelzoijoita (siis näitä wannabestaroja, esim. carmack sun muut saa kyllä rajattoman ihailun). pelit ovat vain pieni osa-alue ja turha sellainen.

    carmackista btw, todella mielenkiintoinen syntytarina (tällaista arvostan):

    http://www.bluesnews.com/abrash/chap64.shtml

    jos kirjahyllystä ei löydy vähintään viittä yli 15cm paksua kirjaa, jonka nimessä esiintyy sana "algorithm", voi oikean peliohjelmoinnin unohtaa. piste.

    > Perusteesi bugien jäljitykselle ja
    > eliminoinnille on siis toisaalta pitävä ja
    > toisaalta ei. Garbage collect ei sovi
    > tietynlaisiin ohjelmatyyppeihin lainkaan.

    no voi helvetti, ei ajokortitkaan sovi kaikille naisille. tottakai oikeiden metodien valinta riippuu ongelmasta, mutta väittäisin, että gc-pohjainen ratkaisu sopii 70-80%:n ohjelmista. javasta vielä: kuka estää kirjoittamassa kriittisimpiä kohtia natiivina? portattavuus kärsii, mutta ei niin pahasti kuin 100% natiivi. koska tehonsa puolesta awt ja swing ovat lähinnä huono vitsi (toiminnallisuus ja design ovatkin toista maata, todella, todella kaunista), miksipä ei kirjoittaa omia gfx-libejä (joita tosin on netti pullollaan). simppeli win32 ikkunaattori Onneksi kehitystyövälineet puhuvat tässä
    > asiassa totuuden. Katso niitä ja hämmästy...

    kiitos vaan, pysyn mielelläni kaukana visual-x:stä. mieluummin kirjoitan rivin koodia, kun annan "edistyneen kehitystyökalun" kirjoittaa kolmekymmentä. ja tuo raahailu on kyllä apissa, jossa viskotaan olioita sinne tänne. eri asia on, hyväksytkö sen ja implementoit vaadittavat toiminnot.

    ihan pikkuinen epilogi vielä:

    toivottavasti kaikki aloittelevat ohjelmoijat ymmärtävät, mihin ovat ryhtymässä. voitte olla varmoja, että taitoa alkaa olla hanskassa vasta monen vuoden jälkeen. kuskaa alussa väärillä kehitysympäristöillä ja kärvennytte helvetin ikuisissa tulissa.

    Äänestä

  • Jukka kirjoitti:

    Kyllä se C :kin on jo vanhaa, tosin rutiinin ja ohjelmoinnin logiikan eli "punaisen langan" (esim. oliot) siinä oppii hyvin.
    Huomisen ohjelmat tehdääc C 'Sharpilla' eli C#:lla. Joten jos vain kiinnostusta ohjelmointiin riittää niin C# kannattaisi siirtyä mahdollisimman pian. Tosin C on kyllä vielä pitkään käytössä, mutta C#:ssa on uusia ominaisuuksia jotka helpottavat elämää kummasti (lähinnä internetin yhdistäminen ohjelmiin).
    Eli kaikkea ei enää tarvitse itse "koodata" vaan suurin osa toiminnoista on "raaha ja pudota" periaatteella toteutettuna (Drag & Drop).
    .Netin ominaisuuksista mielenkiintoisin on tuo että ohjelmat ei käännetä enää ajettavaan .exe binääriin vaan välivaiheeseen joka ajetaan aina tulkin lävitse, joka mahdollistaa jokaiselle ohjelmalle tehtävät oikeusmääritykset sekä laitteisto/alusta vapauden, kunhan .NET tulkkilöytyy koneesta (Win xp:ssä mukana, muihin ~11MB asennus paketti).

    .NET kutsuu ;)

    taidat olla muuten vitun idiootti, jos olet tollasen määrän syönyt mikin markkinointipaskaa vielä hymyssä suin. c# on kuollut kieli jo syntyessään, vähän kuin asp (jota käytetään, koska sillä on joskus hypessä tehty jotain, mistä ei haluta luopua. samalla se kirotaan syvinpään helvettiin).

    tosin toi sun teksti oli mustaa huumoria, eikö?

    Äänestä

  • niinkö kirjoitti:

    C:n opetellu ei todellakaan ole pakollista. Ainakin itse näen asian niin että nykyaikana ei kannata opetella oikeastaan mitään muita ohjelmointi kieliä kuin olio kieliä.

    Oliot niinsanotusti HIP ja POP.

    C on aivan loistava kieli alkaa ohjelmoimaan. Oikeastaan mikä tahansa ohjelmointi kieli on. Assembler ei ehkä mutta muut kuitenkin =)

    Mahdatteko te nyt tietää edes C:n ja C :n eroja??? Opetelkaa ensin konttaamaan...!!!

    Äänestä

  • jaahas kirjoitti:

    c# = java

    vähän samaa tapaan kuin

    basic = c

    C# voi olla java muuta BASIC on kaikkea muuta kuin C.... ainakin liian vanhanaikanen käytettäväksi, tosin paljon helpompi....

    Äänestä

  • jaahas kirjoitti:

    taidat olla muuten vitun idiootti, jos olet tollasen määrän syönyt mikin markkinointipaskaa vielä hymyssä suin. c# on kuollut kieli jo syntyessään, vähän kuin asp (jota käytetään, koska sillä on joskus hypessä tehty jotain, mistä ei haluta luopua. samalla se kirotaan syvinpään helvettiin).

    tosin toi sun teksti oli mustaa huumoria, eikö?

    okei, olet hyvä ohjelmoija.. wanabe-guru-tyyppi, mutta kaikille ohjelmointi ei ole samanlainen elämää suurempi kysymys kuin sinulle. Esim aspi koodareita huudellaan vähän joka rekrypalstalla, joten ei se nyt niin turha ole.. siis jos haluaa vaan pitää itsensä leivänsyrjässä kiinni ohjelmoimalla. Jos esim. saan 3000€ kuussa vääntämällä aspia tai c#:ia ni, mulle on IHAN sama ovatko ne kuinka toimivia kieliä.

    Ja puhuit tuolla jossain noita visual-x kehittimiä vastaan.. edelleen IHAN sama montako riviä mun koodissa on, kunha se toimii ja liksa juoksee (tietty jonkilainen ammattiylpeys on olemassa minullakin). Nyt sä tietysti pidät mua ties minä kusipääroistona ja helvetistä nousseena ohjelmoijapentuna, muttakun tämä ohjelmointi on minulle VAIN työ, siinä missä leipominen on leipurille..

    Fanaattinen saa olla..mutta miksi ihmeessä sä tuomoitset sellaiset, jotka eivät halua??

    Äänestä

  • jaahas kirjoitti:

    > C on aivan loistava kieli alkaa ohjelmoimaan

    en ehkä suosittelisi ihan ensimmäiseksi kieleksi, enkä varsinkaan oliokieleksi. paras valinta lienee java... mikäköhän muuten on nykyään suomessa yliopistojen virallinen ohjelmointikieli?

    Virallista ei oo, mutta meillä ainaki on ensin Pascal, ja sen jälkeen vaikka mitä (sekä C:tä, että C :ssaa, Visual Basicia jne.).

    Opiskelen Joensuussa.

    Äänestä

Esim. dynaamisen muistin käyttö, osoittimet, oliot yms. saattavat aiheuttaa ensi alkuun harmaita hiuksia, mutta jos jaksat tarmokkaasti paneutua asiaan, niin eiköhän se siitä.

Äänestä

Aloita Javalla, on helpompi kuin C ja ylipäältään helppo ensimmäiseksi kieleksi. C :ssa joudut törmäät aloittelijalle liian monimutkaisiin asioihin. Javasta on kuitenkin helppo myöhemmin siirtyä C :aan, jos enää haluaa. Toki toisinkin päin on mahdollista, itsekin olen aloittanut C :lla, tosin myöhemmin siirtynyt Javan käyttäjäksi.

Äänestä

Moi,
olen tietotekniikan opettaja, ja olen omille opiskelijoilleni jo useita vuosia suositellut javaa.

Mielestäni se kaikista kielistä parhaiten täyttää aloittelevan ohjelmoijan tarpeet: täysin puhdas oliototeutus ilman c :an vanhaa proseduraalista c-painolastia.

Hyvää kevättä.

Äänestä

Olen ohjelmoinut C:lla, C :lla, Pythonilla, Pikella, (Object) Pascalilla, Javalla, Perlillä ja hallitsen shell-skriptaamisen. Voin siis sanoa, että hallitsen kohtalaisen monta kieltä.

Aloittelijalle paras kieli on python. Siinä ei ole tyypitystä, ei mitään muistinvapautusta ja sitä käytetään tosi laajasti ympäri maailmaa. Pythonin syntaksi on helppo oppia ja sillä on aloittelijankin helppo tehdä kunnollisia ohjelmia. Tietenkin voidaan olla eri mieltä nopeudesta ja tyypityksen tarpeellisuudesta, mutta monet C -ohjelmoijatkin siirtyvät pythoniin, koska se on niin kirotun helppo ja mukava käyttää. Lisäksi aloittelijalle olisi tärkeintä tajuta ohjelman rakenne ja OO-ajattelutapa heti alkuunsa. Proseduraalisen ohjelmoinnin aika on -- onneksi -- aamen.

C-hakkereille: Itse pidän perus C:tä parempana olio-suuntautuneeseen ohjelmointiin kuin C :aa. Puhun nyt kuitenkin olio-ajattelusta, en oliokielestä tai olio-syntaksista.

Äänestä

  • > Voin siis sanoa, että hallitsen kohtalaisen monta kieltä.

    hallitseminen ja syvällinen osaaminen on hiukkasen eri asia. no, vittuakos siitä, sen kertoi jo tuo sh:n laskeminen kieleksi. osaan minäkin tehdä dossin battejä. niillä voisi ohjelmoida vaikka belin.

    > Aloittelijalle paras kieli on python. Siinä ei ole tyypitystä, ei mitään muistinvapautusta ja sitä käytetään tosi laajasti ympäri maailmaa

    miksei sitten suoraan vaikka javascriptillä (jolla ei muuten, arvoisat peelot, uskokaa jo, ole todellakaan mitään tekemistä javan kanssa: alkuperäisesti sen nimikin oli livescript, mutta java nimi ostettiin siihen hypen vuoksi).

    en nyt sano, että python olisi huono kieli, se on vaan marginaalikieli. kunhan vittuilen.

    > Proseduraalisen ohjelmoinnin aika on -- onneksi -- aamen

    kiva juttu, vaan vaan. asioita, jotka nykyään peeloillaan väkisin olioilla, tehtäisiin paljon elegantimmin ja paremmin proceduraalisesti. trendit olkoon trendejä, voin henk. koht. luvata sulle perskännit sinä päivänä, kun proceduraaliset kielet edustavat esim. kerneleissä vähemmistöä.

    > C-hakkereille: Itse pidän perus C:tä parempana olio-suuntautuneeseen ohjelmointiin kuin C :aa. > Puhun nyt kuitenkin olio-ajattelusta, en oliokielestä tai olio-syntaksista.

    structeillä, funcptr:llä ja järkevällä rakenteella saa ihmeitä aikaan. ei c:stä oliokieltä saa kyllä väkisinkään, mutta ko. uskonnosta saa poimittua helposti niitä parhaita paloja sovellettavaksi. esim. design patternit voi järkevästi yleistää c:hen sellaisenaan.

    itse pidän perus c:tä parempana ohjelmointiin kuin c :aa. c on kuoleva kieli.

    Äänestä

  • jaahas kirjoitti:

    > Voin siis sanoa, että hallitsen kohtalaisen monta kieltä.

    hallitseminen ja syvällinen osaaminen on hiukkasen eri asia. no, vittuakos siitä, sen kertoi jo tuo sh:n laskeminen kieleksi. osaan minäkin tehdä dossin battejä. niillä voisi ohjelmoida vaikka belin.

    > Aloittelijalle paras kieli on python. Siinä ei ole tyypitystä, ei mitään muistinvapautusta ja sitä käytetään tosi laajasti ympäri maailmaa

    miksei sitten suoraan vaikka javascriptillä (jolla ei muuten, arvoisat peelot, uskokaa jo, ole todellakaan mitään tekemistä javan kanssa: alkuperäisesti sen nimikin oli livescript, mutta java nimi ostettiin siihen hypen vuoksi).

    en nyt sano, että python olisi huono kieli, se on vaan marginaalikieli. kunhan vittuilen.

    > Proseduraalisen ohjelmoinnin aika on -- onneksi -- aamen

    kiva juttu, vaan vaan. asioita, jotka nykyään peeloillaan väkisin olioilla, tehtäisiin paljon elegantimmin ja paremmin proceduraalisesti. trendit olkoon trendejä, voin henk. koht. luvata sulle perskännit sinä päivänä, kun proceduraaliset kielet edustavat esim. kerneleissä vähemmistöä.

    > C-hakkereille: Itse pidän perus C:tä parempana olio-suuntautuneeseen ohjelmointiin kuin C :aa. > Puhun nyt kuitenkin olio-ajattelusta, en oliokielestä tai olio-syntaksista.

    structeillä, funcptr:llä ja järkevällä rakenteella saa ihmeitä aikaan. ei c:stä oliokieltä saa kyllä väkisinkään, mutta ko. uskonnosta saa poimittua helposti niitä parhaita paloja sovellettavaksi. esim. design patternit voi järkevästi yleistää c:hen sellaisenaan.

    itse pidän perus c:tä parempana ohjelmointiin kuin c :aa. c on kuoleva kieli.

    Python ei ole enää marginaalikieli. Se on saavuttanut melkosen tukevan jalansijan maailmalla.
    http://www.zope.org:ista saa mainion käsityksen pythonin mahdollisuuksista.

    Toisekseen, jos haluaa opetella ohjelmointia, lienee paikallaan tajuta algoritmien hienouksia, niiden soveltamista etc. lässytystä. Python on korkean tason kieli, jolla saa helposti aikaan paljon. Skriptipellet ovat yllättävän tehokkaita, kuten monista typeristä tietomurroista olemme nähneet.

    Sh:n laskeminen kieleksi on tietysti makuasia, mutta itse laskisin sen "oikeaksi" kieleksi. Pelejä sillä ei voi tehdä, mutta systeemin ylläpidolle kunnon shelliskriptit ovat elintärkeitä.

    Mitä taas tulee proceduraaliseen ohjelmointiin, tarkoitin proceduraalista ajattelua. Sen aika on ohi kaikista vähänkään suuremmista kokonaisuuksista. (Linuxin kernel on harvinaisen olio-suuntautunut, vaikka C:llä onkin kirjoitettu. Jonkin pikku blokkitiedoston tekemisestä saa pientä tuntumaa kernelin rakenteeseen.)

    Olio-ajattelu ei todellakaan ole mikään trendi, vaikka sitä mahdollisesti haluaisittekin :).

    Mitä taas tulee asioiden syvälliseen ymmärtämiseen, lienen jäävi puhumaan asiasta. Ohjelmointia ei voi oikein mitata tarkoilla asteikoilla. Tarvitaan matalantason hikinörttejä kerneltasolle, keskitason tyyppejä säätämään vähän kaikkea muttei mitään kunnolla (itse kuulun tähän ryhmään) ja mainitsemianne peeloja tekemään kunnollisia käyttöliittymiä loppukäyttäjille. En ole guru missään, mutta hallitsen jonkin verran kaikkea. On kai hyvä, että edes joku hallitsee kokonaisuuksiakin? :)

    Äänestä

  • jaahas kirjoitti:

    > Voin siis sanoa, että hallitsen kohtalaisen monta kieltä.

    hallitseminen ja syvällinen osaaminen on hiukkasen eri asia. no, vittuakos siitä, sen kertoi jo tuo sh:n laskeminen kieleksi. osaan minäkin tehdä dossin battejä. niillä voisi ohjelmoida vaikka belin.

    > Aloittelijalle paras kieli on python. Siinä ei ole tyypitystä, ei mitään muistinvapautusta ja sitä käytetään tosi laajasti ympäri maailmaa

    miksei sitten suoraan vaikka javascriptillä (jolla ei muuten, arvoisat peelot, uskokaa jo, ole todellakaan mitään tekemistä javan kanssa: alkuperäisesti sen nimikin oli livescript, mutta java nimi ostettiin siihen hypen vuoksi).

    en nyt sano, että python olisi huono kieli, se on vaan marginaalikieli. kunhan vittuilen.

    > Proseduraalisen ohjelmoinnin aika on -- onneksi -- aamen

    kiva juttu, vaan vaan. asioita, jotka nykyään peeloillaan väkisin olioilla, tehtäisiin paljon elegantimmin ja paremmin proceduraalisesti. trendit olkoon trendejä, voin henk. koht. luvata sulle perskännit sinä päivänä, kun proceduraaliset kielet edustavat esim. kerneleissä vähemmistöä.

    > C-hakkereille: Itse pidän perus C:tä parempana olio-suuntautuneeseen ohjelmointiin kuin C :aa. > Puhun nyt kuitenkin olio-ajattelusta, en oliokielestä tai olio-syntaksista.

    structeillä, funcptr:llä ja järkevällä rakenteella saa ihmeitä aikaan. ei c:stä oliokieltä saa kyllä väkisinkään, mutta ko. uskonnosta saa poimittua helposti niitä parhaita paloja sovellettavaksi. esim. design patternit voi järkevästi yleistää c:hen sellaisenaan.

    itse pidän perus c:tä parempana ohjelmointiin kuin c :aa. c on kuoleva kieli.

    Pätevyyttä..si ei punnita ylimielisyyden ja raivon määrällä. Perusteltu ja harkittu vastaus antaa yllättäen paljon vastaajallekkin.

    Äänestä

  • CrackerZ kirjoitti:

    Pätevyyttä..si ei punnita ylimielisyyden ja raivon määrällä. Perusteltu ja harkittu vastaus antaa yllättäen paljon vastaajallekkin.

    oliko tuo nyt olevinaan piilovittuilua? olen kyllä omasta mielestä perustellut kaiken, mitä olen väittänyt. lukaseppa nyt koko tämä viestiketju läpi, älä nojaa tuohon yhteen vastaukseen. tämä on viimeinen ristiretki, jonka jälkeen pidän visusti turpani kiinni ja katson vierestä, kun ihmiset juoksee karjalan mäntyyn.

    ehkäpä tekstin sävytys on ollut "ylimielinen" ja "raivokas", mutta sisällössä on jumalauta ollut edes jotain asiaa.

    toivottavasti.

    Äänestä

  • jaahas kirjoitti:

    oliko tuo nyt olevinaan piilovittuilua? olen kyllä omasta mielestä perustellut kaiken, mitä olen väittänyt. lukaseppa nyt koko tämä viestiketju läpi, älä nojaa tuohon yhteen vastaukseen. tämä on viimeinen ristiretki, jonka jälkeen pidän visusti turpani kiinni ja katson vierestä, kun ihmiset juoksee karjalan mäntyyn.

    ehkäpä tekstin sävytys on ollut "ylimielinen" ja "raivokas", mutta sisällössä on jumalauta ollut edes jotain asiaa.

    toivottavasti.

    sun paskaa jaksa kukaan lukee. hirveetä vaahtoamista koko teksti.

    Äänestä

...hmm...luulen tietäväni nyt paremmin mistä ohjelmoinnin aloittaisin.
Kyseessä olevalla kirjalla olen jo päässyt aika pitkälle, mutta mitä enemmån opiskelen sitä enemmän aukeaa "ahaa elämyksiä" mitä kaikkea lisää voisin harjoitella.
Todella värikkäistä kommenteista kiitos.
Keskustelua voi toki jatkaa.

Äänestä
  • uskoisit hyvä ihminen, että aloitat javalla. turhaan teet asiat vaikeimman kautta.

    kauniina eleenä voisit polttaa sen c kirjan.

    Äänestä

  • jaahas kirjoitti:

    uskoisit hyvä ihminen, että aloitat javalla. turhaan teet asiat vaikeimman kautta.

    kauniina eleenä voisit polttaa sen c kirjan.

    Älä Jaahas puhu siitä mistä et tiedä eli ohjelmoinnista!

    Äänestä

  • HAHA kirjoitti:

    Älä Jaahas puhu siitä mistä et tiedä eli ohjelmoinnista!

    puhuit asiaa HAHA
    muuten toi c kirjan polttaminen Jaahas olisi
    koko ohjelmoinnin häväistystä(kaikkia kieliä pitäisi edes vähän kunnioitaa) ja usko jo ettei java voi millään olla korkeatasoisempi kuin c
    ite olen peliohjelmoija ja nuo sun haukkumiset
    oli tosi lapsellisia ite varmaan oot pelannut joidenkin pelejä joskus, tässäkö kiitos niille peliohjelmoijille?
    ja toi sun väittees et c on kuoleva kieli on
    perusteita vailla ja täyttä P... :P

    Äänestä

  • hyvä kun et sortunut javaan :)
    onko hyvä kirja, varmaan esimerkit aika tylsähköjä mutta niin on kaikissa
    aloittelija kirjoissa. itse luin Jesse Libertyn opeta itsellesi c 21 päivässä kirjaa ja sitä en suosittele lue vaan sitä mitä luet ja seuraavaksi vaikka joku win32 API kirja ja sen jälkeen.....
    no sen näyttää kiinnostukses :)

    Äänestä

Keskustelun taso muistuttaa tilannetta,jossa sokeat etsivät pimeästä huoneesta mustaa hattua, joka ei ole siellä.

Äänestä
  • Josko sinä sitten jättäytyisit suosiolla näiltä Foorumeilta ja täyttäisit tyhjiötäsi jossain muualla.

    Äänestä

Paras tapa lähteä ohjelmoimaan on valita tavallinen perus C ja kun sen hallitsee niin ottaa mukaan olio-laajennuksen. Tämä on paras ja suositeltavin vaihtoehto aloittelijalle. Itse lähdin juuri näin ja ... Elämä hymyilee...

Äänestä

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

Kommentoi aloitusta


Ohjelmoimaanko kirjoitti:

Sain MS.in Visual C 6 Trainer Kit kirjan, kysynkin jos ohjelmointia alkaa harjoittamaan onko C hyvä kieli vasta-alkajalle?
Olen pelehtinyt tietokoneiden kanssa paljonkin mutta ohjelmointi on jäänyt vähälle, kiinnostus heräsi kun sain kirjan käsiini mutta menenkö "heikoille jäille" jos sitä alan opettelemaan? Kirjassa lukee että se käy vasta-alkajalle kuin myös ammattilaisille.

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