Hirdetés
Új hozzászólás Aktív témák
-
jattila48
aktív tag
válasz
pmonitor
#6213
üzenetére
A #6179 példa valóban jó, de dabadab kritikájában is van azért igazság, annál is inkább, hogy ennél az egyszerű szerkezetű példánál sokszor bonyolultabb a vezérlésszerkezet, amit nem lehet ilyen szépen struktúrálttá alakítani.
Egyébként nem tudom mit nem értesz meg, senki nem mondta, hogy ha lehet és ésszerű, akkor ne struktúrált szerkezetet használj. Csak arról írtunk, hogy nem mindig célszerű erőltetni a dolgot. Van ahol igenis helyénvaló a goto használata (C hibakezelés), a mindenáron történő struktúrált kikerülése pedig kifejezetten antipattern. A késsel is megvághatod magad, mégis használod pl. kenyérszeletelésre, ellenben fogpiszkálónak valóban nem a legalkalmasabb. Csak erről beszéltünk. Hogy mit írt Dijkstra több mint 50 évvel ezelőtt, az csak egy dolog. Akkor még nem volt eseményvezérelt és objektumorintált programozás, nem léteztek grafikus UI-k, stb. Az akkori környezetben teljesen helyénvaló volt a szigorú struktúrált programozási elv, ami egyébként az assembly/Fortran nyelvek kényszerű használatából adódó programozási krízis megoldására született. Az általa leírt struktúrált programozási elveket/szerkezeteket automatikusan (sémaszerűen) meg lehetett valósítani assembly és fortran nyelveken természetesen goto-k használatával. Azonban a probléma ott volt, hogy (mivel a nyelvekben nem voltak struktúrált szerkezetek beépítve), sokszor elég ötletszerűen (túl intuitívan) alkalmazták a goto-t. Másrészt a memóriával is spórolni kellett, úgyhogy ha volt egy már egyszer megírt programrészlet, egyszerűen goto oda, majd vissza... Na ennek a helyzetnek a kezelésére született Dijkstra (aki egyébként kiváló tudós volt) struktúrált programozás javaslata. Azóta a helyzet sokat változott. Részben születtek struktúrált szerkezeteket támogató programozási nyelvek, részben pedig ahogy írtam, az objektumorintáltság és eseményvezéreltség is előtérbe került (ezeket nem igazán lehet tankönyvszerűen struktúrált módon kezelni). A Dijkstra féle megközelítést most is érdemes szem előtt tartani, de eszetlenül erőltetni (goto kategórikus tiltása), szerintem butaság.
Végezetül engedj meg egy személyes megjegyzést, amit egyáltalán nem bántásnak szánok. A hozzászólásaidból az jön le, hogy kezdő vagy a programozásban (ez persze egyáltalán nem baj), és nem írtál még igazán nagyobb programot. Ragaszkodsz bizonyos (túlságosan is megkövesedett) elvekhez, amit a tanáraidtól tanultál, csak a gyakorlat sajnos más, mint a tankönyvi példák. Ha majd windows (Linux) rendszeren kell nagyobb programokat írnod, rájössz, hogy szépek az elvek, de időnként érdemes testreszabni őket.
Új hozzászólás Aktív témák
● olvasd el a téma összefoglalót!
● ha kódot szúrsz be, használd a PROGRAMKÓD formázási funkciót!
- Formula-1
- XMLTV EPG letöltő progi
- Graphics: Telefonvásárlási kálváriám....avagy clickbait cím: Horror a hardveraprón
- Azonnali fotós kérdések órája
- Mozilla Firefox
- Kormányok / autós szimulátorok topikja
- OLED TV topic
- ASZTALI GÉP / ALKATRÉSZ beárazás
- Okos otthon - Home Assistant, openHAB és más nyílt rendszerek
- Nem tudom a dal címét, előadóját
- További aktív témák...
- AKCIÓS/GARIS/ÚJ/HASZNÁLT/ Ryzen 7 5700/16GB DDR4/RX 6800 XT 16 GB/ 500 GB M.2 SSD/1 TB HDD
- Chieftec GPS-450AA-101 A 450W ATX tápegység
- KERESEM - Sony MDR-MV1 / Edition XV / HEDDphone D1
- Eladó MSI Z790-A Pro Wifi alaplap + Intel I5 13600k processzor
- FPSRaptor PC - i7-4790k / RX580 8GB / 16GB DDR3 / 1TB SSD
- Apple iPhone 15 256GB Sárga Független Bontatlan / 27% áfás számla
- Lenovo ThinkPad X1 Carbon Gen 9 i7-1185G7 32 GB RAM Iris Xe 4k kijelző garancia
- BESZÁMÍTÁS! MSI Z170A Krait Gaming 3X alaplap garanciával hibátlan működéssel
- Itachi! Felsőkategóriás Gamer PC! Csere-Beszámítás! R7 9800X3D/ 9070XT / 32GB DDR5 / 2TB Nvme SSD
- Lenovo ThinkPad X1 Carbon Gen 10 - 27% ÁFÁS (0332)
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest


