Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [PHP]Jak zoptymalizować / usprawnić klasę
rapkar
post
Post #1





Grupa: Zarejestrowani
Postów: 2
Pomógł: 0
Dołączył: 5.08.2008

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


Hej... właśnie poznaję zagadnienie klas i programowania obiektowego.
Nie wszystko jest jeszcze dla mnie jasne, ale oto moje pierwsze dzieło... klasa generująca title i keywords w meta tagach.
Skrytykujcie błędy i dajcie wskazówki, rady jak ją usprawnić.
Kod
   class MetaInfo{
         function title(){
             $id = $_GET['id'];
             $wynik = mysql_query("SELECT nazwa, miasto, typ, woj FROM kwatery
                                                   WHERE kwatery.id='$id' limit 1;")or die (mysql_error());
             list ($nazwa,$miasto,$typ,$woj) = mysql_fetch_row($wynik);
             return $nazwa.', '.$typ.', noclegi '.$miasto.', woj. '.$woj;
         }
         function keywords(){
             $id = $_GET['id'];
             $wynik = mysql_query("SELECT nazwa, miasto, typ, woj FROM kwatery
                                                   WHERE kwatery.id='$id' limit 1;")or die (mysql_error());
             list ($nazwa,$miasto,$typ,$woj) = mysql_fetch_row($wynik);        
             return 'dobre kwatery, dobrekwatery, noclegi, '.$typ.', noclegi '.$miasto.', '.$miasto.', '.$woj;
         }
     }

Nie wiem jak pozbyć się powtórzeń w obu funkcjach... można to zrobić przed funkcjami, tak by zmienne miały charakter globalny?

Z góry, wielkie dzięki, pozdrawiam.

Ten post edytował rapkar 5.08.2008, 21:29:59
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
cckoles
post
Post #2





Grupa: Zarejestrowani
Postów: 37
Pomógł: 1
Dołączył: 2.05.2007

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


Nie rozumiesz ideii obiektowości. Pomijam fakt stylu pisania gdzie troche dziwnie się to czyta. Do swojego obiektu wstawiasz zapytanie " na sztywno" idea obiektowosci jest tworzenie API które będzie uniwersalne.

edit:

Wiem, że na początku trudno jest zrozumieć obiektowość i pomimo licznych kursów czasami cieżko załapać o co chodzi osobie która pisze strukturalnie. Wyobraź sobie swoja klase która ma generować keyword-y. Prawdziwy obiekt powinien działać tak, że przekazujesz do niego dane czy to z bazy czy pliku a on wykonuje dane zadanie czyli tworzy jakies losowe teksty. W sumie tworzenie keyword-ow to za proste nawet dla klasy ale jak już bardzo chcesz takową napisać to w takiej klasie nie powinno być zapytania do bazy dlaczego ? Ano dlatego ze to klasa która ma generowac keywordy to co zatem robi zapytanie do bazy ? Wyobraz sobie ze chcesz użyc tej klasy w innym projekcie i co wtedy ? Przerabiasz klasa od nowa bo masz jakies zapytanie do bazy. Mija się to z celem dlatego ze wlasnie idea obiektowosci jest elastycznosc. Piszesz klase raz a pozniej wykorzystujesz ja w innych projektach bo dane do klasy przekazujesz przez API.

Ten post edytował cckoles 5.08.2008, 21:39:54
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: 7.10.2025 - 23:56