Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> Własny framework, Stworzyłem własny framework
kkowalskipl
post
Post #1





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 8.08.2011

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


Stworzyłem własny framework do projektów. Prosiłbym wszystkich o komentarze do niego, co się podoba, co mógłbym zmienić itd.
Tutaj link do pobrania: http://docs.konrad-kowalski.com/all_open/all_open.rar
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 10)
lobopol
post
Post #2





Grupa: Zarejestrowani
Postów: 1 729
Pomógł: 346
Dołączył: 4.04.2009

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


Popatrzyłem tylko na kod i niestety uważam, że tego frameworkiem nazwać nie można, brak jakiegoś routingu, wsparcia dla ładnych url czy metod ułatwiających pracę, wszędzie masz tłumienie błędów. System templatek mógłby właściwie tu nie istnieć bo strony są praktycznie statyczne. Popatrz sobie na takie frameworki jak kohana/symfony/yii/itp. jakie mają rozwiązania bo niestety twój nie ma praktycznie żadnej elastyczności.


--------------------
Go to the top of the page
+Quote Post
Daiquiri
post
Post #3





Grupa: Administratorzy
Postów: 1 552
Pomógł: 211
Dołączył: 7.07.2009
Skąd: NJ




Hmm, szczerze powiedziawszy nie bardzo widzę tam architekturę w stylu frameworka. Zapomniałeś dołączyć, nawet ogólną, dokumentację.
Go to the top of the page
+Quote Post
!*!
post
Post #4





Grupa: Zarejestrowani
Postów: 4 298
Pomógł: 447
Dołączył: 16.11.2006

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


Z chęcią bym ocenił, ale nie ma za bardzo czego. Brakuje dokumentacji, chociażby solidnego opisu kodu. I jak na FW to brak wyżej wymienionych rzeczy go dyskwalifikuje. Popraw, opisz chociaż kod tak "ogólnie" bo bez tego trudno zgadywać co robi dany kawałek.

Ten post edytował !*! 3.09.2011, 13:13:43


--------------------
Nie udzielam pomocy poprzez PW i nie mam GG.
Niektóre języki programowania, na przykład C# są znane z niezwykłej przenośności (kompatybilność ze wszystkimi wersjami Visty jest wiele warta).
Go to the top of the page
+Quote Post
Spawnm
post
Post #5





Grupa: Moderatorzy
Postów: 4 069
Pomógł: 497
Dołączył: 11.05.2007
Skąd: Warszawa




Bibliotego Gd autorstwa:
Copyright © 2009, Ian Selby/Gen X Design
Więc nie oceniam.

Co do reszty:
$file = 'komiksy/'.@$_GET['name'].'.jpg';

eval("\$aModules[$v[0]] = new $v[0]();");

$s = 'str_replace(\''.$sAll.'\', $aModules[$v[0]]->$sMethod($sArgs), $return)';

//print $s = 'str_replace(\''.$sAll.'\', $aModules[$v[0]]->$sMethod($sArgs), $return)'; print '<br />';

eval("\$return = $s;");
  1. public function mainMenu()
  2.  
  3. {
  4.  
  5. $return = '<strong>Menu główne:</strong><br />';
  6.  
  7. $return .= '
  8.  
  9. - strona główna<br />
  10.  
  11. - aktualności<br />
  12.  
  13. - galeria<br />
  14.  
  15. - kontakt<br />
  16.  
  17. ';
  18.  
  19.  
  20.  
  21. return $return;
  22.  
  23. }


To czekam na jakieś dłuższe wyjaśnienie czemu, po co i jak.
Go to the top of the page
+Quote Post
kkowalskipl
post
Post #6





Grupa: Zarejestrowani
Postów: 13
Pomógł: 0
Dołączył: 8.08.2011

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


$file = 'komiksy/'.@$_GET['name'].'.jpg'; <------------ to było używane wcześniej dla testó itd(wiem ze nie zabezpieczone, bo robione na szybko, żeby coś sprawdzić), sory, ze nie zakomentowalem smile.gif

Co do reszty:
eval("\$aModules[$v[0]] = new $v[0]();");
$s = 'str_replace(\''.$sAll.'\', $aModules[$v[0]]->$sMethod($sArgs), $return)';

służy mi to do obsługi własnego systemu templatek.
Templatka wygląda tak:
---jakiś kod html..---
<div id="bla">{mainClass,mainMethod,arguments}</div>
---jakiś kod html..---

Cały kod jest parsowany.

{mainClass,mainMethod,arguments} <!-------- to dodatkowo parsuje, i zamienia odpowiednio na wywołanie odpowiedniej metody.
Czyli:
$aModules['mainClass'] = new mainClass(); <------ == ------> eval("\$aModules[$v[0]] = new $v[0]();");
$aModules['mainClass'] -> mainMethod($arguments); <------ == ------> $s = 'str_replace(\''.$sAll.'\', $aModules[$v[0]]->$sMethod($sArgs), $return)';


Co do tego: public function mainMenu()
To przykładowa metoda, do wywołania, nic większego ma nie robić, poza wyświetleniem tekstu wink.gif. Ogólnie w to miejsce wczytane jest np. menu.

Ten post edytował kkowalskipl 3.09.2011, 16:45:40
Go to the top of the page
+Quote Post
ActivePlayer
post
Post #7





Grupa: Przyjaciele php.pl
Postów: 1 224
Pomógł: 40
Dołączył: 6.07.2004
Skąd: Wuppertal

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


dont get me wrong... nie wynajdujesz koła na nowo?
Go to the top of the page
+Quote Post
rafio
post
Post #8





Grupa: Zarejestrowani
Postów: 32
Pomógł: 4
Dołączył: 8.06.2007
Skąd: Wrocław

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


Może trochę offtopicznie ale muszę coś od siebie wtrącić:

Cytat(ActivePlayer @ 3.09.2011, 21:23:44 ) *
dont get me wrong... nie wynajdujesz koła na nowo?


A czy przypadkiem nie ma tutaj próby zbudowania własnego koła, a nie wynalezienia nowego? Sam poszukiwałem swego czasu FW dla siebie, i każdy miał coś co mnie odtrącało, w końcu postanowiłem napisać własny - nie wynajduję koła na nowo, buduję koło dopasowane do moich potrzeb.

Pozdr.


--------------------
I twitr, meh and code.
Go to the top of the page
+Quote Post
lobopol
post
Post #9





Grupa: Zarejestrowani
Postów: 1 729
Pomógł: 346
Dołączył: 4.04.2009

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


Ja już do kół porównujemy to tu bardziej kwadrat niż koło wyszedł smile.gif

Ten post edytował lobopol 4.09.2011, 07:24:18


--------------------
Go to the top of the page
+Quote Post
by_ikar
post
Post #10





Grupa: Zarejestrowani
Postów: 1 798
Pomógł: 307
Dołączył: 13.05.2009
Skąd: Gubin/Wrocław

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


FW można napisać w celach edukacyjnych, chociażby. Ciekawe jakby to wyglądało jakby wszyscy używali jednego słusznego fw, napisanego w jedynym słusznym języku.. eval to można używać do templatek których nie chcemy cachować, można przecież pobawić się buforem i zwracać wynik wykonanej templatki właśnie w taki sposób. Eval jest zły.

Odnośnie tłumenia błędów.. Nie ważne czy błąd jest mały/duży lub mało prawdopodobny, zawsze powinieneś się go spodziewać i go obsłużyć. Później będzie sytuacja że chcesz jakieś informacje wysłać nagłówkami, nie zadziałają ci, nie zwróci ci błędu i nie będziesz wiedział co jest grane. Postaw przykładowo pusty znak przed kodem php nagłówki się już nie wyślą i nie będziesz wiedział dlaczego.

Podpatrz jak to się robi w innych frameworkach, może nawet jakiś ci przypadnie do gustu, przerób go pod swoje zapotrzebowania, czy coś.

Odnośnie wynajdowania koła na nowo. Po co ktoś ma pisać system templatek (opt, twig, phptal) skoro istnieje superaśne smarty? Zakładanie że lepszego koła się nie wynajdzie jest IMO błędne. Nawet jeżeli nie wynajdzie nic lepszego, to podszlifuje tu i ówdzie swoje umiejętności. Po co nam symfony/zend 2 skoro mamy symfony/zend 1 smile.gif można by tak w kółko..
Go to the top of the page
+Quote Post
erix
post
Post #11





Grupa: Moderatorzy
Postów: 15 467
Pomógł: 1451
Dołączył: 25.04.2005
Skąd: Szczebrzeszyn/Rzeszów




Cytat
Co do reszty:
eval("\$aModules[$v[0]] = new $v[0]();");
$s = 'str_replace(\''.$sAll.'\', $aModules[$v[0]]->$sMethod($sArgs), $return)';

służy mi to do obsługi własnego systemu templatek.

Skoro do czegoś takiego używasz eval i chcesz pisać frameworka, to skasuj cały kod. Nie masz pojęcia o języku, w którym piszesz. Nie zaczynaj budowy domu od komina.

Raz, są inne konstrukcje do tego, dwa - użycie czegoś takiego totalnie przekreśla optymalizacje przez akceleratory.

Odrób pracę domową. Wiem, bolesna "recenzja", ale - nie daj Panie Boże - aby ktoś z tego korzystał. Poprogramujesz trochę w pehapcu, wspomnisz moje słowa.


--------------------

ZCE :: Pisząc PW załączaj LINK DO TEMATU i TYLKO w sprawach moderacji :: jakiś błąd - a TREŚĆ BŁĘDU? :: nie ponaglaj z odpowiedzią via PW!
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Aktualny czas: 22.08.2025 - 05:44