Projekty: Wpisy dotyczące prowadzonych przeze mnie rozmaitych projektów programistycznych (tak w PHP, jak i w innych językach programowania).
Projekty: Wpisy dotyczące prowadzonych przeze mnie rozmaitych projektów programistycznych (tak w PHP, jak i w innych językach programowania).
Prace nad prywatnym silnikiem C-Z-W osiągnęły bardzo ważny moment. Implementacja wszystkich jego funkcji została już praktycznie zakończona i przyszła odpowiednia pora na dokonanie optymalizacji. Część związana z CMS'em oparta jest na jednej, jedynej tabeli mającej formę drzewa, która odpowiednio renderowana za pomocą modułów oraz definiowania typów może być modelowana w dowolne elementy strony. Do uzyskania takich specjałów, jak system newsów z dzieleniem na strony, obiektom można ustawić parametr zwany "Wyświetlanie użytkownika", który powoduje, że podelementy będą obsługiwane we własnym zakresie.
Przyznaję, że od ostatniej wersji Open Power Template'a nieco wody w Wiśle upłynęło, ale moim zdaniem gra była warta świeczki. Kod został posprzątany i zawiera już wszystko, co finalna wersja ma zawierać w takim kształcie, w jakim ma być. Tak, jak pisałem kilkakrotnie, oznacza to koniec zmian do czasu wydania finalnej wersji i ograniczenie się do poprawiania znajdowanych błędów. Kolejnym kamieniem milowym wartym odnotowania jest fakt, że biblioteka wreszcie posiada również kompletną dokumentację (na razie w języku angielskim, ale Slump ostro się pali do tłumaczenia :)).
Wczoraj wieczorem na SVN znalazła się kolejna wersja Open Power Forms, po dość długiej nieaktywności. Tym razem od strony kodu PHP gotowe jest niemal wszystko. Nietestowany jest jeszcze AJAX i kod JavaScript (gdyż takowych jeszcze nie ma). Niemniej prawidłowo działa esencja całego systemu, czyli wirtualne formularze! Do kodu dołączone są trzy przykłady ilustrujące tylko ten jeden element.
W ostatnich dniach zajmują mnie trzy sprawy związane z projektem Open Power Board. Dwie są dość dobre, jedna nieciekawa. Zacznę może od tej ostatniej. Otóż okazało się, że gdzieś w Chinach czy Japonii (w każdym razie tam, gdzie w użyciu jest krzaczkowate pismo, którego żaden normalny człowiek na tej planecie nie jest w stanie odczytać), już mają Open Power Board. Nie dzieje się to za sprawą jakiejś kosmicznej azjatyckiej technologii w stylu kaset błyskawicznych z filmu "Kosmiczne jaja". Najzwyczajniej w świecie zaszła kolizja nazw. Sprawa wygląda o tyle nietypowo, że tamto OPB jest, zdaje się, projektem komercyjnym, ale że firma ma stronę wyłącznie w krzakach, nie mogę powiedzieć aktualnie nic więcej.
Na razie jedynymi oznakami życia projektu OPB są ciągle rozwijane biblioteki. Nie oznacza to zastopowania właściwego kodu. Jest wręcz przeciwnie, sukcesywnie powstają jego kolejne elementy (na razie administracja). Postanowiłem dzisiaj udostępnić trzy screeny pokazujące kilka założeń projektowych.
Wróciwszy wczoraj o północy z Warszawy, wyspawszy się porządnie i poprawiwszy jeden projekt, zasiadłem dalej do pisania OPF. Implementacji podlega w tej chwili esencja biblioteki, czyli wirtualne formularze. Oczywiście działały one już w wersji eksperymentalnej, ale przy pisaniu "właściwego" kodu trzeba się dodatkowo postarać o elegancję i rozważenie wszystkiego.
Termin "Release Candidate" oznacza kandydata do bycia oficjalną wersją, co w naturalny sposób wiąże się z mikroskopijnymi zmianami poprawiającymi jedynie napotkane błędy. Tymczasem w OPT numeracja posypała się już do reszty :), ale to szczegół. Przepisałem praktycznie od nowa plik opt.class.php, ale dalej robię RC3.
Ci, co brali udział w projekcie Open Power Board wiedzą, jaką mieliśmy tragiczną witrynę WWW. Dzisiaj problem odchodzi w niebyt. Na bazie silnika strony OPT zbudowałem nową, dwujęzyczną wersję ze wszystkimi niezbędnymi materiałami. Layout miał być zupełnie nowy, ale moim skromnym zdaniem był gorszy od dotychczasowego i do dziś nie rozumiem, czemu tak wszyscy chcieli go wywalić. Pociąłem go na nowo w XHTML'u i odzyskał swój blask niemal natychmiast. Zainstalowałem go także na opt.openpb.net, aby było identycznie.
Dobra, programiści PHP z wytęsknieniem czekający na spełnienie waszych marzeń o cache'owaniu w bibliotece PDO. Mam dla was dobrą wiadomość. Właśnie ukazała się biblioteka Open Power Driver 0.1 dająca Wam to, czego chcecie :). Oczywiście całe oryginalne API zostało zachowane, przez co używa się jej, jak zwykłe PHP Data Objects. Archiwum zawiera kod źródłowy, przykłady oraz dokumentację w języku angielskim. Adres do notki wydawniczej zawierającej linki do pobrania jest w przypisach.
Od paru dni istnieje szczegółowa specyfikacja techniczna Open Power Forms. Opisuje ona całe API oraz mechanizmy działania tej biblioteki. Tym samym projekt przechodzi z fazy badań do fazy właściwego tworzenia, a kod powstały do tej pory posłuży do budowy tego właściwego.