![]() |
![]() |
![]() ![]()
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 ... |
|
|
![]() |
![]()
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... |
|
|
![]() ![]() |
![]() |
Aktualny czas: 11.10.2025 - 18:12 |