Some of posts from this blog has been moved to dywicki.pl. You will be automatically redirected to new blog if you would submit comment.
New posts are published on dywicki.pl, this blog contains old content and it is not continued.

Niektóre posty z tego bloga zostały przeniesione do dywicki.pl. Zostaniesz automatycznie przekierowany jeśli bedzięsz chciał dodać komentarz.
Nowe posty sa publikowane na dywicki.pl, ten blog zawiera stare treści i nie jest kontynuowany.

Mojavi 4, z bliska.

Filed under Framework,Mojavi4,MVC,PHP by

Tak jak obiecałem informacje na temat zmian w Mojavi 4.
Mojavi jest jednym ze starszych frameworków dla PHP. Swoje korzenie ma jeszcze w PHP4 kiedy to powstała pierwsza (na chwilę obecną), ostatnia stabilna wersja – Mojavi 2.0. Po wejściu PHP5 okazało się, że M2 nie jest kompatybilne z nowym interpreterem. Zaczęło powstawać Mojavi 3. Istnieje również Yuma – Mojavi 2 zgodne z PHP5. W pewnym momencie grupa (a właściwie jedyna osoba) tworząca Mojavi zdecydowała, że projekt jest nienajlepszy. Mimo wszystko była to tylko kontynuacja M2, bez wykorzystania możliwości PHP5, oparta na klasach. M3 zostało wstrzymane a Sean Kerr (na forum illusina) zaczął tworzyć Mojavi 4. M3 utkęło w fazie DEV. Mimo wszystko framework jest bardzo stabilny, sam z niego korzystałem kilka razy i nie było problemów. Wszystko czego potrzeba było to tylko kilka komponentów, które można pobrać z sieci (między innymi SmartyView). Aby praca włożona w M3 nie poszła na daremne projekt przejął Tyler Tompkins. Tak powstało Agavi. Agavi oferuje dodatkową funkcjonalność, usuwa niektóre problemy z Mojavi (min. problem z nazwami klas), oferuje również wbudowane komponenty, których brakowało Mojavi:
– SmartyView
– XSLTView
– CreoleDatabase
– PropelDatabase
– AdoDBDatabase
– PDODatabase
– ukończony mechanizm logowania
– zaczątki modelu (na forum Agavi jest do pobrania ActiveRecord rodem z Cake/Rails)
– ReturnArrayConfigHandler
– ConsoleController
– ConsoleRequest
– HTTPSRequest
– CreoleStorage
– wsparcie dla Phinga – taski do tworzenia projektu, modulu, akcji, widoku, unit-testów).
– bodajże DateValidator
– FormPHPView (ma być w krótce usunięty).

Continue Reading »

3 responses so far

Zend Manual.

Filed under Framework,MVC,PHP,Wiadomości by

Manual do Zend Frameworka, zajrzałem tam dopiero dzisiaj, ale dobrze wiedzieć, że jest jakaś biblioteka do PDF, która ma dokumentacje na dobrym poziomie.
Jeśli zend będzie prowadził dokumentacje w taki sposób ma spore szanse na to by pobić konkurencje.
Manual znajdziecie pod adresem http://framework.zend.com/manual
Dokumentacja do Zend_PDF.

One response so far

Wracam.

Filed under Śmieci by

Sporo czasu minęło od ostatniej notki typowo technicznej.. mam nadzieję, że zmiana designu na troszkę lżejszy Wam się spodoba. :)
Moja nieobecność wynikła poniekąd sama z siebie, blog przez dłuższy czas zszedł na dalszy plan. Nie robiłem również nic wielkiego także nie miałem nawet o czym zbytnio pisać.
W najbliższym tygodniu postaram się opublikować sporą notkę na temat Mojavi 4.

5 responses so far

.

Filed under Śmieci by

Zmieniając siebie na lepsze możemy zmienić świat. Ideał, słowo klucz. Czyż nie jest miłe dążenie do ideałów?
Czyż nie jest miła świadomość tego, że możemy kształtować oraz decydować o swoim życiu? Będąc śwadomym tego, że są ideały można się cieszyć miłoścą, wiarą, wiedzą, czy po prostu życiem, po prostu tym, co się ma.
Bądź kowalem swojego losu. Bądź sobą.
A nawet jeśli nie uda mi się zmienić samego siebie na lepsze to czy nie będze miłe ostatnie z uczuć – spełnienie tym, że walczyłem jak tylko mogłem i jak tylko potrafiłem? Owszem będzie, będzie bardzo miłe.

No responses yet

Co sie w tym kraju dzieje?

Filed under Śmieci by

Trudno mi opisać to, co czuję, ale postaram się. Nie podoba mi się to. Nie podoba mi się sytuacja na polskiej scenie politycznej. Obserwując to, co serwuje mi czasami odbiornik telewizyjny mam wrażenie, że ten kraj zmierza do nikąd, a jeśli nie w tą stronę, to w inną, ale tak samo niebezpieczną – w stronę radykalizmu, ksenofobii czy też szowinizmu. Wiem, że w dużej mierze powtarzam, to co jest faktem, ale chyba mam do tego prawo? Mam prawo do niezadowolenia z tego, że rządzi tym krajem partia, na która nie głosowałem, która robi to źle i kosztem społeczeństwa.
W tej chwili jestem już wrogiem mniej więcej 50% polaków. Jak stworzyć sobie taką potęgę (wszak o wielkości człowieka świadczy wielkość jego wrogów, ale ich liczba również ma ogromne znaczenie)? Po prostu – sprzeciwić się woli PiSu. Znowu powtarzam utarty schemat, który wykreowały media.. notabene część układu, ale czyż tak nie jest? Czy PiS na jakąś krytykę zareagował inaczej niźli agresją?
Nie podoba mi się to, że dla nich wszędzie jest układ. Układy są – i mniejsze, lokalne i większe jak słoneczny. Ale nie ma ich wszędzie. Nie ma ich pod moim łóżkiem, nie ma ich w mojej pracy, nie spotkałem się też z nimi w urzędach, które odwiedzałem (mimo wieku kilka już odwiedziłem). Czyż nie jest to wystarczający dowód, że miejsca bez skaz są?
Dla wielkich, chociaż w zasadzie małych, braci to jest za mało. Uczciwi są Ci, któzy wierzą w to co oni, wyznają zasady te co oni, zgadzają się z tym co mówią tylko oni. A zatem nie jestem ucziwy, ponieważ nie wierzę w to co oni, ani w IV RP, ani w to, że oni zmienią nas na lepsze swoimi spodobami. Nie wyznaję ich zasad. Dla mnie, jeśli ktoś ma inne zdanie nie jest kłamcą, jeśli jest homoseksualistą ma prawo żyć, jest pacyfistą – ma prawo w to wierzyć. W przeciwieństwie do kaczyńskich mogę się mylić w swych przekonaniach. Jestem tego świadom i się tego nie boję. Dobrze mi z tym, ponieważ mam do tego pełne prawo. Wyznaję inne zasady – zasadę równouprawnienia bez względu na wiarę czy jej brak, przekonania polityczne, preferencje seksualne i inne. Wyznaję pluralizm, są inne partie, z którymi się zgadzam, one również powinny mieć udział w parlamencie. Nie jestem również ucziwy ponieważ nie zgadzam się z tym co mówią (to udowadniam pisząc ten tekst).
Kiedy kaczyńscy “wyzwalali” sami Polskę, a reszta na nich tylko donosiła bądź się zajmowała czymś mniej poeważnym niż oni nie było mnie na świecie. Niewiele pamiętam z tego co się działo przed 89. Wiem, że kiedyś stałem z mamą w kolejce przed sklepem, gdzie sprzedawano AGD po lodówkę. Pamiętam, że tata pracował w PBRol-ach. Nie pamiętam jak mi się żyło w tedy, ale nie narzekam. O wiele więcej mogę powiedzieć o czasach, kiedy to już byliśmy wyzwoleni. W bogactwie nie żyłem i nie żyję. Nie dlatego, że nie jestem częścią żadnego układu, a dlatego, że moi rodzice pochodzili z biednych rodzin i musieli ciężko pracować na to co teraz mają. Mimo wszystko nie wierzę w to, że bogaci to tylko złodzieje i układy. Wiem, że można dorobić się nie tylko na konszachtach i oszustwach.
Nie mam recepty na naprawę tego co się dzieje. Nie ma jej prawdopodobnie większość społeczeństwa. Nie mniej, nie chcę by wyznacznikiem tego, czy mam się z kimś spotykać jest jego stosunek do PiSu, tego czy mogę czytać jakieś czasopismo jest jego stosunek do PiSu, a przede wszystkim nie chcę by o wartości i uczciwości człowieka świadczył jego stosunek do PiSu.

6 responses so far

Eclipse PHP IDE, bez udzialu PHP Eclipse

Filed under Eclipse,PHP,Wiadomości by

Przeczytałem właśnie, że Zend nie dogadał się ze społecznością tworzącą PHP Eclipse i cały projekt będzie rozwijany od nowa. Jak napisał Lester Caine:
Jedynym powodem dla ktorego PHP Eclipse nie moze stac sie podstawa jest fakt, ze nie mamy czasu ani zasobow by zaglebiac sie w dokumentacje.
Nie zdołalismy przekonać społeczności PHPEclipse że podejście Zenda bylo lepsze. Powiedzieli, że powinniśmy się dołączyć do ich projektu. Wygląda to bardziej na zagarnięcie niż konstruktywne programowanie.
Dziękuję Tasmanowi za pomoc w tłumaczeniu. :)

Czyżby typowe PHPowe podejście? Na to wygląda – nie bierzemy tego, bo nie nasze, ponieważ trzeba sie zapoznać z dokumentacją, bo to bo tamto. Nie dziwie się twórcom PHP Eclipse, że nie dali się wciągnąć w projekt tworzenia kolejnego IDE, skoro ich już jest w miare rozwinięte. W ten sposób pozbyli by się trzech lat włożonych w rozwój PHP Eclipse. Myślę, że tutaj to właśnie Zend winien się dołączyć do PHP Eclipse. Dziwi mnie jednak, że nie doszli do porozumienia – czyżby trafił kozak na tatarzyna?
Spora szansa na stworzenie potężnego IDE dla PHP właśnie przepada. Zend i reszta będzie tworzyć całość od nowa.. Dziwi mnie, że Zend chcący uchodzić za firmę wspierającą open source nie dołączył się..
Jestem zawiedziony tym, że firma, która ma bardzo duży wpływ na PHP nie potrafi dojść do konsensusu z paroma osobami. Pora na stworzenie kolejnej fundacji: PHP – porozumienie bez barier. Zend swoim postępowaniem utrudnia konsolidację i tak jużwystarczająco podzielonego środowiska PHP. Takie postępowanie do niczego nie prowadzi, z pewnością nie sprzyja powstawaniu społeczności przy ich projekcie..

6 responses so far

Eclipse PHP IDE

Filed under Eclipse,PHP,Wiadomości by

Warto zaznaczyć, że projekt jest już zatwierdzony, i chyba będzie tworzony w ramach IDE, które miało powstać dla ZF. Jak niosą wieści:
Jest idea stworzenia open-source’owego IDE dla PHP opartego na platformie Eclipse Tools.
Dalej – PHP zaczęto rozwijać 10 lat temu jako projekt open-source. W ciągu 10 lat PHP zyskało popularność. Obecnie ponad 23 miliony domen korzysta z PHP. Prostota PHP oraz fakt iż jest bezpłatne sprzyja jego adaptowaniu.
Projekt powinien być rozwijany jako wstępny plugin. Z czasem powinny powstawać kolejne pluginy wykorzystujące API Eclipse by rozszerzać funkcjonalność IDE. Projekt powinien być wpięty w rozszerzenia, docelowa funkcjonalność to tworzenie (developing), rozwijanie (deploying), dokumentowanie, debugging oraz testowanie.

Plan:
Planujemy rozpocząć prace od końca pierwszego kwartału 2006 roku. Po udostępnieniu wersji początkowej (bety?) zaczniemy rozwijać funkcjonalność. Pierwsza wersja będzie wydana możliwie szybko.

Zainteresowani:
– Actuate
– IBM
– Intel
– SAP
– Zend

Więcej interesujących szczegółów znajdziecie na http://eclipse.org/proposals/php-ide/

W sumie, fajnie, że powstaje w końcu obiecane IDE dla PHP.. dziwi mnie jednak, że nikt nie zaznaczył, że taki projekt na plarformie eclipse jest już rozwijany – mowa tutaj o PHP Eclipse.. Ciekaw jestem czy znowu zaczną wynajdować koło na nowo czy skorzystają z już częściowo gotowych rozwiązań. Czy Zend znowu zacznie wszystko od zera tak jak z komponentami ZF?
Ogromną nadzieją napawa fakt, że tym IDE zainteresowały się wielkie korporacje tj. Intel, IBM czy też SAP. Swoją drogą, byłem święcie przekonany, że SAP to stricle javowa korporacja, a tutaj taka niespodzianka. :) Interesujące wydaje się również wymienienie Intela.. czyżby tak jak Skype 2.0 tak i Eclipse PHP IDE miało chodzić tylko na dwurdzeniowych procesorach Intela? ;). Czas pokaże, co z tego wyjdzie. Nie sposób niezauważyć, że IBM bardzo się angażuje w PHP – począwszy od draftów na temat PHP6 po IDE – czyżby IBM wiązał z PHP jakieś plany? Jakiś czas temu słyszałem również, że Oracle planuje zainwestować spore pieniądze w rynek oprogramowania Open Source kupując między innymi Zenda. Interesujące, nieprawdaż?

4 responses so far

db4o in Action!

Filed under DB,Java by

Dzisiaj zainspirowany rozmową na ircu i ciekawym zapytaniem postanowiłem zaintersować się db4o. Muszę przyznać, że całość jest dość prosta, właściwie banalna. Wykorzystanie db4o sprowadza się do zaimportowania kilku klas.. i gotowe. Koniec męczenia się z SQLem, z korzystaniem z ORMów i tak dalej.. koniec! :) Wrzucasz obiekt, dostajesz z powrotem obiekt. Jestem zachwycony możliwościami db4o, chociaż odkryłem dopiero ich nieznaczną część.. zachęcam do spojrzenia na notkę z innego bloga.
Dla przykładu załączam źródła: db4o.test

No responses yet

Troszkę “Inne” MVC

Filed under Java,MVC by

Jakiś czas temu, gdy walczyłem ze swoimi pierwszymi servletami dzięki koledze zetknąłem się ze springiem. Wiedziałem, że ten framework istnieje, ale dopiero z jego pomocą stworzyłem pierwszą akcję. Idea jest bardzo prosta – na podstawie pliku beans.xml kontener IoC dopasowywuje klasę do adresu. Może być też tak, że mapowane są nazwy beanów do adresu – np. <bean id=”/foo.html” />>.
To co mnie oczarowało w springu to świetne rozwiązania. Bardzo spodobały mi się zróżnicowane akcje. To już nie jest Cake PHP, gdzie nazwa ApplicationController ma znaczenie bardziej symboliczne niż praktyczne czy Struts ze swoimi biernym akcjami. Przy potencjale jaki oferują kontrolery Springa wiele frameworków wymięka. Poniżej prezentuje diagram klas wykonany w programie Dia obrazujący powiązania kontrolerów we wcześniej zachwalanym frameworku.
Diagram klas

Całość działa bardzo fajnie – w zależności od klasy z której dziedziczymy mamy różne rodzaje akcji. Np. SimpleFormController to typowy układ wprowadź+pokaż błędy+wykonaj akcję. AbstractWizzardController wykorzystuje się, gdy mamy kilkukrokowe formularze zapytań wykorzystujemy BaseCommandController jeśli tych kroków jest o wiele więcej wykorzystujemy AbstractWizzardController.
Kontroler zawsze zwraca obiekt ModelAndView, który zawiera informację jaki widok ma być wykonany oraz dane, które mają do niego trafić. Dzięki temu jeden widok może być uruchamiany przez wiele akcji przy zmienionych danych. Układ jest bardzo dobry, zawsze brakowało mi czegoś takiego w Mojavi, które pod względem widoków jest trochę w tyle ponieważ wymusza tworzenie wielu plików i utrudnia ponowne wykorzystanie choćby samych szablonów.

Zrobiłem również prosty diagram sekwncji by pokazać jak wygląda obsługa wywołania. Niestety Dia nie dostarcza żadnych komponentów z których się przy takich diagramach korzysta i stąd taka a nie inna jakość niżej załączonego obrazka:
Diagram klas

Co daje nam zastosowanie elementu pośredniczącego jakim jest ModelAndView? Daje możliwość zastosowania dodatkowego ogniwa, którego na tym diagramie nie ma ponieważ jest to robione w Dispatcher Servlet, to znaczy View Resolverów. View Resolver to element który w rzeczywistości uruchamia widok. Na podstawie przekazanej nazwy widoku dodaje prefix, sufix i sprawdza czy plik istnieje. Jeśli istnieje to uruchamia widok z danymi, które zwróciła akcja, jeśli nie zwraca false a DispatcherServlet uruchamia kolejnego VewReoslvera w celu odnalezienia widoku. Kolejność można określić w konfiguracji. Można mieć kilka resolverów, można mieć jeden. Jeśli nie zostanie odnaleziony widok Dispatcher Servlet wywali odpowiedni wyjątek.
To rozwiązanie daje możliwość tworzenia wielu typów widoku, obsługiwanego poprzez różne mechanizmy dla jednej akcji. Bez zmian w akcji można zmienić format outputu oraz to czy obsłuży go nam JSP bądź Freemaker. Czyż to nie cudowne? :)
Możliwe, że całość opisałem dość niejasno, dlatego proszę – jeśli trafi się tutaj osoba znająca springa – o sprostowania.

2 responses so far

Jak widzę kod?

Filed under Java,PHP,UML by

Tak pod wpływem natchnienia publikuję przykład diagramu klas reprezentujący kompozycje (zawieranie).
Diagram wykonany w programie Visual Paradigm. Komentarz usunięty ponieważ zachodził na klasy. :) diagram klas
Kod (PHP):

<php class Jablon {     /**      *@var Jablko owoce znajdujace sie na drzewie      **/     protected $owoce = array(); } class Jablko {     /**      *@var mixed smak owocu      **/     protected $smak; } >

Związek jest określony – jedna instancja klasy Jablon może zawierać wiele owowców, ale może tych owoców nie być wcale. Zapis można sprecyzować: Jablon: 1..n, Jablko 1 oznacza, że jedna instancja klasy Jablko moze znajdowac się tylko w jednym obiekcie Jablon.
Jeśli się mylę, proszę o sprostowanie. Za jakiś czas kod w wersji dla Javy. ;)

19 responses so far

« Newer Entries - Older Entries »