![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 37 Pomógł: 0 Dołączył: 1.08.2008 Ostrzeżenie: (0%) ![]() ![]() |
Czy ten kod jest dobry? Uczę się obiektowości i zastanawiam się czy dobrze to napisałem. Baze danych zrobiłem jedną klasą, użytkownika drugą, to chyba jest dobrze. Tylko nie wiem czy dobrze to rozwiązałem, że do klasy użytkownik przekazuję obiekt bazy danych. Proszę, napiszcie mi co myślicie o tym kodzie, czy mogę pisać dalej, czy może to jest w ogóle bez sensu (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) . Nie chodzi mi o idealny sposób na zapis tego kodu(każdy z Was pisze troszeczkę inaczej), tylko o to czy mogę to rozwiązać tak jak to zrobiłem, czy mój sposób nie kłóci się z zasadami programowania obektowego. pozdrawiam! Ten post edytował erix 12.06.2009, 14:13:14
Powód edycji: [erix] przeniosłem
|
|
|
![]() |
![]()
Post
#2
|
|
Grupa: Zarejestrowani Postów: 984 Pomógł: 41 Dołączył: 16.03.2002 Skąd: Płock Ostrzeżenie: (0%) ![]() ![]() |
1) Konstruktor służy (w teorii) wyłącznie do przypisywania obiektowi pewnych wartości więc ten mysql_connect tam jest bez sensu, powinien się raczej znaleźć w metodzie connect(). W przypadku rozszerzania klasy miałbyś problem, poza tym ograniczasz sobie/innym pole manewru.
2) Pola w klasie mysql powinny być protected nie private. W przypadku rozszerzania klasy nie byłyby dostępne. 3) te przekazywanie uchwytu do mysqla dla użytkownika jest bez sensu, lepiej skorzystać z singletona bądź wzorca factory z jakiejś globalnej klasy 4) klasy nie powinny wyświetlać żadnych błędów, ponieważ narzucasz je z góry mimo, że mogą być niepotrzebne. Zamiast tego wyrzucaj wyjątek, który ktoś może obsłużyć lub nie - ma wybór. Ten post edytował em1X 25.06.2009, 15:51:42 |
|
|
![]() ![]() |
![]() |
Aktualny czas: 16.10.2025 - 21:25 |