![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 3 Dołączył: 21.05.2013 Ostrzeżenie: (10%) ![]() ![]() |
Uprzedzam. Chodzi czy dobrze konstruuje ![]() Ten post edytował alex011251 25.05.2013, 17:39:28 |
|
|
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 14 Dołączył: 28.11.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
1. Co konkretnie chcesz osiągnąć, jakie zadanie ma pełnić ta klasa?
2. Jakie odniesienie ma nazwa klasy do tego co jest w środku? |
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 3 Dołączył: 21.05.2013 Ostrzeżenie: (10%) ![]() ![]() |
Klasa blokuje dodawanie "lewych" linkow. BaiscAuth - nazwa komunikatu gdy grafika zabezpieczona
![]() Jak ktos skorzyst z tagu img na forach to to ma sprawdzac czy nie jest lewa grafika. Badz jakis url czy cos jezeli korzysta z innego tagu typu flash itp Obiekt musze bardziej przystosowac by spelnial funkcje. To jest fakt Ten post edytował alex011251 25.05.2013, 18:41:16 |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 14 Dołączył: 28.11.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Mimo wszystko nadal nie przekonuje mnie nazwa tej klasy, zwłaszcza przedrostek "class".
Co do samego kodu:
Właściwie to nic nie powinieneś opakowywać w HTML i ogólny zarys wyświetlania danego komunikatu/błędu. Klasa raczej powinna sprawdzać czy faktycznie link jest obrazkiem i zwracać true/false - do tego oczywiście odpowiednia metoda. Dlatego też na zewnątrz powinieneś się tym wynikiem posłużyć i wtedy wyświetlić komunikat, przekierować czy cokolwiek innego.
Niestety nie mówi to zbyt wiele, jedynie po zapisie można stwierdzić, że "zmienna" zostanie zwrócona. Mała rada: nie mieszaj angielskiego z polskim i jeszcze jakim językiem co by Ci do głowy przyszedł. Korzystaj z jednego (z reguły angielski). Do tego precyzuj nazwy metod, klas, zmiennych tak by było zrozumiałe co konkretnie dana rzecz robi. |
|
|
![]()
Post
#5
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 3 Dołączył: 21.05.2013 Ostrzeżenie: (10%) ![]() ![]() |
na nazwy poki co nie patrz.
|
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 14 Dołączył: 28.11.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Nie wiem dlaczego konstruktor robi aż tyle u Ciebie, przekaż w nim zaledwie adres obrazka, następnie stwórz metodę, w której odpalisz całego cURL, następnie przetworzysz informację, a dopiero później sprawdzaj czy obrazek jest faktycznie obrazkiem.
W chwili obecnej zrobiłeś opakowanie przy pomocy klasy na coś, co mogłoby spokojnie być zwykłą funkcją. |
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 3 Dołączył: 21.05.2013 Ostrzeżenie: (10%) ![]() ![]() |
czyli
construktor jakas metoda - z curlem i sprawdzanie w kolejnej metodzie czy jest czy nie ma. ? OOP myslalem ze bedzie latwiejsze. A dluga droga przedemna |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 14 Dołączył: 28.11.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
No tak to mniej więcej powinno wyglądać. Każda metoda powinna mieć jakieś zajęcie (czyt. coś wykonuje/zwraca/ustawia/modyfikuje etc.), lecz musi to być konkretne zadanie, nie moż robić wszystkiego.
|
|
|
![]()
Post
#9
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 3 Dołączył: 21.05.2013 Ostrzeżenie: (10%) ![]() ![]() |
Ale nie dziala |
|
|
![]()
Post
#10
|
|
![]() Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
Zmienne to nie właściwości klasy (zapomniałeś o $this)
|
|
|
![]()
Post
#11
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 3 Dołączył: 21.05.2013 Ostrzeżenie: (10%) ![]() ![]() |
|
|
|
![]()
Post
#12
|
|
![]() Grupa: Zarejestrowani Postów: 2 958 Pomógł: 574 Dołączył: 23.09.2008 Skąd: wiesz, że tu jestem? Ostrzeżenie: (0%) ![]() ![]() |
Dobra rada... narazie pisz strukturalnie a w międzyczasie poczytaj parę poradników o OOP, zobacz jak to wygląda w popularnych frameworkach (CI, Zend, Kohana) i wróć do pisania gdy uznasz, że poznałeś podstawy Ten post edytował CuteOne 25.05.2013, 22:41:30 |
|
|
![]()
Post
#13
|
|
Grupa: Zarejestrowani Postów: 40 Pomógł: 3 Dołączył: 21.05.2013 Ostrzeżenie: (10%) ![]() ![]() |
Strulturalnie opanowane dlatego chcialem przejsc do OOP . Metoda prob i bledow.
Ale czasem po prostu nie rozumiem . Jezeli cos jest publiczne to powinno wspolgrac. A nie jak ze usune oddzielajace public function Jak wykonam tak to działa Ale jak chce oddzielic jak wyzej to juz nie
Ten post edytował alex011251 25.05.2013, 22:51:25 |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 81 Pomógł: 14 Dołączył: 28.11.2010 Skąd: Kraków Ostrzeżenie: (0%) ![]() ![]() |
Do każdej metody/właściwości zawartej w tej klasie (lub też tej, po której dziedziczysz, choć nie zawsze) odwołujesz się poprzez $this, to logiczne. Ponadto korzystaj z widoczności w klasach private/protected/public, bo samo "function" nie jest poprawne.
Tak jak napisał CuteOne, przeczytaj kilka poradników o OOP, oraz poznaj zasady takie jak SRP, KISS, DRY i wiele innych, bo w chwili obecnej szukasz problemów na siłę i próbujesz stworzyć coś co nie do końca tak powinno wyglądać. Przeczytaj też o metodach magicznych, bo nie ma czegoś takiego jak __descruct, w dodatku nie wywołuje się tej metody z zewnątrz. |
|
|
![]() ![]() |
![]() |
Wersja Lo-Fi | Aktualny czas: 14.08.2025 - 11:16 |