Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Dylemat dotyczący wydajności kodu klasy, nie wiem jaki typ metody będzie wydajniejszy
sebap123
post
Post #1





Grupa: Zarejestrowani
Postów: 253
Pomógł: 1
Dołączył: 26.08.2009
Skąd: Szczecin

Ostrzeżenie: (10%)
X----


Witam,

Pisze właśnie klasę obsługującą konta użytkowników w serwisie. Generalnie każdy użytkownik jest wpisywany do trzech różnych tabel - jedna to ogólnie login, mail itp; druga to dane adresowe; a trzecia dane dotyczące blokad, pochwal itp.
Teraz się zastanawiam, jak będzie lepiej napisać metody edytujące różne dane z tych tabel. Czy lepiej jest napisać parę "wyspecjalizowanych" metod, gdzie każda odpowiada za góra dwie-trzy komórki z jednej tabeli, czy np. jedną duża i ogólna metodę odpowiadającą za wszystko. Zaznaczam też, że nie wszystkie pola będą edytowane tak samo często jak pozostałe.

Macie jakieś porady, czy to nie ma większego znaczenia?
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
enviro
post
Post #2





Grupa: Zarejestrowani
Postów: 11
Pomógł: 0
Dołączył: 6.09.2011
Skąd: Wrocław

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


Chyba do końca mnie nie zrozumiałeś "bastard13".

Po pierwsze, pisząc własną klasę (jak to ją nazwałeś MyMySQLi) masz gotowe narzędzie do wykonywania i obsługi zapytań na bazie funkcji php'owych. (W końcu coś musi sprawdzić czy połączyłeś się z bazą, wykonałeś zapytanie poprawnie etc). I lepiej to zrobić raz w klasie niż kilkaset razy w różnych plikach. To jest podejście OOP. I utrzymanie takiej klasy jest łatwiejsze, a obudowujesz taką klasę tym, co uważasz za niezbędne i wykorzystasz w projekcie.

Napisaną bibliotekę MyMySQLi należy wykorzystać w klasie Users, a nie samych plikach (kontrolerach). Wtedy wywołanie metody $user->saveData($data)->save() wywoła wewnątrz tej metody naszą metodę MyMySQLi::update($data). I wtedy jest to bardzo czytelne i umożliwia dodawanie/edycję w przyszłości metod obu klas, bez konieczności zmiany ich wywołania lub parametrów.

Poza tym komentarze i dokumentacja to niezbędny w takich projektach czynnik do zrozumienia kodu. Raz napisany dobrze komentarz w klasie MyMySQLi i metodzie update() zawsze Ci wyjaśni, o co tak na prawdę chodzi.

Go to the top of the page
+Quote Post

Posty w temacie


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: 5.10.2025 - 21:58