Post
#1
|
|
|
Grupa: Zarejestrowani Postów: 521 Pomógł: 0 Dołączył: 3.11.2003 Skąd: 3city Ostrzeżenie: (0%)
|
Jak niektórzy zapewne wiedzą, od dłuższego czasu pracuję nad phiendem 2. Niestety, po n-tym refactoringu i pisaniu wszystkiego od nowa jestem tym trochę zmęczony i raczej nie wydam tego kiedykolwiek o własnych siłach. Za to kod, który jest już napisany, bardzo mi się podoba i szkoda go marnować.
Więc poszukuję ludzi do współpracy. Główne założenia:
Co do samego MVC, kilka słów:
** jeżeli temat tutaj nie pasuje, można śmiało przenosić Ten post edytował hawk 30.05.2005, 20:02:11 |
|
|
|
![]() |
Post
#2
|
|
|
Grupa: Zarejestrowani Postów: 521 Pomógł: 0 Dołączył: 3.11.2003 Skąd: 3city Ostrzeżenie: (0%)
|
Jak zapewne zauważyliście, długo mnie tutaj nie było i ten stan rzeczy nie ulegnie radykalnej zmianie. Po prostu przestało mnie to bawić. Programistą php nie jestem i nie będę, nie wiążę z tym przyszłości zawodowej, a w ramach spędzania wolnego czasu wolę wyżywać się na worku albo pić wódkę.
Projekt informatyczny, żeby był zauważony, musi żyć. Musi być aktywnie rozwijany. Trzeba reagować na zgłoszenia błędów i propozycje zmian. Trzeba robić ogólnie pojęty support. A tego akurat mi się całkowicie nie chce - w konkurencji spędzania wolnego czasu support plasuje się daleko, daleko za programowaniem. Natomiast bez supportu projekt staje się niszowy. Dla mnie niepotrzebny, bo ja i tak php w pracy używać nie będę. Natomiast lubię projektować, i dlatego zostałem z rozgrzebanym kodem, który - sądząc po zainteresowaniu - jest dobrze pomyślany, ale którego sam nie doprowadzę do stanu używalności. Phiend2, jak pewnie zauważyliście, nie jest tak naprawdę frameworkiem. Jest zbiorem komponentów, na szczycie których jest co prawda framework MVC, ale nie jest on (dla mnie) najważniejszy. Teraz każdy ma własny framework, a ich porównywanie nie ma sensu. Natomiast mały komponent napisany w konkretnym celu może być znacznie łatwiej używany w różnych projektach. Sytuacja jest więc taka: jest kilka mniej lub bardziej dokończonych komponentów i praktycznie martwa strona na SF. Na dole jest krótki opis tych komponentów. Jeżeli są zainteresowani, to chętnie przekażę je w dobre ręce, na zasadzie, że dalej jest to phiend, tylko autorów ma wielu. Na SF jest CVS, na którym można to rozwijać. Jest forum, jest cała infrastruktura. Alternatywnie można się przenieść. Kiedyś na tym forum krążył pomysł stworzenia własnego repozytorium dobrego kodu, ale chyba umarł. Lista komponentów: phiend.proxy Pierwotnie nazywało się phiend.handle, ale słowo handler używane jest często i w różnych kontekstach, więc zmieniłem. Rozwinięcie klasy Handle obecnej w WACT, zapewnia lazy loading obiektów. Przekazuje się w kodzie proxy do obiektu, a samo stworzenie obiektu (łącznie z includowaniem pliku z kodem) odbywa się dopiero przy pierwszym użyciu. Kod ukończony, sa nawet unit testy (SimpleTest). phiend.log Zestaw klas do obsługi błędów. Inspirowany log4php, ale bez tego strasznego przerostu kodu. Z jednej strony bardzo obiektowy, co zapewnia elastyczne filtrowanie błędów i łatwe dodawanie nowych sposobów obsługi/zapisu błędów. Z drugiej strony najlepsza konsola prezentująca na ekranie informacje o błędzie, jaką do tej pory widziałem. Listing kodu wywalającego błąd i debug_backtrace to standard. Ale podawanie definicji każdej metody z tego backtrace, włącznie z miejscem definicji, nazwami i typem argumentów... mając do dyspozycji Reflection można dużo zrobić. Kod działa, ale na pewno można go dopracować, dopisać nowe handlery, poprawić wygląd konsoli, itd. phiend.autoload Prezentowany już tutaj na forum autoloader. Prosty, elastyczny, działający. Bardzo by się do niego przydał (jako osobny projekt) system do mergowania plików z kodem php, ponieważ sam mechanizm autoload w php jest czasochłonny. Ale być może coś takiego da się wykonać przy pomocy Phing... phiend.auth Prosty system uwierzytelniania oparty o zagnieżdżone grupy. Na tyle nieskomplikowany, że można go użyć wszędzie, i na tyle rozszerzalny, że można go oprzeć o dowolne źródło (DB, pliki ini, pliki passwd, LDAP, pliki Samby...) tworząc nowy handler. Zainspirowany Solarem i PEAR::Auth, ale znacznie mniejszy i łatwiejszy do dopasowania. Częściowo działa, ale kod jest niedopracowany i niedokończony. phiend.context Implementacja request, response i sesji. Temat znany, ale kontrowersyjny, ponieważ trudno ocenić jest obiektywnie, jaki sposób implementacji jest lepszy. Gdyby php miał w tym zakresie jakiś standard... W każdym razie uważam, że jakaś implementacja jest potrzebna, aby można było później rozwijać framework. Kod jest, ale nie jestem do niego przywiązany i z racji skomplikowania tematu nigdy nie byłbym z niego chyba zadowolony. phiend.registry Implementacja wzorca Registry. Do rejestru wrzuca się tzw. pluginy, a rejestr zapewnia dostęp do nich, lazy loading oraz prostą implementację Intercepting Filter. Prosty, działający kawałek kodu wydzielony kiedyś z MVC. phiend.mvc Framework MVC. Wykorzystuje większość z tego, co opisałem powyżej. Główne cechy: - cała nie-corowa funkcjonalność wypchnięta do pluginów wrzuconych do rejestru - przed i po akcjach wykonywane są filtry, implementujące wzorzec Intercepting Filter w postaci dekoratorów - każda akcja ma konfigurację przekazywaną do filtrów - akcje można dowolnie dzielić na moduły, a moduły zagnieżdżać w sobie, przy czym konfiguracja jest dziedziczna - fragmenty corowej funkcjonalnośći również wypchnięte są do pluginów, żeby można było łatwo podmienić (np. router, odczyt konfiguracji dla akcji) - źródło konfiguracji dla akcji teoretycznie dowolne, chociaż pozostaje implementacja plugina Całość działała i przechodziła testy, ale potem zacząłem ostro przerabiać/optymalizować kod i skończyłem mniej więcej w połowie. |
|
|
|
hawk phiend2: reaktywacja 30.05.2005, 18:49:47
hwao Podepne na jakis czas. 30.05.2005, 19:29:00
bela_666 No to się zgłaszam 30.05.2005, 20:01:23
Cudi Również się zgłaszam 30.05.2005, 21:49:11
squid a jakies wymagania czasowe? bo osobiscie nie wiem ... 30.05.2005, 21:51:29
hawk Wymagania czasowe: ja mam czasu mało, niestety. To... 31.05.2005, 09:56:48
matid Ja też się na to piszę. 2.06.2005, 17:45:41
hawk Do wszystkich chętnych:
http://barfoo.host.sk/phie... 5.06.2005, 20:49:23
dr_bonzo Cosik te linki nie dzialaja.
@hawk: moge je zahost... 5.06.2005, 21:04:00
Bora Oczywiście jak już piałem z chęcią wspomoge ten pr... 5.06.2005, 21:15:16
squid mnie tez nie dziala, znaczy pobiera 0 bajtow.
Widz... 5.06.2005, 21:17:32
Cudi Może jakieś spotkanie na IRC'u? Wszystko zależ... 6.06.2005, 16:47:57
sf Mam male pytanie OT. Dlaczego zniknol podzial na a... 6.06.2005, 18:25:55
hawk Co do linków: ooops, głupi serwer wycina mi pliki ... 6.06.2005, 19:26:45
squid Cytat(NuLL @ 2005-06-06 20:34:13)Jeśli uda si... 6.06.2005, 19:35:10
Coyote hm... sorki ze moze glupie pytanko ... ale co to w... 7.06.2005, 23:03:44
NuLL @Coyote - Framework czyli swoisty szkielet do budo... 7.06.2005, 23:37:48
Coyote a dzieki ale i tak nie bardzo czaje
byl bym wdzie... 8.06.2005, 22:36:12
NoiseMc Mam już źródła ale prawe mówiąc nie bardzo wiem ja... 8.06.2005, 22:44:35
squid Cytat(NoiseMc @ 2005-06-08 23:44:35)Mam już ź... 9.06.2005, 09:04:01
hawk Dopominacie się podziału prac, więc należy się wam... 12.06.2005, 22:05:12
NuLL Lekki OT. A czy nie lepiej jest napisać plug-in pr... 12.06.2005, 22:57:33
hawk Hmm... napisać się na pewno da. Myślisz, żeby wywa... 13.06.2005, 08:26:21
kubatron hawk: mam takie pytanie, czy nie lepiej byłoby pog... 14.06.2005, 11:34:59
Cudi Jeśli chodzi o serwer z php 5 to na dotgeek.org je... 14.06.2005, 15:35:15
squid Cytat(Cudi @ 2005-06-14 16:35:15)Jeśli chodzi... 14.06.2005, 20:58:32
bela_666 @squid, tylko czy na sf.net jest php5 14.06.2005, 21:11:34
dr_bonzo Ale do przechowywania zip'ow nie potrzeba chyb... 14.06.2005, 21:40:21
Cudi Na sf.net (jeszcze) nie ma php 5 (i nie wiadomo ki... 15.06.2005, 20:24:47
hawk Hmm, mamy na razie serię postów o hostingu PHP5, k... 20.06.2005, 11:47:18
Cudi W tym tygodniu jestem bardzo zajęty i będzie ciężk... 20.06.2005, 17:23:38
squid Osobiscie dreczy mnie sesja egzaminacyjna wiec dop... 20.06.2005, 19:01:19
Diablos A co to jest ten phiend i do czgo sluzy ? 22.06.2005, 23:07:32
kubatron http://www.google.pl/search?hs=AK2&hl=pl&c...btnG=... 23.06.2005, 10:11:05
aleksander ja mam kilka pytan dot. phienda2:
1. Czy HttpCont... 20.07.2005, 11:56:10
hawk Mam wrażenie , że reaktywacja zakończyła się total... 20.07.2005, 12:52:56
aleksander ok więc moja pierwsza uwaga co do phienda2: mianow... 20.07.2005, 14:38:07
matid A IMO brakuje temu wszystkiemu trochę organizacji.... 20.07.2005, 15:07:17
aleksander hawk napisał już co trzeba zrobic, zrodła są to na... 20.07.2005, 15:25:29
squid Cytat(aleksander @ 2005-07-20 16:25:29)hawk n... 20.07.2005, 15:39:49
chmolu Hawk: Phiend to naprawdę świetny kawałek kodu, dob... 20.07.2005, 16:30:38
matid A co do innych zastrzeżeń:
phiend.context
Przy tw... 20.07.2005, 18:10:12
squid wg mnie nie jest tak zle
Oczywiscie ze nie wszys... 20.07.2005, 18:11:58
hawk Uff! Ale przynajmniej coś się ruszyło w temaci... 21.07.2005, 14:05:42
aleksander Cytat(hawk)Intercepting Filter (w postaci dekorato... 26.07.2005, 16:40:50
Neotion moge się dołączyć jako dokumentator i torche moge ... 5.08.2005, 16:02:24
matid Cytat(aleksander @ 2005-07-26 17:40:50)UPDATE... 5.08.2005, 16:30:39
aleksander Cytat(matid @ 2005-08-05 17:30:39)Cytat(aleks... 5.08.2005, 16:34:29
matid Cytat(aleksander @ 2005-08-05 17:34:29)yyyyy ... 5.08.2005, 18:27:49
aleksander ja pomyslalem o czym takim:
[PHP] pobierz, plainte... 5.08.2005, 18:31:10
squid [PHP] pobierz, plaintext <?phpclass XmlConfigur... 8.08.2005, 16:43:29
hawk Błąd, jak najbardziej błąd. A było to tak: dawno, ... 8.08.2005, 21:17:57
aleksander czekamy hawk, czekamy...
UPDATED: swoja droga, gd... 31.08.2005, 16:07:36
Strzałek Mogę sie oczywiście mylić, ale przecież można zrob... 11.09.2005, 07:19:19
bela_666 blad w HandleFactory
argument to $mClass, a ... 2.10.2005, 22:19:23
hwao Cytat(bela_666 @ 2005-10-02 23:19:23)hawk po ... 3.10.2005, 06:12:35
aleksander jest[PHP] pobierz, plaintext <?phpclass SimpleO... 29.10.2005, 15:12:18
anas Hej.
Można gdzieś przejrzeć kod phiend'a v2? ... 8.12.2005, 23:49:13
aleksander prom Cie bardzo:)
www.alek.ltd.pl/phiend2.zip 9.12.2005, 22:31:19
chfast Na CVS są chyba jedynie pliki sprzed pół roku? Moż... 14.12.2005, 18:12:57
aleksander proponowałbym przeniesienie kodu pod patronat php.... 14.12.2005, 20:16:04
chfast Cytat(aleksander @ 2005-12-14 20:16:04)propon... 14.12.2005, 20:36:01
aleksander chodzi mi o to żeby np hawk przekazał projekt jedn... 14.12.2005, 22:32:46
..:: pingu ::.. ja sie zapoznaje z tym projektem:
jedno mi jest ... 7.01.2006, 14:17:30
bela_666 pingu, popatrz na interfejs IHttpRequest 7.01.2006, 14:50:38
..:: pingu ::.. hehe, no patrz nie sadzilem ze tak mozna Mi sie ... 7.01.2006, 15:00:25
Strzałek Stuk, puk?
Czy projekt jeszcze żyje? 11.03.2006, 20:41:51
HaRy chyba nie, a szkoda... 31.03.2006, 07:40:38 ![]() ![]() |
|
Aktualny czas: 16.02.2026 - 17:27 |