Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> global, zle ?
nasty
post
Post #1





Grupa: Zarejestrowani
Postów: 634
Pomógł: 14
Dołączył: 27.05.2006
Skąd: Berlin

Ostrzeżenie: (0%)
-----


Chcialbym sie dowiedziec czmu wszyscu na forum tak bardzo nie lubia global w klasach i funkcjach.
Jak oladalem sobie kod typo3 to tam jest pelno globalow zreszta tak jest w b. duzej ilosci skryptow ...
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Ludvik
post
Post #2





Grupa: Przyjaciele php.pl
Postów: 698
Pomógł: 3
Dołączył: 28.03.2004
Skąd: Wrocław

Ostrzeżenie: (0%)
-----


Cytat
$_CP => CrystalPage ale na localu od dawna zmienilem na $_SYS

Rozumiem, że było fajną rozrywką zmieniać wszelkie odwołania do zmiennej $_CP na $_SYS.
Cytat
a co mi z kontroli typow jak ja tam chowam tylko zmienne comfig-u i db?
np. gdzie jest folder z cachem albo user do bazy danych...
tutaj niema co sie bawic w typy w takim przypadku

Czyli oczekujesz, że zawsze znajdzie się tam tablica? Czyli jednak potrzebujesz kontroli typów... Zrozum, że do tej zmiennej możesz przypisać co chcesz, gdzie chcesz i kiedy chcesz. Na dobrą sprawę przed każdym użyciem wypadało by sprawdzić, czy wciąż zawartość jest poprawna. Chcę zobaczyć, jak piszesz do tego testy... Bo chyba poważny CMS, powinien być przetestowany?

Takim sposobem otwierasz sobie furtkę do błędów, których nie wyłapią Ci żadne testy. Ja, kiedy przekazuję obiekt z referencją do DAO, wiem, że dostanę wewnątrz klasy zawsze to, czego potrzebuję. Natomiast po twojej zmiennej $_DB nie wiem czego się mam spodziewać? AdoDB? PEAR:(IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) B? Propel? PDO? Moje klasy zawsze będą poprawne, bez względu na to, co przekażesz im jako obiekt DAO, bo zawsze interfejs będzie prawidłowy. Twoje zależą od zmiennej globalnej, nad którą nie masz kontroli. W momencie testu nie jesteś w stanie zapewnić, że ta zmienna zawsze będzie poprawna.

Na dobrą sprawę, wywołując dwa zapytania, a pomiędzy nimi jakieś instrukcje, możesz nawet nie dowiedzieć się, że używasz innej bazy danych...
Go to the top of the page
+Quote Post

Posty w temacie
- nasty_psycho   global, zle ?   16.07.2006, 08:26:24
- - Cysiaczek   Globale są "be" z kilku powodów. Je...   16.07.2006, 08:33:47
- - nasty_psycho   no ale jak robie sobie program i nie mam zamiary z...   16.07.2006, 08:41:04
- - Cysiaczek   No dobrze. Możesz tak zrobić i będzie działało Po...   16.07.2006, 08:53:31
- - Ludvik   Odpowiedz sobie na takie pytania: - Jak się upewni...   16.07.2006, 10:27:38
- - nasty_psycho   CytatJak się upewnisz, czy zawartość zmiennej glob...   16.07.2006, 10:38:30
- - Ludvik   CytatCytatJak się upewnisz, czy zawartość zmiennej...   16.07.2006, 10:52:12
- - nasty_psycho   Cytat$_CP (zupełnie nieintuicyjna nazwa...) ...   16.07.2006, 11:04:48
- - NuLL   Moze zdanie o slowie global jest takie ze powinni ...   16.07.2006, 11:25:59
- - nasty_psycho   CytatTypo3 - hmm - zajrzyj sobie do eZ publisha i ...   16.07.2006, 11:28:01
|- - mike_mech   Cytat(nasty_psycho @ 16.07.2006, 12:28 ) ...   16.07.2006, 11:30:02
|- - NuLL   Cytat(nasty_psycho @ 16.07.2006, 12:28 ) ...   16.07.2006, 11:36:13
- - Ludvik   Cytat$_CP => CrystalPage ale na localu od ...   16.07.2006, 11:32:10
- - nasty_psycho   CytatOT: Ty dddddddduuuuuuuuuuzzzzzzzzzzoooooooooo...   16.07.2006, 11:45:40
- - Ludvik   CytatPo drugie zarowno $_SYS jak i $_DB ...   16.07.2006, 11:53:52
- - NuLL   CytatPo drugie zarowno $_SYS jak i $_DB ...   16.07.2006, 11:55:49
- - Vomit   NuLL, nie krzycz tylko spokojnie wyjasniaj Zmien...   16.07.2006, 12:08:49
- - Strzałek   Cytat"Krowa, która dużo ryczy, mało...   16.07.2006, 12:23:52
- - tiraeth   Gdyby globale były super fajne i bezpieczne, to tw...   16.07.2006, 12:42:01
- - nasty_psycho   Sa mozliwosci rozbudowy nawet b. duzo jest ok 10 k...   16.07.2006, 13:03:14
|- - mike_mech   Cytat(nasty_psycho @ 16.07.2006, 14:03 ) ...   16.07.2006, 13:12:08
- - nasty_psycho   to to znam ale mi chodzi o to w moim kodzie pozmie...   16.07.2006, 13:17:58
- - Ludvik   Cytat@Ludvik: tak to jest naciagane i to bardzo ,...   16.07.2006, 13:41:39
- - Cysiaczek   Ale się postów namnożyło Nasty: Ob...   16.07.2006, 13:58:35
- - nasty_psycho   CytatNieprzemyślany projekt rodzi problemy przy ro...   16.07.2006, 13:59:49
- - acztery   pokaz ten Twój CMS ciekaw jestem co to za cudo. Na...   16.07.2006, 15:16:29
- - nasty_psycho   Cytatpokaz ten Twój CMS ciekaw jestem co to za cud...   16.07.2006, 15:23:57
- - tiraeth   http://wortal.php.pl/wortal/artykuly/php/p...asieg...   16.07.2006, 15:54:50
- - nasty_psycho   no strasznie mi pomogles, jestem dozgonnie wdziecz...   16.07.2006, 16:03:43
- - Diwi   Haha, nie wiem co powiedzieć. Pomijam to że jest b...   16.07.2006, 16:19:31
- - hwao   Pokaże Ci ciekawy sposób Kodregister_globals = On ...   16.07.2006, 16:30:46
- - nasty_psycho   ~hwao: Przekonales mnie (naprawde!), i dzieki...   17.07.2006, 07:49:24
- - Vomit   fipaj i hwao zwrocili ostatnio uwage na wzorzec Re...   17.07.2006, 09:47:55
- - tiraeth   Cytat(nasty_psycho @ 17.07.2006, 08:49 ) ...   17.07.2006, 10:08:11
- - nasty_psycho   ~tiraeth: ja zobaczylem tylko jak "wyglada...   17.07.2006, 10:13:49
- - tiraeth   Edit: Wracając do posta hwao, który jest b...   17.07.2006, 10:21:59
- - nasty_psycho   ok, koniec klutni ! Postanowielm ze poprawie,...   17.07.2006, 10:33:02
- - NuLL   Cytat@NuLL: z tego co widze jak myslisz o budowie ...   17.07.2006, 20:30:20
- - hwao   ja umie ;] daj mi tylko zrodla ;] Swoja droga, to...   17.07.2006, 21:15:12
- - NuLL   CytatSwoja droga, to jak Twoj system potrafily pol...   17.07.2006, 21:40:05
- - nasty_psycho   no, panowie, moze wreszcie mi powiecie czy teraz j...   18.07.2006, 09:38:41
- - hwao   Jeżeli to poprafiles, to dobrze... Co do kod...   18.07.2006, 10:07:09
- - nasty_psycho   tak, no wiem jeszcze nie wszystkie global sa usuni...   18.07.2006, 10:16:30
- - acztery   nasty_psycho wiem ze to nie ma związku z tematem a...   18.07.2006, 10:21:31


Reply to this topicStart new topic
2 Użytkowników czyta ten temat (2 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 11.10.2025 - 18:12