saxus (statz) | #9, Agyfasz (419) |
1398 | #1c3e | ^ | Idézet | Mon, 30 Apr 2012 22:13:19 +02 |
84.3.*.* | *.catv.pool.telekom.hu |
Van elég sok nyomós oka, hogy nem divat a globális változó. (Unit testing problémái, miért is kellene X modulnak hozzáférni Y modul belső adatszerkezetéhez, stb.)
De mondom. Mivel, ha valaki C-ben kódol, akkor nem azért kódol C-ben, mert azzal akar foglalkozni, hogy mikor melyik registerbe pakolja a dolgokat meg, hogy most registeren vagy stacken adjon át paramétereket a következő függvénynek, hogy gyorsabb legyen, az egyéb architekturális, mikroarchitektúrális finomságokról meg végképp nem beszélve, ha rendszert akarsz programozni. Ugyanez egyel magasabb szinten, mikor alkalmazást fejlesztek, akkor kurvára nem érdekel, hogy most egy stringet hol, mikor hogyan buzulja be a ramba, hogyan csinálja az összefűzést, hogyan minimalizálja a memóriafelhasználást, stb. hanem az érdekel, hogy nekem van két stringem, amiből egyet akarok visszakapni. Vagy amikor API szinten gondolkodok, és egy API-t *használok*, kurvára nem érdekel, hogy pl. egy Kosár osztály hogyan valósítja meg a mentés műveletet, én egy Kosár objektumon akarok egy mentés műveletet meghívni. Ha nem érted ennek az absztrakciós szintnek a lényegét, hát sorry, ne kódolj PHP-ben se, mert ott sem kell malloc()-al foglalkozni. |