Internetová anomália z generácie F.
Patlám weby a pripravujem kick-ass službu pre podnikateľov.
V čom sa vyznám:
Overený používateľ, členom od 30.7.2011
(zatiaľ žiadne)
Andrej Sýkora nenapísal žiadne články/novinky
Andrej Sýkora napísal 9 komentárov
0
0
Andrej Sýkora
2011-08-19 13:39:06
@František: neviem, aký(/é) framework(y) používaš, ale z mojich skúseností je implementácia niečoho takéhoto otázka správneho rozhodnutia a rozvrhnutia pri začiatku vývoja. nechce sa mi teraz obšírne rozpisovať architektúru takého webu, možno sa mi raz bude chcieť napísať článok. (ale to už budeme pravdepodobne riešiť HTML7)
"mesiac navyše" je podľa mňa trochu moc, a keby to niekomu naozaj tak dlho trvalo, vždy to vyváži možnosť používať to riešenie vo všetkých ďalších projektoch.
@František: neviem, aký(/é) framework(y) používaš, ale z mojich skúseností je implementácia niečoho takéhoto otázka správneho rozhodnutia a rozvrhnutia pri začiatku vývoja. nechce sa mi teraz obšírne rozpisovať architektúru takého webu, možno sa mi raz bude chcieť napísať článok. (ale to už budeme pravdepodobne riešiť HTML7)
"mesiac navyše" je podľa mňa trochu moc, a keby to niekomu naozaj tak dlho trvalo, vždy to vyváži možnosť používať to riešenie vo všetkých ďalších projektoch.
0
0
Andrej Sýkora
2011-08-19 01:24:27
@František:
Väčšina moderných jQuery / JS MVC frameworkov (Sammy.js, Backbone.js, Spine.js) pracuje práve s tým hashom (#/users/view), ktorého použitie umožňuje úplne vynikajúcu použiteľnosť Back / Forward buttonov v prehliadači.
Jednoduchú ukážku požitia Spine.js routovania nájdeš na http://madeby.sk , ktoré som už posielal v článku o horizontálnom scrollingu, ale opakovanie je matka múdrosti. Keď sa preklikáš niekoľkými sekciami, uvidíš, že Back / Forward buttony fungujú skvele.
Na http://www.yourseoplan.com/examples-of-sites-using-googles-ajax-indexing-specification/ potom nájdeš príklady použitia tej špecifikácie Google v praxi. (Spine.js má pre ňu natívny ovládač, no vzhľadom na jednoduchosť horeuvedeného webu mi prišlo ako overkill to tam používať :-))
Samozrejme, je potrebné mať robustný základ aplikácie / frameworku, inač sa vývoj oboch variánt prezerania stránky môže dosť zvrtnúť.
Pointa ale ostáva, že technológie existujú, nie je to len nejaký proof of concept, stačí sa do toho zahryznúť. :-))
@František:
Väčšina moderných jQuery / JS MVC frameworkov (Sammy.js, Backbone.js, Spine.js) pracuje práve s tým hashom (#/users/view), ktorého použitie umožňuje úplne vynikajúcu použiteľnosť Back / Forward buttonov v prehliadači.
Jednoduchú ukážku požitia Spine.js routovania nájdeš na http://madeby.sk , ktoré som už posielal v článku o horizontálnom scrollingu, ale opakovanie je matka múdrosti. Keď sa preklikáš niekoľkými sekciami, uvidíš, že Back / Forward buttony fungujú skvele.
Na http://www.yourseoplan.com/examples-of-sites-using-googles-ajax-indexing-specification/ potom nájdeš príklady použitia tej špecifikácie Google v praxi. (Spine.js má pre ňu natívny ovládač, no vzhľadom na jednoduchosť horeuvedeného webu mi prišlo ako overkill to tam používať :-))
Samozrejme, je potrebné mať robustný základ aplikácie / frameworku, inač sa vývoj oboch variánt prezerania stránky môže dosť zvrtnúť.
Pointa ale ostáva, že technológie existujú, nie je to len nejaký proof of concept, stačí sa do toho zahryznúť. :-))
0
0
Andrej Sýkora
2011-08-18 20:55:53
Ja len k téme SEO a AJAX:
Zrovna dynamicky načítaný obsah je ale dnes už extrémne jednoduché spraviť indexovateľným - či už cez http://code.google.com/intl/sk-SK/web/ajaxcrawling/ pre Google, alebo pre extrémne pedantných jedincov použitím REST štruktúry aplikácie (aspoň tak to tuším volali v Rails, jednoducho ide o to, že odkaz smeruje na reálnu adresu, no zároveň pri zapnutom JS preferuje AJAX), ktorá zároveň vytvorí vrstvu aj pre ľudí s vypnutým Javascriptom a zaručí kompatibilitu aj s inými vyhľadávačmi. Všetko je to len otázkou (ne)lenivosti programátora.
Ja len k téme SEO a AJAX:
Zrovna dynamicky načítaný obsah je ale dnes už extrémne jednoduché spraviť indexovateľným - či už cez http://code.google.com/intl/sk-SK/web/ajaxcrawling/ pre Google, alebo pre extrémne pedantných jedincov použitím REST štruktúry aplikácie (aspoň tak to tuším volali v Rails, jednoducho ide o to, že odkaz smeruje na reálnu adresu, no zároveň pri zapnutom JS preferuje AJAX), ktorá zároveň vytvorí vrstvu aj pre ľudí s vypnutým Javascriptom a zaručí kompatibilitu aj s inými vyhľadávačmi. Všetko je to len otázkou (ne)lenivosti programátora.
K článku Web na šírku? A prečo nie?!
0
0
Andrej Sýkora
2011-08-18 01:52:45
Jeden taký je napríklad na http://madeby.sk/#/gallery/webdesign - sekcia Portfólio. Dokonca tam aj tak paralyzovane funguje koliečko na myši, keby to niekto chcel preskúmať.
Jeden taký je napríklad na http://madeby.sk/#/gallery/webdesign - sekcia Portfólio. Dokonca tam aj tak paralyzovane funguje koliečko na myši, keby to niekto chcel preskúmať.
0
0
Andrej Sýkora
2011-08-10 17:13:07
@mhp ďakujem za linky, máš pravdu, som rád že niekto spravil test so správnou metodikou (tzn. že neincludoval stále ten istý súbor ale vždy vytvoril nový).
škoda že sa tu nedajú opravovať príspevky, opravil by som sa :-/
@mhp ďakujem za linky, máš pravdu, som rád že niekto spravil test so správnou metodikou (tzn. že neincludoval stále ten istý súbor ale vždy vytvoril nový).
škoda že sa tu nedajú opravovať príspevky, opravil by som sa :-/
K článku Tvorba MVC Frameworku
0
0
Andrej Sýkora
2011-08-10 17:11:36
Andrej, prepáč za kritiku, ale podľa toho, ako si reagoval na výčitky pána Knesla, nemáš vôbec poňatie o princípoch OOP a tým pádom Tvoj článok viac mätie ako pomáha.
Trieda Framework reprezentuje základňu frameworku, akési prostredie, environment, OK. Ako môžeš potom z tejto triedy odvodiť triedu, ktorá reprezentuje model, čiže nástroj na získavanie dát, a controller, čiže nástroj kontrolujúci určitú funkčnú časť aplikácie? To sú 3 úplne iné objekty, ktoré nemôžu mať jedného spoločného predka, pokiaľ sa teda nejedná o nejakú základnú definíciu objektu s pomocnými metódami. (o čo sa v Tvojom prípade nejedná)
Skúsim príklad. Je to ako by si napísal triedu Les, z ktorej si potom odvodil triedy Zviera a Búrka. Tri úplne rozdielne veci.
K ostatným veciam sa nejdem vyjadrovať, pretože práve chyby v návrhu mi prídu ako hlavný problém celého článku.
Andrej, prepáč za kritiku, ale podľa toho, ako si reagoval na výčitky pána Knesla, nemáš vôbec poňatie o princípoch OOP a tým pádom Tvoj článok viac mätie ako pomáha.
Trieda Framework reprezentuje základňu frameworku, akési prostredie, environment, OK. Ako môžeš potom z tejto triedy odvodiť triedu, ktorá reprezentuje model, čiže nástroj na získavanie dát, a controller, čiže nástroj kontrolujúci určitú funkčnú časť aplikácie? To sú 3 úplne iné objekty, ktoré nemôžu mať jedného spoločného predka, pokiaľ sa teda nejedná o nejakú základnú definíciu objektu s pomocnými metódami. (o čo sa v Tvojom prípade nejedná)
Skúsim príklad. Je to ako by si napísal triedu Les, z ktorej si potom odvodil triedy Zviera a Búrka. Tri úplne rozdielne veci.
K ostatným veciam sa nejdem vyjadrovať, pretože práve chyby v návrhu mi prídu ako hlavný problém celého článku.
0
0
Andrej Sýkora
2011-08-10 12:48:47
@mhp v pohode, ja som to nijako netestoval, idem na to len logicky podľa toho, čo by tá funkcia mala robiť. pokiaľ existuje nejaký korektný test, tak sa naň rád pozriem a dám ti za pravdu tým pádom.
evidentne ale nie som jediný, komu sa to nezdá:
http://www.sitepoint.com/forums/php-34/what-makes-include_once-require_once-so-slow-269085.html
plus kopa iných dotazov po hodení "require vs. require_once".
vkladanie hlavičky - hlavička nebude mať v sebe nijaké funkcie, triedy, atď., je to len šablóna. nepotrebujem overovať, či ju vkladám len raz, keďže to nemôže spraviť paseku, preto by som radšej použil require(). to sú už ale naozaj len kozmetické veci.
@mhp v pohode, ja som to nijako netestoval, idem na to len logicky podľa toho, čo by tá funkcia mala robiť. pokiaľ existuje nejaký korektný test, tak sa naň rád pozriem a dám ti za pravdu tým pádom.
evidentne ale nie som jediný, komu sa to nezdá:
http://www.sitepoint.com/forums/php-34/what-makes-include_once-require_once-so-slow-269085.html
plus kopa iných dotazov po hodení "require vs. require_once".
vkladanie hlavičky - hlavička nebude mať v sebe nijaké funkcie, triedy, atď., je to len šablóna. nepotrebujem overovať, či ju vkladám len raz, keďže to nemôže spraviť paseku, preto by som radšej použil require(). to sú už ale naozaj len kozmetické veci.
0
0
Andrej Sýkora
2011-08-09 18:34:41
pre upresnenie, xxx_once() určite nie je "údajne rýchlejšie" v prípade popisovanom v článku, keďže okrem samotného prevedenia kódu ešte aj vykonáva jeho kontrolu pre zistenie duplicity, takže na vkladanie pätičky / hlavičky sa vôbec nehodí.
hodí sa len v prípade, že máme povedzme 10 súborov využívajúcich jeden spoločný súbor s knižnicou, no nevieme, ktoré z tých 10 súborov za behu použijeme. preto na začiatok každého dáme xxx_once('subor_s_kniznicou.php'), ktoré nám zaručí, že sa spoločný súbor nevloží x-krát a nehodí chybu kvôli duplicitnej definícií funkcie / triedy.
tento spôsob je ale dosť náročný na údržbu, takže v takom prípade je lepšie napísať si za pomoci __autoload() vlastný loader.
pre upresnenie, xxx_once() určite nie je "údajne rýchlejšie" v prípade popisovanom v článku, keďže okrem samotného prevedenia kódu ešte aj vykonáva jeho kontrolu pre zistenie duplicity, takže na vkladanie pätičky / hlavičky sa vôbec nehodí.
hodí sa len v prípade, že máme povedzme 10 súborov využívajúcich jeden spoločný súbor s knižnicou, no nevieme, ktoré z tých 10 súborov za behu použijeme. preto na začiatok každého dáme xxx_once('subor_s_kniznicou.php'), ktoré nám zaručí, že sa spoločný súbor nevloží x-krát a nehodí chybu kvôli duplicitnej definícií funkcie / triedy.
tento spôsob je ale dosť náročný na údržbu, takže v takom prípade je lepšie napísať si za pomoci __autoload() vlastný loader.
Páčilo sa mi...
Andrej Sýkora je tiež tu:
· BLOG
· E-MAIL
as zavinac andrejsykora bodka com
· FACEBOOK
· LINKEDIN
· TWITTER
· WEB
Program na pozadí, ručná editácia. A.k.a. načo robiť veci jednoducho, keď idú zložito. A vy si vravíte programátori! :D
Môj postup: vytvorte si na ploche .bat súbor: zober vstup od užívateľa, pridaj riadok do hosts, pridaj virtual hosta do konfigurácie apachu.
Spustite .bat ako správca. Zadajte názov. A znova, znova, znova...