![]() ![]() |
Post
#21
|
|
|
Grupa: Przyjaciele php.pl Postów: 7 494 Pomógł: 302 Dołączył: 31.03.2004 Ostrzeżenie: (0%)
|
no i wedlug was jak mozna w alternatywny sposob dla kazdej klasy / funkcji dac mozliwosc korzystania z $_DB ? zeby nie bylo balaganu i w kazdej klasie miec public $dblink. No kurcze, przecież to podstawy programowania obiektowego. |
|
|
|
Post
#22
|
|
|
Grupa: Zarejestrowani Postów: 634 Pomógł: 14 Dołączył: 27.05.2006 Skąd: Berlin Ostrzeżenie: (0%)
|
to to znam ale mi chodzi o to w moim kodzie pozmieniac, bo nie chce mi sie zmieniac w kazdej prawie funkcji $_DB na jakies tam linki do singletona, za duzo czasu mi to zabierze.
a tak pozatym to testowalem wszystko u mnie na globalach i jest dobrze w niczym nie przerzkadza. ps. Joomla (mambo) uzywa global - wordpress tez (wiem ze to nie jest 100% OOP ale ...) gluwnie to typo3 mnie troche uspokoil bo najpierw sie naprawde matrwilem. Ten post edytował nasty_psycho 16.07.2006, 13:33:58 |
|
|
|
Post
#23
|
|
|
Grupa: Przyjaciele php.pl Postów: 698 Pomógł: 3 Dołączył: 28.03.2004 Skąd: Wrocław Ostrzeżenie: (0%)
|
Cytat @Ludvik: tak to jest naciagane i to bardzo (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) , to samo mozna zrobic z kazda zmienna. a $_DB nie jest zmienna typu array, ja w cp uzywam tylko ADO i nic innego Wciąż nie dotarło do Ciebie moje przesłanie. Dla mnie możesz używać dowolnego typu/interfejsu/klasy bazowej. Ja i tak sobie zrobię z tą zmienną co tylko będę chciał. Ba, nawet nie będę musiał się namęczyć. Chyba nie powiesz, że ta klasa nie będzie bezpieczna...
ZAWSZE będę miał interfejs, o który mi chodzi... Singleton też zapewni bezpieczeństwo. Cytat Jak kots robi extension to nie bedzie chyba wysadzal sobie cms-u albo hackowac. Bedzie caly dokument o tym jak pisac dodatki do cms-u i tam bedzie jasno napisane zeby tych zmiennych nie uzywac. Rozumiem, że wierzysz w bezbłędnych programistów. Dobre API poza tym da radę bez żadnej dodatkowej dokumentacji. Opis metod powinien starczyć, a nie rozpisywanie się na temat tego, co można zrobić, a czego nie... Jeżeli czegoś nie można zrobić, to ty masz zapewnić, że to się nie stanie. Kusisz los zostawiając furtkę... Kieruj się tym, co napisał Vomit, bo ujął to krótko i ładnie. Taka jest właśnie prawda o zmiennych globalnych... Cytat to to znam ale mi chodzi o to w moim kodzie pozmieniac, bo nie chce mi sie zmieniac w kazdej prawie funkcji $_DB na jakies tam linki do singletona, za duzo czasu mi to zabierze. Nieprzemyślany projekt rodzi problemy przy rozwoju. Miało być pro, a jakoś nie wyszło chyba. Nigdy nie wierzyłem, że porzucając jedną wersję i zaczynając pisać drugą, można zmienić styl pisania w tak znaczny sposób. OT: Popraw bloga. Chwalisz się, że waliduje się, a tak nie jest. Ten post edytował Ludvik 16.07.2006, 13:53:12 |
|
|
|
Post
#24
|
|
|
Grupa: Moderatorzy Postów: 4 465 Pomógł: 137 Dołączył: 26.03.2004 Skąd: Gorzów Wlkp. |
Ale się postów namnożyło (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Nasty: Obrona globali nie ma sensu. Świat poszedł do przodu. Programiści dostając do reki nową klasę chcą jej używać, a nie zastanawiać się, czy klasa nie ma gdzieś jakiegoś globala. Sam, kiedy chcę użyć nowej klasy, patrzę najpierw na interfejs. Od razu wiem, co musze przekazać do konstruktora, jakie ewentualnie metody potrzebują informacji z zewnątrz. Bardzo jestem zadowolony, kiedy mogę przekazać wartości do konstruktora i cieszyć się z używania getCostam() i setCostam(). Gdybym musiał przejmować się tym, że jakaś metoda w klasie używa globala i muszę zadbać o dostarczenie jego wartosci, to przestaje się robic wesoło :/ Piszesz, że nie chcesz robić frameworka. W porządku. Pisz dla siebie. Zauważ, że sam zwróciłes uwagę na to, że nie chce Ci się zmieniać X wystąpień twojej zmiennej na Singletona. To jest właśnie jedna z nieporządanych cech klasy/aplikacji - olbrzymia ilość miejsc, w których należy dokonac poprawek, jeśli coś zmieniasz. Nieużywanie zmiennych globalnych redukuje ten proces do niezbędnego minimum (czuję się jakbym książkę cytował (IMG:http://forum.php.pl/style_emoticons/default/rolleyes.gif) ). Rozumiem, że twój post był próbą zwrócenia uwagii na istnienie tego typu zmiennych w wielu publikacjach, które są przecież używane. Coż - one kiedyś muszą zostać przepisane lub napisane od nowa. Pozdrawiam Ten post edytował Cysiaczek 16.07.2006, 14:00:35 |
|
|
|
Post
#25
|
|
|
Grupa: Zarejestrowani Postów: 634 Pomógł: 14 Dołączył: 27.05.2006 Skąd: Berlin Ostrzeżenie: (0%)
|
Cytat Nieprzemyślany projekt rodzi problemy przy rozwoju. Miało być pro, a jakoś nie wyszło chyba. Nigdy nie wierzyłem, że porzucając jedną wersję i zaczynając pisać drugą, można zmienić styl pisania w tak znaczny sposób. problemy przy rozwoju? u mnie global nie sa problemem i nie mam aktualnie zadnych problemow z rozwojem (cms-u oczywiscie (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) ). Jutro postaram sie uplodowac to co mam napisane do tej pory. ogulnie to narazie nie bede zmienial niczego bo jest za duzo pracy przy tym, ale dziekuje za opinje. |
|
|
|
Post
#26
|
|
|
Grupa: Zarejestrowani Postów: 945 Pomógł: 7 Dołączył: 15.03.2005 Skąd: katowice Ostrzeżenie: (0%)
|
pokaz ten Twój CMS ciekaw jestem co to za cudo. Nasto ja robie byki ortograficzne ale Ty bijesz mnie o stokroć. (IMG:http://forum.php.pl/style_emoticons/default/smile.gif)
Ten post edytował acztery 16.07.2006, 15:18:32 |
|
|
|
Post
#27
|
|
|
Grupa: Zarejestrowani Postów: 634 Pomógł: 14 Dołączył: 27.05.2006 Skąd: Berlin Ostrzeżenie: (0%)
|
Cytat pokaz ten Twój CMS ciekaw jestem co to za cudo. Nasto ja robie byki ortograficzne ale Ty bijesz mnie o stokroć. ~acztery: bedzie gotowy za jakis 2-3 misiace ale screeny mozesz zobaczyc na stronie, a co do ortorafji to **** ***** ***** ***** (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) (poprostu nie chce sie za bardzo powtarzac) |
|
|
|
Post
#28
|
|
|
Grupa: Przyjaciele php.pl Postów: 1 789 Pomógł: 41 Dołączył: 30.10.2003 Skąd: Wrocław Ostrzeżenie: (0%)
|
|
|
|
|
Post
#29
|
|
|
Grupa: Zarejestrowani Postów: 634 Pomógł: 14 Dołączył: 27.05.2006 Skąd: Berlin Ostrzeżenie: (0%)
|
no strasznie mi pomogles, jestem dozgonnie wdzieczny za tak bardzo solidnie napisany i rozbudowany artukul, myslalem ze nigdzie sie nie dowiem jak pacowac ze zmiennymi (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif)
|
|
|
|
Post
#30
|
|
|
Grupa: Zarejestrowani Postów: 245 Pomógł: 4 Dołączył: 22.01.2005 Ostrzeżenie: (0%)
|
Haha, nie wiem co powiedzieć. Pomijam to że jest bardzo krótki i g**no daje to jeszcze ma błędy w kodzie php (IMG:http://forum.php.pl/style_emoticons/default/exclamation.gif)
Cytat
Ten przykład wyświetli: Przed funkcją zmien $iNumber = 5 W funkcji zmien $iNumber = 26 Po funkcji zmien $iNumber = 26 Dziwne, u mnie na localhost wyświetla: Cytat Przed funkcją zmien $iNumber = W funkcji zmien $iNumber = Po funkcji zmien $iNumber = Pozdrawiam |
|
|
|
Post
#31
|
|
|
Developer Grupa: Moderatorzy Postów: 2 844 Pomógł: 20 Dołączył: 25.11.2003 Skąd: Olkusz |
Pokaże Ci ciekawy sposób
Kod register_globals = On I jedizemy tak, strona.php?_SYS=lol
Wynik Kod lol Pomijajac juz inne aspetky bezpieczenstwa --- No tak, powinno byc On nie Off ale to tylko dla tego że kopiowałem z mojego php.ini i zapomniałem zamienic. Przykład był wymyslany jako najprostrzy jaki wpadł mi w tym momecie do głowy, ale obrazuje co sie moze stac... jego zadaniem nie bylo pokazania jakiegos "super" zagrozenia tylko ujawnienie ze ono jest mozliwe(!) i dlaczego nie powinno sie stosowac global. Taka sytuacja nie miala by miejsca gdyby obiekt byl tworzony wewnatrz jakiegos obiektu. Także przykład ma działać "na wyobraznie" a nie do gdybania co by było gdyby... |
|
|
|
Post
#32
|
|
|
Grupa: Zarejestrowani Postów: 634 Pomógł: 14 Dołączył: 27.05.2006 Skąd: Berlin Ostrzeżenie: (0%)
|
~hwao: Przekonales mnie (naprawde!), i dzieki, zaczolem zmieniac powoli $_DB;
jak skoncze to dam ci znac i dasz mi kolejne uwagi, ok ? |
|
|
|
Post
#33
|
|
|
Grupa: Zarejestrowani Postów: 122 Pomógł: 0 Dołączył: 23.01.2006 Ostrzeżenie: (0%)
|
fipaj i hwao zwrocili ostatnio uwage na wzorzec Registry. W jednej z ksiazek przeczytalem, ze jest to zwykly Singleton.
Chciałbym jednak zapytac czemuby nie zrobic takiego API? Powinno zdialac tak samo a nie korzystamy z Singletona.
|
|
|
|
Post
#34
|
|
|
Grupa: Przyjaciele php.pl Postów: 1 789 Pomógł: 41 Dołączył: 30.10.2003 Skąd: Wrocław Ostrzeżenie: (0%)
|
~hwao: Przekonales mnie (naprawde!), i dzieki, zaczolem zmieniac powoli $_DB; jak skoncze to dam ci znac i dasz mi kolejne uwagi, ok ? ~nasty_psycho, zastanawiam się tylko gdzie zostawiłeś narząd, który nazywa się M-Ó-Z-G-I-E-M. Jak byś chociaż przeczytał zawartość tego artykułu to być zrozumiał istotę keyword zwanego jako global" title="Zobacz w manualu php" target="_manual (ostatni kod w tym artykule). A tak to mogę tylko Ci pogratulować umiejętności czytania ze zrozumieniem (IMG:http://forum.php.pl/style_emoticons/default/laugh.gif) (IMG:http://forum.php.pl/style_emoticons/default/withstupidsmiley.gif) (IMG:http://forum.php.pl/style_emoticons/default/withstupidsmiley.gif) |
|
|
|
Post
#35
|
|
|
Grupa: Zarejestrowani Postów: 634 Pomógł: 14 Dołączył: 27.05.2006 Skąd: Berlin Ostrzeżenie: (0%)
|
~tiraeth: ja zobaczylem tylko jak "wyglada" ten artykul to az mi sie slabo zrobilo, i mam takie pytanie: czy ty rozumiesz co tu sie pisze w tym topicu? bo chyba nie za bardzo ... :
Cytat A jeżeli pierwszy raz słyszych o definiowaniu używania zmiennych globalnych w funkcjach czy też w klasach, to gratuluję Twojej umiejętności programowania Przeciez caly topic jest o globalach, a ty mnie odsylasz do tekstu gdzie jest napisane co to jest global (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) ! |
|
|
|
Post
#36
|
|
|
Grupa: Przyjaciele php.pl Postów: 1 789 Pomógł: 41 Dołączył: 30.10.2003 Skąd: Wrocław Ostrzeżenie: (0%)
|
Edit: Wracając do posta hwao, który jest błędny.
URL: blabla.php?_SYS=lol Kod register_globals = Off
Returns: Kod register_globals = On
Returns: Kod lol URL: blabla.php Kod register_globals = Off
Returns: Kod rotfl Tak to wygląda (przed chwilą sprawdzałem...) |
|
|
|
Post
#37
|
|
|
Grupa: Zarejestrowani Postów: 634 Pomógł: 14 Dołączył: 27.05.2006 Skąd: Berlin Ostrzeżenie: (0%)
|
ok, koniec klutni (IMG:http://forum.php.pl/style_emoticons/default/tongue.gif) !
Postanowielm ze poprawie, i mozecie zobaczy cesciowe efekty poprawien ( bo nie bardzo mialem czasu) na http://crystalpage.sf.net/code/ , tak lepjej ? |
|
|
|
Post
#38
|
|
|
Grupa: Zarejestrowani Postów: 2 262 Pomógł: 21 Dołączył: 3.05.2004 Skąd: Sopot, Krakow, W-wa Ostrzeżenie: (0%)
|
Cytat @NuLL: z tego co widze jak myslisz o budowie modulow to masz sklonnosci samobujcze Taa..... Ja Ci moge pokazac jak wyglada moj stosunek do zmiennych superglobalnych i globalnych w moim frameworku ktory wykorzystuje na codzien w pracy ? O tak
I moge Ci zagwaratowac ze zaden programista - nawet Ty (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) nie jest w stanie niczego z nim popsuc piszac modul. |
|
|
|
Post
#39
|
|
|
Developer Grupa: Moderatorzy Postów: 2 844 Pomógł: 20 Dołączył: 25.11.2003 Skąd: Olkusz |
ja umie ;] daj mi tylko zrodla ;]
Swoja droga, to jak Twoj system potrafily polozyc zmienen globalne, to nie masz filtrowania zadnych danych... |
|
|
|
Post
#40
|
|
|
Grupa: Zarejestrowani Postów: 2 262 Pomógł: 21 Dołączył: 3.05.2004 Skąd: Sopot, Krakow, W-wa Ostrzeżenie: (0%)
|
Cytat Swoja droga, to jak Twoj system potrafily polozyc zmienen globalne, to nie masz filtrowania zadnych danych... Tzn (IMG:http://forum.php.pl/style_emoticons/default/questionmark.gif) Wszystkie superglobale przed zniszczeniem sa umieszczane w odpowiednich klasach i dostep do kazdej z nich odbywa sie przez filtry (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
|
![]() ![]() |
|
Aktualny czas: 24.12.2025 - 22:44 |