Compiler
Auth Gábor
franko at mail.rgstudio.hu
Tue May 6 14:05:38 CEST 2003
Halihó!
2003. május 5. 23.20 dátummal Csobolyó János ezt írta:
> megprobalom leirni en hogyan csinaltam
> user_sring = (5+A)(16-(2*3))/F(1)
> "A" az egy valtozo amiben mondjuk 8 van
> az F az egy fugveny ami mondjuk ezt csinalja f(n)=n*2
> elkezdek a string elejerol vegig menni:
Én csináltam (egy programozás feladat megoldása miatt) matematikai
képletfoldolgozót. Lett talán 30 sor Java nyelven. A lényege annyi volt,
hogy regexp-el kerestem precedencia-sorrendben a műveleti jeleket, majd a
jeleknek megfelelő 1, 2 vagy 3 operandusra ismét meghívtam az algoritmust
magát (rekurzív feldolgozás), amiből akkor tért vissza (megfelelő
értékkel) egy szinttel feljebb, amikor már nem talált operátort. Rekurzió
nélkül ilyen feladatot megoldani igencsak merész dolog... hihetetlen sok
rejtett hibát lehet ejteni a kódban.
Másrészt szerintem ASM nyelven PC-t programozni manapság nagyon
értelmetlen. Egy jó C++ fordító sokkal jobb kódot szokott készíteni, mint
amit kézzel össze lehet szenvedni, illetve a programozói hibák 99%-a
kiesik C++ nyelven, a maradékra meg hamar fény derül...
> en iranyadonak a visual basic 6-ost tartom, erdemes megnezni mit fordit
> messze leveri a C, delphi forditot (ps: errol nem akarok vitat
> inditani. ezt en tenykent kezelem (ugyanis probaltam))
Szerintem ne kezeld tényként, nyugodtan fejtsd ki, hogy mit értesz ez
alatt... mert tapasztalatom szerint VB6 által készített kód kínkeservesen
hordozható (Win architektúrán belül maradva!!!), míg egy C/C++ sokkal, de
sokkal jobb kódot eredményez... ez is tapasztalat... próbáltuk... :)
Másrészt a srác, aki VB-ben programozott több évig, igencsak meglepődött
a C++ nyelv tudásától... aki nem tudja megérteni (sokaknak okoz
nehézséget!) a C++ erejét, az csak rossz kódot képes csinálni C++
nyelven... hiába... egy VB könyvben a teljes nyelv leírása alig 100
oldal, a többi a környezet, míg C++ nyelvről (és csak a nyelvről!!!)
1500-2000 oldalas könyvek vannak.
--
Frank O'Yanco -=- Mobil +36-70/312-1856 +36-30/368-7792 -=- ICQ: 49179141
FreeBSD (current stable branch) - Toshiba Satellite 1410
Key fingerprint E99D 1A55 0DF2 3AAC 2A15 FD55 0D71 B88D 35E5 C50D
More information about the Elektro
mailing list