Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [klasa]Klasa widoku
nospor
post
Post #1





Grupa: Moderatorzy
Postów: 36 559
Pomógł: 6315
Dołączył: 27.12.2004




Przedstawiam Wam dziś klasę widoku - jest to alternatywa dla systemów szablonów. Dzięki tej klasie możecie łatwo oddzielić logikę aplikacji od jest wyglądu.
Opis i przykłady użycia znajduje się tu:
http://nospor.pl/klasa-widoku.html

Download (klasa wraz z przykładową aplikacją):
http://nospor.pl/download/idfolder/31/
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi
Crozin
post
Post #2





Grupa: Zarejestrowani
Postów: 6 476
Pomógł: 1306
Dołączył: 6.08.2006
Skąd: Kraków

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


Cytat
Nie ma psr, nie ma composera. Brak publicznego repo? Jest download - ściągasz - masz. Naprawdę nie wiem jaki tu problem
O publicznym repo wspomniałem tylko ze względu na Composera. W przypadku, gdybyś nie miał dodanego swojego projektu do jednego z repozytoriów Composera, zawsze można poinformować Composera by skorzystał właśnie z VCS-a do pobrania. Tobie chyba nie muszę tłumaczyć wyższości wszelkiego oprogramowania do zarządzania zależnościami od ręcznego dodawania bibliotek?
Cytat
Cytat
2. Przydałoby się dodać do projektu "całą otoczkę" opensource'owych projektów.
ad2) Nie rozumiem
Chodziło mi wszelkiego rodzaju informacje dot. licencji, zgłaszania błędów, wspomnianego wcześniej Composera/VCS-a czy chociażby autora (brak maila/innej formy kontaktu). Wiem, że to nie jest "poważny, open sourceowy projekt", a prosta klasa do obsługi prostych zadań; wiem, że to dział gotowe rozwiązania, a nie oceny, ale jeżeli już udostępniasz coś publicznie rób to porządnie. Szczególnie, że wiem, że nie jesteś początkujący. (IMG:style_emoticons/default/wink.gif)
Cytat
ad3) Co tu jest utrudniane?
Najprostszy przykład: nie utworzysz równolegle dwóch obiektów szablonu z różną konfiguracją, czego mógłbyś potrzebować na przykład przy wysyłce maili (szablony w osobnym katalogu).
Cytat
ad4) A co wg. Ciebie będzie alternatywą na przypisywanie zmiennych, tablic i obiektów? Dla mnie to jest najprostrzy i najlepszy sposób. Masz inny - chętnie wysłucham
Nie używać czystego PHP, tylko jakiegoś narzędzia ze wsparciem dla czegoś w rodzaju ExpressionLanguage znanego chociażby z JSF czy PHP-owego Twiga.
Cytat
ad5) Wiedziałem że znajdą się fanatycy wyjątków i już pierwszy jest (IMG:style_emoticons/default/wink.gif)
NIe używam wyjątków gdy nie widzę potrzeby. Brak zdefiniowanej zmiennej, do której ktoś się próbuje odwołać nie jest dla mnie żadną sytuacją wyjątkową, szczególnie w kontekście całego php, gdzie to również nie jest jakimś specjalnym problemem.
1. Potrzebowałeś backtrace'a, który jest udostępniany przez wyjątki. Zamiast tego zrobiłeś własny, który w dodatku pokazuje jedynie jeden element całego backtracea.
2. "Poprawne" obsługiwanie nieistniejących rzeczy jakie zaprezentowałeś i jakie znamy chociażby z PHP w połączeniu z ignorowaniem błędów to przyczyna z 15-20% nudnych tematów w dziale przedszkole, i dziesiątek godzin spędzonych na poszukiwaniu literówek i wtf'ków z niewiadomej przyczyny.
Cytat
Nigdy nie miałem potrzeby jakoś bardziej coś escapować. htmlspecialchars w 95% przypadkach wystarcza i dlatego dodałem tylko to.
  1. <?php
  2. $a = 'blah\' onclick=\'KOD JAVASCRIPT';
  3. ?>
  4. <p title='<?php echo htmlspecialchars($a) ?>'>sadada</p>
To nie jest specjalna potrzeba. (IMG:style_emoticons/default/wink.gif)

Cytat
ps: w jakieś psr i inne wynalazki będę się bawić, gdy php 5.3 będzie popularne i wszędzie. Póki oszczędzam sobie i innym problemów.
PHP 5.3 ma już prawie 4 lata i jest powszechnie dostępne. Na prawdę powinieneś już zrezygnować ze starszych wersji w przypadku nowych projektów...
Cytat
Zaś ci co korzystają nagminnie z autoloaderów naprawdę nie widzę problemu, by sobie jedną klasę zaincludowali po staremu
Tutaj właśnie poprzez Twoje nie trzymanie się konwencji, które po wielkich bólach w końcu pojawiają się w świecie PHP, rzucasz kłody pod nogi. Szczególnie, że trzymanie się konwencji na prawdę nie tworzy dodatkowego nakładu pracy z Twojej strony.
Go to the top of the page
+Quote Post

Posty w temacie
- nospor   [klasa]Klasa widoku   13.06.2013, 07:47:27
- - Spawnm   ViewPluginBase dał bym jako abstract. $tpl na...   13.06.2013, 08:33:52
- - pyro   Cześć. A ma coś lepszego / innego niż istniejące ...   13.06.2013, 08:35:21
- - nospor   CytatViewPluginBase dał bym jako abstract.A ma to ...   13.06.2013, 08:44:45
- - Dipter   1. Wszystkie właściwości klasy są statyczne, za wy...   13.06.2013, 14:37:18
- - Crozin   1. Brak wsparcia dla PSR-0 oraz Composera; Brak re...   13.06.2013, 15:09:42
- - nospor   @dipter ad1) Mi pasuje tak. ad2) Pewnie masz racj...   13.06.2013, 15:31:53
- - Dipter   Cytat@dipter ad1) Mi pasuje tak. ad2) Pewnie masz...   13.06.2013, 16:05:09
- - nospor   ad1) Wyjaśni mi wkońcu ktoś o jakich tu kłodach mo...   13.06.2013, 16:13:07
- - Crozin   CytatNie ma psr, nie ma composera. Brak publiczneg...   13.06.2013, 16:57:02
- - Spawnm   Cytatjak php5.3 będzie standardem, to zacznę tego ...   13.06.2013, 16:58:34
- - nospor   CytatTobie chyba nie muszę tłumaczyć wyższości wsz...   13.06.2013, 17:47:31
- - Crozin   CytatO ile w takim linuxie to jest zajebista spraw...   13.06.2013, 20:44:30
- - nospor   CytatMoże jeszcze mi powiesz, że o narzędziach do ...   14.06.2013, 07:38:46
- - Crozin   CytatChcesz mi powiedzieć, że inne systemy szablon...   14.06.2013, 14:02:36
- - nospor   CytatTak, albo przynajmniej udostępniają coś w rod...   14.06.2013, 17:12:09
- - Crozin   CytatMoim głównym celem było pokazanie, głównie dl...   14.06.2013, 19:27:12
- - nospor   CytatIMO jeżeli chciałeś zademonstrować przykład u...   17.06.2013, 11:42:06
- - uki8877   OK, bardzo mi sie spodobala ta klasa i chcialbym ...   28.05.2016, 14:52:50
- - viking   Poczytaj troszkę podstaw m.in. jak stosować namesp...   28.05.2016, 15:23:33
- - nospor   CytatCall to undefined method Db::prepare()Przecie...   29.05.2016, 22:07:28


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

 



RSS Aktualny czas: 6.10.2025 - 02:58