Új hozzászólás Aktív témák

  • Fade_Away

    őstag

    Nagyon érdekes cikk, érdemes végigolvasni, vajon ez tényleg igaz?

    '' 1998. januar 1-en Bjarne Stroustrup interjut adott az IEEE 'Computer'
    magazinjanak.

    A szerkesztok termeszetesen az altala letrehozott nyelv [a C++ - a
    ford.] objektum-orientalt tervezesben eltoltott het evenek meltatasara
    szamitottak.

    Az interju vegere azonban a kerdezo kisse tobbet is kapott, mint amire
    szamitott, ezutan a szerkeszto ugy dontott, eltitkolja a tartalmat a
    'szakma erdekeben', de mint mint sok mas esetben, az anyag megis
    kiszivargott.

    Ime, a teljes atirata annak, ami elhangzott, szerkesztes es stilizalas
    nelkul, igy talan nem annyira rendezett, mint a tervezett interjuk.

    Erdekes lesz...

    ____________________________________________________________________________
    _______________________

    kerdezo: Nos, nehany ev mar eltelt amiota megvaltoztattad a
    szoftvertervezes vilagat; milyen erzes visszatekinteni?

    Stroustrup: Tulajdonkeppen eppen errol a korszakrol gondolkodtam mielott
    megjottel. Emlekszel? Mindenki C programokat irt, es a problema az volt,
    hogy atkozottul jok voltak benne. Az egyetemek is nagyon jol oktattak.
    Hihetetlen iramban ontottak magukbol a hozzaerto - megegyszer alahuzom,
    _hozzaerto_ - vegzosoket. Ez okozta a problemat.

    kerdezo: Problemat?

    Stroustrup: Igen, problemat. Emlekszel, amikor meg mindenki Cobolban
    programozott?

    kerdezo: Persze, meg en is.

    Stroustrup: Nos, kezdetben oket felistenkent tiszteltek. Nagyon jo
    fizetest kaptak, es kiralykent tiszteltek oket.

    kerdezo: Azok voltak am a szep napok...

    Stroustrup: Bizony. Es mi tortent? Az IBM-nek elege lett ebbol, es
    dollarmilliokat forditott programozok kepzesere, amig csak majd minden
    sarkon talalni nem lehetett egyet.

    kerdezo: Ezert is szalltam ki. Egy ev alatt annyit zuhantak a fizetesek,
    hogy tobbet kerestem ujsagirassal.

    Stroustrup: Pontosan. Nos, ugyanez tortent a C programozokkal.

    kerdezo: Ertem, de megis, mire gondolsz?

    Stroustrup: Nos, egyik nap ultem az irodamban, es kiotlottem a
    megoldast, amely majd helyrebillenti az egyensulyt. Arra gondoltam, mi
    tortenne, ha lenne egy olyan programnyelv, ami annyira bonyolult,
    annyira nehezen tanulhato, hogy senki sem lenne kepes elarasztani a
    piacot programozokkal. Tulajdonkeppen atvettem nehany otletet az
    X10-bol, tudod, X windows. Az egy olyan atkozott grafikai rendszer volt,
    hogy meg a Sun 3/60 gepeken is eppenhogycsak elfutott. Megvolt benne
    minden, amire szuksegem volt. Egy igazan nevetsegesen bonyolult
    szintakszis, homalyos fuggvenyek es pszeudo-OO [objektum-orientalt - a
    ford.] struktura. A mai napig senki sem ir nyers X windows kodot. Ha
    epeszu akarsz maradni, az egyetlen ut a Motif.

    kerdezo: Viccelsz?

    Stroustrup: Egyaltalan nem. Igazabol volt meg egy problema. A Unix-ot
    C-ben irtak, ami azt jelentette, hogy barmelyik C-programozo konnyen
    rendszerprogramozova valhatott. Emlekszel, mennyit keresett egy
    nagygepes programozo?

    kerdezo: Bizony, en is az voltam.

    Stroustrup: Szoval, ennek az uj nyelvnek el kellett valnia a Unixtol,
    elrejtve az osszes rendszerhivast, ami olyan szepen osszekototte volna
    oket. Igy mar azok is, akik csak a DOS-t ismertek, jo keresethez
    jutottak volna.

    kerdezo: Ezt nem hiszem; rosszul hallok?

    Stroustrup: Nos, most mar eleg ido eltelt, es azt hiszem, a legtobben
    mar maguktol is rajottek, hogy a C++ idopocsekolas, de meg kell mondjam,
    sokkal tovabb tartott nekik, mint gondoltam.

    kerdezo: Pontosan hogy csinaltad?

    Stroustrup: Eredetileg vicc akart lenni az egesz, sohasem gondoltam
    volna, hogy az emberek komolyan veszik majd a konyvet. Meg egy feleszu
    is lathatja, hogy az objektum-orientalt programozas kovethetetlen,
    illogikus es nem hatekony.

    kerdezo: Hogyan?

    Stroustrup: Es az ujrafelhasznalhato kodhoz csak annyit: halottal mar
    valaha olyan cegrol, amely ujrafelhasznalta volna sajat kodjat?

    kerdezo: Nos, meg nem, de...

    Stroustrup: Latod. Az igazat megvallva az elejen meg nehanyan
    megprobaltak. Ott volt peldaul ez az oregoni vallalat - azt hiszem,
    Mentor Graphics-nak hivtak oket -, amelyik jocskan rafazott, mikor
    90-ben vagy 91-ben megprobalt mindent ujrairni C++-ban. Sajnaltam oket,
    tenyleg, de ugy gondoltam, az emberek majd tanulnak tevedeseikbol.

    kerdezo: De nyilvanvaloan megsem ezt tettek, ugye?

    Stroustrup: A legkevesbe sem. A baj az, hogy a legtobb vallalat
    agyonhallgatja a nagyobb bakloveseit, egy harmincmillio dollaros
    veszteseget pedig nehez lett volna megmagyarazni a reszvenyeseknek. A
    dologhoz hozza tartozik, hogy vegul is azert sikerult nekik.

    kerdezo: Megis sikerult? Nos, tessek, ime a bizonyitek: az OOP mukodik.

    Stroustrup: Nos, majdnem. A programfile olyan nagy volt, hogy ot percig
    tartott, amig betoltodott egy 128MB RAM-mal rendelkezo HP
    munkaallomason. Ezutan pedig ugy futott, mint egy teknos. Tulajdonkeppen
    arra gondoltam, hogy ez tul nagy buktatonak bizonyul es egy het alatt
    lelepleznek, de senkit sem erdekelt. A Sun es a HP egyszeruen tul nagy
    orommel arulta elsopro teljesitmenyu gepeit, amelyekkel oriasi
    eroforrasok felhasznalasaval futtattak egyszeru programokat. Tudod,
    amikor megvolt az elso C++ forditonk az AT&T-ben, leforditottam a 'Hello
    World'-ot [egyszeru tesztprogram, amely pusztan a fenti uzenet
    kiirasabol all - a ford.], es alig hittem a szememnek, amikor meglattam,
    hogy a vegrehejthato allomany 2,1MB lett.

    kerdezo: Hogyan? Nos, a forditok azota sokat fejlodtek.

    Stroustrup: Tenyleg? Probald ki a g++ legujabb verziojan - nem hiszem,
    hogy fel megabyte-nal nagyobb a kulonbseg. Van egy csomo igen kozeli
    pelda is a vilag minden tajarol: a British Telecom igen nagy galibaba
    keveredett, de szerencsere sikerult kidobniuk az egeszet az ablakon es
    ujrakezdeniuk. Szerencsesebbek voltak, mint az Australian Telecom. Most
    hallottam, hogy a Siemens is dinoszauruszt csinal, es egyre jobban es
    jobban aggodnak, ahogy a futtatashoz szukseges hardware merete
    novekszik. Hat nem csodalatos dolog a tobbszoros oroklodes?

    kerdezo: Igen, de a C++ alapjaban veve egy ertelmes nyelv.

    Stroustrup: Ezt te tenyleg el is hiszed, ugye? Leultel mar valaha C++
    projekten dolgozni? Ez szokott tortenni: Eloszor is, eleg buktatot
    epitettem be, hogy csak a legegyszerubb dolgok mukodjenek elsore. Nezd
    meg peldaul az operator overloading-et. A projekt vegere mar
    gyakorlatilag minden modulban van, altalaban, mert a sracok ugy erzik,
    tenyleg kell, ha mar egyszer ez tanultak a tanfolyamon. Ekkor ugyanaz az
    operator minden egyes modulban teljesen mast es mast jelent. Probald meg
    kibogozni, ha van mondjuk szaz modulod. Az adatelrejtesrol pedig annyit,
    hogy neha szinte alig birom visszafojtani a nevetest, amikor hallom,
    hogy a cegeknek problemaik vannak moduljaik egymashoz illesztesevel. Azt
    hiszem, a szinergista szot kifejezetten a projektmenedszerek hataba
    szurt kes megforgatasara hoztak letre.

    kerdezo: Azt kell mondjam, kezdek erosen megdobbenni. Azt mondtad, azert
    csinaltad, hogy emelkedjen a programozok fizetese? Ez
    durva/gusztustalan.

    Stroustrup: Nem igazan. Mindenkinek van valasztasa. Nem szamitottam ra,
    hogy a dolog ennyire kicsuszik a kezbol. Mindenesetre, tulajdonkeppen
    sikerult. A C++ kezd kihalni, de a programozok meg mindig jo fizetest
    kapnak - kulonosen azok a szerencsetlenek, akiknek ezt a sok vacakot
    karban kell tartaniuk. Eszrevetted, hogy lehetlen karbantartanod egy
    nagy C++ modult, hacsak nem te magad irtad?

    kerdezo: Hogyhogy?

    Stroustrup: Mar elszoktal, nem? Emlekszel a typedefre?

    kerdezo: Igen, hat persze.

    Stroustrup: Emlekszel, mennyi ideig tartott vegigkeresgelni a
    header-file-okat, amig megtalalta az ember, hogy a 'TetoFelemelve' egy
    duplapontossagu szam? Nos, kepzeld el meddig tart, amig megtalalod az
    osszes osztaly osszes implicit typdefjet egy nagyobb projektben.

    kerdezo: Akkor miert gondolod, hogy sikerult?

    Stroustrup: Emlekszel egy atlagos C projekt idotartamara? Korulbelul hat
    honap. Kozel sem eleg, hogy egy feleseggel, gyerekekkel rendelkezo srac
    normalis eletszinvonalhoz elegendo penzt keressen ezalatt. Vegyuk
    ugyanazt a projektet, tervezzuk meg C++-ban, es mit kapunk? Megmondom:
    egy vagy ket evet. Hat nem nagyszeru? Ilyen biztos allas, egyetlen
    dontesi hiba miatt. Es meg egy dolog: az egyetemek olyan regen nem
    tanitanak C-t, hogy hiany van jo C programozokbol. Kulonosen azokbol,
    akik konyitanak a Unix rendszerprogramozashoz is. Hanyan tudnak, mit
    kezdjenek a mallockal, mikor az utobbi evekben csak new-t hasznaltak -
    es sosem veszodtek a visszateresi ertek vizsgalataval? Igazabol a
    legtobb C++ programozo eldobja a visszateresi erteket. Mi tortent a jo
    oreg -1-gyel? Legalabb tudta az ember, hogy hiba tortent, anelkul, hogy
    vegig kellett volna kuldeni az egeszet a 'throw' 'catch' 'try'
    lapvideken?

    kerdezo: De az oroklodes biztos megtakarit egy csomo idot?

    Stroustrup: Tenyleg? Felfedezted mar a kulonbseget egy C es egy C++
    projektterv kozott? A C++ projekt tervezesi szakasza haromszor olyan
    hosszu. Pontosabban, amig vegigellenorzik, hogy minden oroklodik, aminek
    oroklodnie kell, es aminek nem kell, az nem. Es meg akkor is elrontjak.
    Ki hallott mar memoriafolyasrol egy C programban? Ma kulon ipar ezek
    megkeresese. A legtobb ceg feladja, es piacra dobja a termeket tudvan,
    hogy folyik, mint a csap, pusztan, hogy elkerulje a folyasok
    felderitesenek koltseget.

    kerdezo: Vannak eszkozok...

    Stroustrup: Amelyeket legtobbszor C++-ban irtak.

    kerdezo: Ha ezt megjelentetjuk, teged valoszinuleg meg fognak lincselni,
    tudsz rola?

    Stroustrup: Ketlem. Mint mondtam, a C++ lefutoban van, es egyetlen
    epeszu ceg sem kezd bele C++ projektbe tajekozodo jellegu proba nelkul.
    Az pedig meg kell gyozze oket arrol, hogy ez az ut katasztrofahoz vezet.
    Ha nem, megerdemlik. Tudod, megprobaltam rabeszelni Dennis Ritchie-t,
    hogy irja ujra a Unixot C++-ban.

    kerdezo: Atyaisten. Mit mondott?

    Stroustrup: Nos, szerencsere jo humorerzeke van. Azt hiszen, o is es
    Brian is mar az elso napokban rajottek, mit csinalok, de sohasem arultak
    el. Azt mondta, segitene megirni a DOS C++ valtozatat, ha engem is
    erdekel a dolog.

    kerdezo: Erdekelt?

    Stroustrup: Valoban, meg is irtam a DOS-t C++-ban. Ha befejeztuk, meg is
    mutatom. A szamitogepteremben fut egy Sparc 20-on. Negy processzoron
    repul, mint a golyo, es csak 70 megat foglal a lemezen.

    kerdezo: PC-n milyen?

    Stroustrup: Viccelsz? Meg sohasem lattad a Windows '95-ot? Ugy gondolok
    ra, mint a legnagyobb sikeremre. Bar majdnem elszurtam, mielott kesz
    lettem.

    kerdezo: Tudod, az Unix++ gondolata meg mindig nem hagy nyugodni.
    Valahol valaki biztos meg fogja probalni.

    Stroustrup: Nem, miutan elolvastak ezt a beszelgetest.

    kerdezo: Sajnalom, de nem hiszem hogy ebbol barmit is
    megjelentethetnenk.

    Stroustrup: De ez az evszazad sztorija. Csak szeretnem, ha
    programozotarsaim emlekeznenek ram, es arra, amit ertuk tettem. Tudod
    mennyit keres egy C++ programozo manapsag?

    kerdezo: Legutobb ugy hallottam, egy igazan joert akar orankent 70-80
    dollart is megadnak.

    Stroustrup: Latod? Es fogadok, hogy fizetesben ennyit. Szemmel tartani
    az osszes csapdat amit beleraktam a C++-ba nem egyszeru. Es mint ahogy
    mar mondtam, mindegyik C++ programozo valamilyen misztikus esku altal
    kotelezve erzi magat, hogy a nyelv minden egyes atkozott elemet minden
    projekthez felhasznalja. Tulajdonkeppen ez nagyon zavar, annak ellenere,
    hogy az eredeti celomat szolgalja. Ennyi ido utan, mar majdnem szeretem
    ezt a nyelvet.

    kerdezo: Ugy erted, eddig nem szeretted?

    Stroustrup: Utaltam. Olyan esetlen, nem gondolod? De amikor elkezdtek
    befolyni a jogdijak a konyvbol... azt hiszem, erted.

    kerdezo: Egy pillanat. Mi van a hivatkozasokkal? El kell ismerned,
    javitottal a C mutatoin.

    Stroustrup: Hmm. Ezen gyakran toprengtem. Eredetileg igy gondoltam en
    is. Aztan egyszer beszelgettunk errol egy, mar a kezdetektol C++-ban
    programozo sraccal. O azt mondta, sohasem emlekszik hogy a valtozoi
    hivatkozottak vagy sem, ezert inkabb mindig mutatokat hasznalt. Azt
    mondta, a csillag mindig emlekezteti [a C-ben a hivatkozas jele a
    csillag, mint ahogy a Pascalban a ^ - a ford.].

    kerdezo: Nos, ennel a pontnal szoktam altalaban azt mondani, hogy
    koszonom szepen az interjut, de ez ebben az esetben nem igazan tunik
    helyenvalonak.

    Stroustrup: Igerd meg, hogy megjelentetitek. A lelkiismeretem mar a
    jobbik felemet marcangolja.

    kerdezo: Nos, majd ertesitelek, de azt hiszem, mar most tudom, mit fog
    mondani a szerkesztom.

    Stroustrup: Egyebkent is, ki hinne el? Habar, tudsz kuldeni egy
    masolatot a felvetelrol?

    kerdezo: Igen.

    Vege.''

Új hozzászólás Aktív témák