Ú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!
- AMD Navi Radeon™ RX 9xxx sorozat
- Otthoni hálózat és internet megosztás
- OLED monitor topic
- Kínai és egyéb olcsó órák topikja
- gban: Ingyen kellene, de tegnapra
- Vallás
- Allegro vélemények - tapasztalatok
- Automata kávégépek
- Milyen egeret válasszak?
- S.T.A.L.K.E.R.: Shadow of Chernobyl
- További aktív témák...
- HIGH-END GAMER PC Ryzen 7 9800X3D / RTX 5080 16GB / 32GB DDR5 / 2TB NVMe - Beszámítás
- Lenovo Tab M11 / TB330FU
- SZUPER Akcióban Új Bontatlan Dyson V15 Origin 3 év gyártói garanciával Azonnal Átvehető
- Bontatlan Intel Core ULTRA 9 285K (24mag!) + hűtött VRM-es Z890 alaplap! GAR/SZÁMLA (a Te nevedre)!
- Crucial Pro 32GB KIT DDR5 5600MHz CL46
- iKing.Hu - Apple iPhone 13 Pro Max Graphite ProMotion 120 Hz, Pro kamerák 256 GB-100%-3 hó gari!
- GYÖNYÖRŰ iPhone 13 Pro 256GB Graphite -1 ÉV GARANCIA - Kártyafüggetlen, MS4409
- GYÖNYÖRŰ iPhone 14 Pro Max 256GB Deep Purple - 1 ÉV GARANCIA -Kártyafüggetlen, MS4279
- BESZÁMÍTÁS! Intel Core i5 8500 6 mag 6 szál processzor garanciával hibátlan működéssel
- HIBÁTLAN iPhone 13 128GB Green-1 ÉV GARANCIA - Kártyafüggetlen, MS4347
Állásajánlatok
Cég: Laptopműhely Bt.
Város: Budapest
Cég: PCMENTOR SZERVIZ KFT.
Város: Budapest


