![]() |
![]() ![]() |
![]() |
![]()
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 |
|
|
![]()
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.
-------------------- |
|
|
![]()
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ę.
|
|
|
![]()
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). |
|
|
![]()
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;");
To czekam na jakieś dłuższe wyjaśnienie czemu, po co i jak. |
|
|
![]()
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
![]() 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 ![]() Ten post edytował kkowalskipl 3.09.2011, 16:45:40 |
|
|
![]()
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?
|
|
|
![]()
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ć:
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.
|
|
|
![]()
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ł
![]() Ten post edytował lobopol 4.09.2011, 07:24:18 -------------------- |
|
|
![]()
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 ![]() |
|
|
![]()
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! |
|
|
![]() ![]() |
![]() |
Aktualny czas: 22.08.2025 - 02:57 |