![]() |
![]() ![]() |
![]() |
![]()
Post
#1
|
|
Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Witam!
Ostatnio przeszukując partycje Windowsową, znalazłem tą klasę (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Odkurzyłem ją co nieco i postanowiłem dać do oceny (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) Proszę o konstruktywne opinie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) , a nie, że API mi się nie podoba (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Jej napisanie miało na celu ujednolicenie interfejsu dla różnych baz danych i systemów podłączania do nich. Obecnie jest tylko silnik mysql (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) W najbliższym czasie napiszę dla pgsql i sqlite z wersjami na PDO (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Wprowadziłem kosmetyczne zmiany (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Paczka .tar.gz Paczka .zip Zdravim Łukasz Ten post edytował Turgon 21.01.2007, 11:52:19 |
|
|
![]()
Post
#2
|
|
Grupa: Moderatorzy Postów: 1 566 Pomógł: 37 Dołączył: 14.05.2003 Skąd: Kraków ![]() |
Ogólnie ok. Brakuje tylko iteracji i cache.
|
|
|
![]()
Post
#3
|
|
Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Witam,
Brakuje sporo rzeczy. Chociazby: 1. tworzenia polaczenia stalego. 2. innej metody fetch (masz tylko assoc) 3. transacji 4. masz affected_rows, ale nie masz num_rows.
Po co ta funkcja? Chyba nie jest potrzebna. Obsluga wyjatku to juz sprawa programisty. BTW, nie deconnect, tylko disconnect (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Adrian. |
|
|
![]()
Post
#4
|
|
Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
@Adrian, no tak, ale kiedyś dawno temu przyzwyczaiłem się do deconnect i tak już zostało. Zboczenie zawodowe (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) . Transacji ? Co to ma być ?
@Ociu: Interacja czego? Co do Cache w klasie jest napisane, że todo (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) |
|
|
![]()
Post
#5
|
|
Grupa: Przyjaciele php.pl Postów: 5 724 Pomógł: 259 Dołączył: 13.04.2004 Skąd: N/A Ostrzeżenie: (0%) ![]() ![]() |
Cytat Jej napisanie miało na celu ujednolicenie interfejsu dla różnych baz danych i systemów podłączania do nich (...) W najbliższym czasie napiszę dla pgsql i sqlite z wersjami na PDO Czyzbym widzial wynajdywanie kola? Przeciez PDO to wspolny interfejs dostepu do baz. Cytat Proszę o konstruktywne opinie , a nie, że API mi się nie podoba A czemu nie? Jesli API dla mnie bedzie trudne, niewygodne, nazwy metod nie beda oczywiste ("deconnect" (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif) ) to nie bede uzywal. Patrz: API OpenGLa (przynajlniej dla C++, nie wiem jak jest w innych jezykach) dla kogos kto chce pisac w OOP. Do kodu nie zagladalem. No i jeszcze nazwa klasy mi sie nie podoba -- bo nic o niej nie mowi? Kierowca? Po co mi on? |
|
|
![]()
Post
#6
|
|
Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
dr_bonzo: Nie wszędzie jest PDO, a chce mieć wygodny interfejs. Poprawię trochę te rzeczy i co do nazwy to zmienię tej metody, ale klasy może...
|
|
|
![]()
Post
#7
|
|
Grupa: Zarejestrowani Postów: 640 Pomógł: 44 Dołączył: 8.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
dr_bonzo: Nie wszędzie jest PDO Nie wszędzie jest PHP5, nie wszędzie safe mod jest na off. Przyjmując taką koncepcję powinieneś tworzyć pod php 4.0 na Krasnalu (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) Narzędzie tworzysz albo dla dzieci robiących stronki na darmowych hostach albo do użytku w profesjonalnych projektach. Jeżeli ktoś zleci ci wykonanie dużego serwisu to wybór wymagań leży po twojej stronie tak więc wybór konfiguracji php ułatwiającej wykonanie zadania to nie problem. Poza tym obecnie na serwerach przeważa php 5.1 nad 5.0 (bezpieczeństwo itp.) i przynajmniej do SQLite interfejs jest dostępny. Poza tym jak płacę to wymagam. |
|
|
![]()
Post
#8
|
|
Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
No ja też ;], generalnie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Nawet dla mnie jest to problem, że nie ma czegoś tam (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg)
|
|
|
![]()
Post
#9
|
|
Grupa: Moderatorzy Postów: 1 566 Pomógł: 37 Dołączył: 14.05.2003 Skąd: Kraków ![]() |
@Ociu: Interacja czego? Co do Cache w klasie jest napisane, że todo (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Wyników zapytania. |
|
|
![]()
Post
#10
|
|
Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Masz na myśli implementacje interfejsów Iterator i Iterator Agregate ?
|
|
|
![]()
Post
#11
|
|
Grupa: Przyjaciele php.pl Postów: 384 Pomógł: 6 Dołączył: 11.09.2004 Skąd: Grodzisk Mazowiecki Ostrzeżenie: (0%) ![]() ![]() |
Zawsze jest Creole
|
|
|
![]()
Post
#12
|
|
Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
@Strzałek: Cóżto za bezczelna reklama ? Wynocha z nią (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
|
|
|
![]()
Post
#13
|
|
Grupa: Przyjaciele php.pl Postów: 384 Pomógł: 6 Dołączył: 11.09.2004 Skąd: Grodzisk Mazowiecki Ostrzeżenie: (0%) ![]() ![]() |
Nie reklama.
Po co pisać coś odnowa? Kopiować gotowe rozwiązania? Też tak kiedyś robiłem, jednak doszedłem do wniosku że to po prostu nie ma sensu. I tak nic lepszego od Creole nie napiszesz, więc pytanie po co? Koniec offtopicku. |
|
|
![]()
Post
#14
|
|
Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Jakieś Creole i Propel mnie tylko denerwują.
Dodałem repo online http://repository.turgon.pl. |
|
|
![]()
Post
#15
|
|
Grupa: Zarejestrowani Postów: 505 Pomógł: 0 Dołączył: 8.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Nic specjalnego. Biorąc pod uwagę,
- jeden silnik - zły nawyk wyciszania błędów za pomocą @ - tylko fetchAssoc - mało intuicyjne API - w kilku miejscach nie przemyślane returny, które nigdy nie wystąpią np : Kod public function insertId(){ if(is_resource($this->hDB)){ return mysql_insert_id($this->hDB); } else{ return false; } return; } - poćwicz warunki bo zwracając return mysql_insert_id($this->hDB), gdy id = 0 wyjdą klocki w stylu if ($id = $obj -> insert_id()) { } . Podobnie jest z innymi metodami, które mogą zwrócić wynik 0 a nie FALSE - brak współdzielenia połączeń przez obiekty TurDatabas - brak cache - czasochłonne określenie co chcemy z bazy uzyskać - brak mapowania STMT - brak escape - brak transacji - po co po instrukcji wyrzucenia wyjątku dajesz return false? |
|
|
![]()
Post
#16
|
|
Grupa: Zarejestrowani Postów: 640 Pomógł: 44 Dołączył: 8.02.2004 Ostrzeżenie: (0%) ![]() ![]() |
Jakieś Creole i Propel mnie tylko denerwują. tyle że one działają, są rozwijane przez profesjonalistów i są dzięki temu stabilne i dojrzałe dzięki czemu (IMG:http://forum.php.pl/style_emoticons/default/winksmiley.jpg) są stosowane w produkcyjnych rozwiązaniach. Tworząc publiczny kod trzeba się zastanowić po co się go tworzy ? Jeżeli ktoś ma z niego korzystać to owy kod musi spełniać pewne wymagania. Jeżeli tworzyć tylko dla siebie czy też dla script txt_kiddies to inna sprawa ale powinieneś to "wyraźnie" zaznaczyć. Ten post edytował Riklaunim 23.01.2007, 23:44:59 |
|
|
![]()
Post
#17
|
|
Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Piszę coś, co mi będzie wygodnie używać choć i tak np. w przypadku tych silników, można podpiąć zawsze jakiś tam własny skrypt.
|
|
|
![]()
Post
#18
|
|
Grupa: Zarejestrowani Postów: 505 Pomógł: 0 Dołączył: 8.01.2005 Ostrzeżenie: (0%) ![]() ![]() |
Daleko temu od :
- wygody - intuicyjności - poprawności - sensu korzystania |
|
|
![]()
Post
#19
|
|
Grupa: Zarejestrowani Postów: 800 Pomógł: 0 Dołączył: 26.11.2005 Skąd: Nowy Sącz Ostrzeżenie: (0%) ![]() ![]() |
Dla ciebie (IMG:http://forum.php.pl/style_emoticons/default/smile.gif) Co do klasy, to i tak ulegnie kolejnej przebudowie jak wszystko co do tej pory napisałem ;]
|
|
|
![]()
Post
#20
|
|
Grupa: Zarejestrowani Postów: 338 Pomógł: 2 Dołączył: 4.03.2006 Skąd: Łódź Ostrzeżenie: (0%) ![]() ![]() |
Najlepsze jest to, ze to juz wersja 1.1 (IMG:http://forum.php.pl/style_emoticons/default/biggrin.gif)
Adrian. |
|
|
![]() ![]() |
![]() |
Aktualny czas: 24.08.2025 - 10:22 |