Miért pont sablon ?
tgr, pp
Köszönöm a pontosítást a drupállal kapcsolatban (hogyan ragozzák ezt helyesen?). A belinkelt hozzászólás furcsa a maga módján. A fejlesztők nem a karbantartást választották egy bejáratott elemnél, hanem dobták, és visszatértek az alapokhoz.
inf3rno
Nekem pont ellentétes a véleményem. Még nem találták fel a kereket. Azért van a sokféle próbálkozás. A kerék univerzális eszköz, nekünk nincs ilyen.
Azt hiszem, a sablonok interfésznek tekinthetők a szerver oldali program és böngésző között. Adattal való feltöltésükre készültek a sablonozó megoldások.
A Smarty, a saját nyelvet alkalmazók mintha zsákutcában járnának. Nem a futtatható nyelv a lényeg, ez elég jól látszik. Van ilyen, és akkor hogyan tovább?
Ami kell, az a böngészőnek megfelelő adatok összeállítása. Erre kétféle művelet elegendő. Sztring beillesztése egy kijelölt helyre, illetve "zárójelezett" tartalom duplikálása, iterálása. Például a Mustache és személyes kedvencem az xTemplate képességeiből elég mindössze ennyit használni. Aki ezt kitalálta, szerintem ráhibázott valamire.
■ Drupal alap sablonnyelve a PHP ...
Köszönöm a pontosítást a drupállal kapcsolatban (hogyan ragozzák ezt helyesen?). A belinkelt hozzászólás furcsa a maga módján. A fejlesztők nem a karbantartást választották egy bejáratott elemnél, hanem dobták, és visszatértek az alapokhoz.
inf3rno
Nekem a sablonnyelvektől van ilyen érzésem, nem értem minek újra és újra feltalálni a kereket...
Nekem pont ellentétes a véleményem. Még nem találták fel a kereket. Azért van a sokféle próbálkozás. A kerék univerzális eszköz, nekünk nincs ilyen.
Azt hiszem, a sablonok interfésznek tekinthetők a szerver oldali program és böngésző között. Adattal való feltöltésükre készültek a sablonozó megoldások.
A Smarty, a saját nyelvet alkalmazók mintha zsákutcában járnának. Nem a futtatható nyelv a lényeg, ez elég jól látszik. Van ilyen, és akkor hogyan tovább?
Ami kell, az a böngészőnek megfelelő adatok összeállítása. Erre kétféle művelet elegendő. Sztring beillesztése egy kijelölt helyre, illetve "zárójelezett" tartalom duplikálása, iterálása. Például a Mustache és személyes kedvencem az xTemplate képességeiből elég mindössze ennyit használni. Aki ezt kitalálta, szerintem ráhibázott valamire.
Sablonkerék
Az egész sablonozás mizéria
Amit én szoktam, az az, hogy csinálok osztályokat az ismétlődő komponenseknek, és azokat használom. Ezekben lehet sablon vagy dom fa építés vagy string összefűzés, teljesen mindegy. A lényeg, hogy a nagyobb struktúrák építésénél van rá automatikus kódkiegészítés szemben a sablonnyelvekkel, amikhez nincs, vagy - ha egy sablonnyelv nagyon elterjedt - akkor talán részleges van.
Ha a kliens és a szerver oldalon is ugyanazokat a sablonokat akarjuk használni, akkor H. Gábornak igaza van abban, hogy az XML generálás és az XSLT a legjobb megoldás, mert az már egy kész szabványos sablonnyelv, nem kell újat csinálni. Annyi extra dolog van vele, hogy valamivel lassabb lehet, attól függően, hogy van e opcode cache, vagy nincs. Ennek most nem fogok utánakeresni, úgy rémlik, hogy valami van hozzá. Ha az XSLT nem kielégítő sebességben, akkor lehet elgondolkodni azon, hogy valami olyan sablont használjunk, ami szintén megy szerver és kliens oldalon is. Ez az esetek töredékében áll fenn, ehhez képest mindenki külön sablonozó rendszert használ, vagy akar írni teljesen indokolatlanul...
xsl cache
A php oldala a dolognak nem
Utánanézek
Ha az XSL cache-re utalsz,
Azt tudom tanácsolni, hogy próbáld ki az összes, ezen az oldalon a többiek által javasolt megoldásokat is, hogy lásd, melyikkel mit és hogyan (nem) lehet megvalósítani. Ezek után a saját elképzeléseidnek és igényeidnek megfelelőt válaszd ki, mert bár a magam részéről meg vagyok győződve, hogy az XSLT a legjobb, de vannak olyan helyzetek, ahol nincs szükség (ilyen szintű) sablonozásra.
Találtam jegyzetet
Találtam magyarázó példákat. El tudom képzelni, egyszerűbb esetben mire képes. Magas szinten kétségbeejtő. Változó kezelés, feltétel, ciklus ...
Szóval egy speciális nyelv. Valami programozás szerű utasítás készlettel. Persze, ha redukálom a szintet, akkor még felérem ésszel.
Ezzel kapcsolatban. Ha web lapot terveztetsz, akkor a szokásos menet (azt hiszem) az, hogy a dizájn tervet átalakítják statikus html oldalakra, majd ebből indulnak neki a programozásnak. Eltekintve attól, hogy lehet másképp, meg esetleg elavult, és így tovább, azért még előfordul ilyesmi. A kérdés az, hogy bármelyik ponton akad-e eszköz ami átalakítja a kész kódot vagy tervet xslt sablonra? Mert ha nem, akkor az elég szép kézi munkát jelent.
(Az xml-t mint adatot programmal kell előállítani, ez tiszta.)
Ha a kliens és a szerver
ja.
Programoztatok ti már valaha
Igen. Funkcionális.
Az, hogy az XSLT
Teljesen mindegy, minek
Én igen, meg lehet szokni. Az
IDE támogatást XSLT-hez
Én szeretnék konkrét példákat
Szerinted mi a hátránya az XSLT-nek?
Az XSLT-t arra találták ki,
<xsl:output method="html"
<xsl:output method="html" version="1.0" />
Az internet fejlődésének legnagyobb akadálya a HTML, valamint kézenfogva a keresők.
Egy xml->html
Én nem olvastam soha olyat xslt-ről, hogy csak nagy és komplex adatszerkezetekre lehet használni. Olyat sem olvastam, hogy csak xml->xml transzformációkra lehetne használni. Tudnál ezekről valami referenciát adni?
Nyilván lehet a hidraulikus
Az XSLT specnek egyébként mindjárt az első mondata az, hogy XSLT ... is a language for transforming XML documents into other XML documents. (Persze akkoriban még a W3C-nél úgy gondolták, hogy a HTML majd egy speciális XML-dialektussá válik idővel, ezzel azóta elég látványos kudarcot vallottak.)
Ez van. :-) Én mondjuk az
Én mondjuk az egész sablonozást nem tartom egy jó dolognak, de ez már tényleg ízlés kérdése... Nálam akkor van helyén a dolog, ha van egy MyGUIComponent osztályom ahelyett, hogy egy my-gui-component.tpl fájlom lenne. Nem tudom, hogy ez kóros e, de így szeretem :D A konfig fájloknak sem látom sok értelmét, minek valamit kitenni adat formátumba, amit utána nem akarok programmal szerkeszteni, hanem kézzel nyúlok bele?!
Nahát
Mi ezzel a baj?
- Azt, hogy te mindig beégeted a kódba - nevetséges lenne elhinnem. Nyilván nem írod le 100szor u.azt, aminek 200szor is egyformának kell lennie.
- Ezért külön osztályokat deklarálni, vagy mindegyik osztályba tenni a saját configját: magad szívatása, mert egyrészt ha mégis módosítani kell, nehezebben találod meg, másrészt kizártad a lehetőségét, hogy máshonnan is felhasználd ugyanazt az adatot, legalábbis egyszerűen, közvetlenül (pl. view réteg!) biztosan nem.
Itt ebben nem tudok egyet érteni, nekem ált. 3-6 config fájlom van, funkcionalitás szerint. Nyilván view-ból nem fogom betölteni a database configját, de a site-ét (szintén l. cikkem) alapból (sitename, telefon, cím, stb.). Szerintem ez a legkényelmesebb megoldás, nem értem, te miért nem így látod.
Több lehetőség is van, az
Egyet teszünk :)
Annyi, hogy arra már én figyelek (illetve részben a fw), hogy melyiket hova töltöm be. A kis darabszám miatt nem húzom egybe, illetve a hozzáférés miatt sem. (pl. a database configot egyetlen osztály használja)
Hát én szeretem a
Több IO
Bár ez csak az én vesszőparipám, már tgr-el és / vagy pp-vel kitárgyaltuk, hogy ezzel csak akkor kell foglalkozni, ha lassú miatta valami (és igaz is).
Nekem viszont "születési hibám" az erőforrás-spórolás. És még erre rá: PHP-ben egy csomószor csak hiszem, hogy spóroltam, nem ismerem hozzá eléggé a fordító lelkét... :)
A fájlműveletek opcode
Nekem így látatlanban azért
Konfigfájban én is PHP-barát vagyok, de azért vannak speciális esetek, amikor valami más előnyösebb, pl. ha tömböket kéne egymásba halmozni, akkor egy YAML sokkal olvashatóbb, vagy ha nagyon szigorú formátuma van, akkor egy DTD-vel ellátott XML-re automatikus ellenőrzést és kódkiegészítést kapsz.
Én a nagyját deklaratívan,
Erre tudnál egy rövid példát
new Element("html", new
Valahogy én is így csináltam
A nagyobb view-okat a vezérlő szerkezetek mentén szét szoktam vágni külön metódusokra, osztályokra mérettől függően. Itt is ugyanúgy darabolható a kód attól függően, hogy mit csinál, mint business logic-nál... Sablonok esetében gondolom minden külön fájlokba menne, és azokat szúrkálná be a rendszer. Egy méret felett gondolom belefulladnak az emberek ebbe a fájl tengerbe...
Pont egy hasonló szintaxisú
Az amit le is lehet fordítani
Az eredménye egy függvény,
Így kell elképzelni:
Ez kétféleképp valósítható
Az egyik, hogy
A másik, hogy marad a régi kód, és csinálsz egy js parsert, ami megtalálja a paraméter átadásokat. Végülis csak data.*-ra kell keresni hozzá... Ez gyakorlatilag meg már maga a sablonozás, csak itt javascriptet használsz sablon nyelvnek, és azt fordítod át szintén javascript-re.
Szerintem nincs értelme átfordítani sablonra, egyszerűen az erőfeszítés nincs arányban azzal, amit ténylegesen hoz. Mit vársz ettől az egésztől, miben lesz jobb?
Az első változattal is
Hogyan?
Szerintem vagy objektumként adod meg, amit ki akarsz rajzolni, vagy sablonban. Ha programkóddal adod meg, azt csak parserrel tudod átalakítani sablonra, máshogy nem megy. De hallgatlak...
:-)
data.title
(vagy tetszőleges attribútum) a fa felépítésekor ne értékelődjön ki (illetve konkrét érték ne helyettesítődjön be). Erre a legegyszerűbb megoldás ha lusta kiértékelést használunk (azaz adata.title
egy függvény). A nehezebb része az, hogy nem ismerjük, mely attribútumokra lesz szükség. A megoldás erre a Proxy, ami már támogatott pl node-ban. A böngészők támogatása most nem releváns, hiszen ők csak egy lefordított kódot kapnak.Ez kb megfelel az első
Btw a Proxy-ra mutató linked eltört.
http://wiki.ecmascript.org/do
Elég egyet, ami becsomagolja a formázó függvényeket, de igen, ez valóban egy kényelmetlenség... Mondjuk a sablonban nem nagyon kellene már adatot manipulálni: behelyettesítés+pár alapvető vezérlési szerkezeten kívül másra nincs nagyon szükség.
Vicces, félig-meddig
Ennek milyen előnye lenne a
Lásd 66:Tehát renderelésnél
Ennek többek között teljesítménykövetkezményei is vannak, de pl tömörebb kódot is eredményez (hiszen a lefordított sablonhoz nem kell mellékelni a sablont lefordító kódot). Sőt, ha bizonyos változókat fordítási időben lekötünk, akkor még optimálisabb kódot kaphat a kliens:
bar
értéke (mondjuktrue
), akkor a kliens csak a releváns ágakból generált kódot kapja meg:Javascriptben with-tel lehet
Igen, a with is része a
Nem is olyan ilyesztő
Nem egyértelmű
Nem sok
Mit döntök el? Mihez tartom
Nem ajánlja, de használható:
with
-et (és asszem Javaban is van megfelelője), tehát a tévedés kizárva.Azt nem egészen értem, hogy elsőt miért nem ajánlja, ha jó kódkiegészítésed van, akkor létező objektum / tulajdonság lesz benne, és ha nem létezik ezen belül "bing-bang", akkor létrehozza. Lehet, hogy én tudok túl keveset angolul, de úgy tűnik, ennyi a gondja vele, hogy van-e olyan objektum, hogy
ooo.eee.oo.ah_ah.ting.tang.walla.walla
.Ezt nem értem tisztán:
Az a baj a with-del, hogy ha
with
-del, hogy haooo.eee.oo.ah_ah.ting.tang.walla.walla
-nak nincsbing
vagybang
tulajdonsága, akkor az awith
esetében nem is jön létre, hanem a globális névtérben hozza létre vagy módosítja (esetleg olvassa) ezeket a változókat. Így csak awith
blokkot nézve nem egyértelmű, hogy mely változók/tulajdonságok lesznek használva. Ezzel szemben aLentebb a hozzászólások között írja:
* a not-ot én javítottam bele, mert csak így értelmes a mondat; minden bizonnyal elírás volt a hiánya.
Tehát nem az a baj, hogy ne lenne haszna a
with
-nek, hanem hogy nem egyértelmű -így veszélyes a használata- és mivel van ugyanolyan jó alternatívája, így felesleges veszélyforrás.Igen, sajnos alapból el van
Ez furcsa
bang
property, akkor lesz helyette egyvar bang = true
, azooo.eee.oo.ah_ah.ting.tang.walla.walla
nélkül?! Ez elég botrányos, mondjuk eddig nem is vettem észre, hogy js-ben is vanwith
- hála Istennek. :)Köszönöm a pontosítást.
Ha még var bang = true;
var bang = true;
lenne... de ráadásulbang = true;
, tehát a globális névteret szennyezi.Valószínűleg ezért nem is találkoztál vele, senki nem reklámozza, hogy létezik, mivel jobb lenne, ha senki nem használná :).
A mindenit
Egyértelműen tervezési hiba -
A nyelv fő felhasználási területéből eredően pedig gondolom nehéz megváltoztatni egy nyelvi elem működését, a visszafelé kompatibilitás miatt.
Sajnos sok az ilyen hordalék a Javascriptben - Crockford bácsi jól összeszedte őket a Javascript: The Good Parts c. könyve A és B függelékében. Ő egy olyan Javascript subset használatát javasolja mindenkinek, amiből ezek (legalábbis a fejünkben) hiányoznak, így jobb kódot lehet írni.
Javascript: The Good Parts
Hehe, a mobilos topikban
Én egyébként kedvelem a Javascriptet és a sajátos nézőpontját. Ha nem lenne ilyen összecsapottan bebetonozva, még jobb lenne :).
Én is szeretek JS-ben
Lehet hasonló szinkron
Ki tudja?
Asszem ehhez mi kicsik vagyunk, legfeljebb leírjuk a véleményünk, mások meg elolvassák, de érdemi fejlődés nem várható - sajnos.
Ugye tudod, hogy a JavaScript
Ami a „szabványmódosítás és kész” részt illeti, ez így sosem szokott megtörténni. A szabványokat szinte kizárólag bővítik.
Bizonyos értelemben már meg
A strict mód egy hack, teljes
Akkor kompatibilis
A régi kódok fognak futni a
Pardon
ECMAScript
De az ECMA bizottságon
A JavaScript nagyrészt a
???
A Netscape örököse a Mozilla,
Akit esetleg érdekel, a
A szoftveres szabványokra
Köszönöm a válaszokat
Nem jó with-et használni, egy
Mivel ebben sablonozós
Miért?
A with használata a
hmm, nem rossz...
Ha pontosan tudod, mit
Ez természetesen így van, de
Túl sokat csacsogtam...
Bízom a tudásomban, de mindenkinek lehet rossz napja - és így ilyenkor is védve vagyok.
Ebbe meg bele lehet
Nem mondtam, hogy kizárólag.
Nem bûn biztos alapokra építkezni. Az újítás pedig szerintem maga is best practice.
Ahogy nézem a Laconic pont
Eltér a véleményünk róla,
Én sem vagyok boldog a sok
Ha egyszerűek a sablonok,
Szerintem ugyanúgy lehet vele
Ha buta kliensnek (kereső,
A Bajusz nem is akar mindenre
Egyetértek. Ráadásul a
Szerény véleményem szerint volt egy korszak, amikor mindenki azt hitte, hogy mindent XML-el kell megoldani és az XML mindenre jó, az a Szent Grál. Ahogy Gábor is folyton emlegeti, ma is vannak sokan, akik különböző technológiákat Szent Grálnak hisznek - ez régebben se volt másként.
Szerintem az XML, illetve az XSLT egy borzasztó eszköz HTML template készítésére, de ez persze csak az én véleményem.
Nem is igaz, mert a REST a
Lehetne inkább
(Csak vicc, nosztalgiázok, és felkerült máshol is a téma.)
Most is nyomhatsz, csak nem
De kiírja!
NaCl
Pedig Googleben is felmerült ez a dolog pár évvel ezelött: Native Client
Más kérés, hogy nem lett nagyon népszerű se fejlesztők se böngészőgyártók körében.
Ha már úgy is egy tök
Ha ez így lenne, mindenki
Az utolsó mondat nem az én
Tudom. :-) Én leírtam már a
Én személy szerint nem
A keresőnek adat kell, és nem
És máris HTML-t generálsz
Ez ellen nincs semmi
Ha már úgyis szerveroldalon
Most nincs türelmem meg időm
Nagyon egyszerű, a REST
Ezek után a böngészőben ténylegesen megjelenő HTML-t a REST kliens állítja elő a csak adatot és linkeket tartalmazó HTML alapján. A gyakoratban ez azt jelenti, hogy megírod egyszer a REST kliensedet. Utána a következő projektnél átírod rajta a konfigban a domain nevet, hogy egy másik REST servicehez kapcsolódjon, és utána ugyanúgy működni fog, mert nem kell tudnia semmit az adatstruktúráról, azt készen kapja - linkek és űrlapok formájában - a csak adatot tartalmazó HTML-ből.
Hogy egy kicsit világosabb legyen a dolog. Ami az adatbázisban van, az egy objektum gráf. Minden egyes objektumnak vannak metódusai. Ezt az objektum gráfot egy REST service-nél felcímkézzük: minden objektumhoz tartozik egy url, a metódusokat pedig a HTTP method-oknak feleltetjük meg. Egy link vagy egy űrlap tehát egy objektum egy metódusára mutat, ami a linkre kattintáskor, vagy az űrlap küldésekor meghívásra kerül. Ha ez a metódus POST, PUT, DELETE, akkor módosítjuk az objektum gráfot. Ha a metódus GET, akkor reprezentáljuk az objektum gráfot az url-hez tartozó objektumtól kiindulva. A HTTP protokoll és egy hypermedia aware media type, mint mondjuk a HTML, tökéletesen alkalmas arra, hogy programozási nyelvtől függetlenül leírjunk vele egy objektum gráfot a rajta végrehajtható műveletekkel együtt. A böngészős, webalkalmazásos kliensek tehát nem elsődleges alkalmazási területei ennek a módszernek, gyakorlatilag bármilyen adatküldésre használhatóak olyan hálózatban, ahol többféle programnyelven írt service-ek vannak, amik rugalmasan vagy elérhetőek, vagy nem, stb... Ugyanezt a SOA UDDI-vel, WSDL-el, valamilyen protokollal, pl HTTP, illetve SOAP message-ekkel oldja meg. Ha valaki kezdő, akkor ezeket megtanulni rengeteg erőfeszítés szemben a HTTP + HTML kombinácójával, ami mellesleges sokkal emberközelibb logikáját tekintve.
Ami még baromi szép ebben az egészben, hogy a SOA - ROA kapcsolat teljesen ugyanaz, mint a procedurális programozás kapcsolata az objektum orientált programozással. A SOA-val procedurális szemlélettel adjuk meg az API-t, a ROA-val meg objektum orientálttal, ezért az analógia. A SOA egy névteret ír le függvényekkel, a ROA meg egy névteret, amiben egy objektum gráf van, amin minden egyes objektumhoz metódusok tartoznak. Ha bizonyos megkötéseket adunk a procedurális programozáshoz, akkor objektum orientáltat kapunk, ugyanígy, ha bizonyos megkötéseket adunk a SOA-hoz, akkor ROA-t kapunk. Tök érdekes, hogy a "procedurálisból OOP" témához mennyire kapcsolódik mindez.
Ami még érdekesebb, hogy mivel az adatbázisban egy objektum gráf van, ezért az adatbázis alapján generáltatható a REST API, és mivel már a kliensed megvan egy előző projektből, a tényleges munka (kisebb simításoktól eltekintve) leszűkül az adatbázis és az arculat tervezésére...
Hm, ez elgondolkodtató,
Konklúzió: Ha procedurálisan
Ha procedurálisan programozol valamit, és ki akarod tenni webre, akkor jobb, ha SOA-val csinálod, ha viszont objektum orientáltan programozol, és azt akarod kitenni, akkor a ROA sokkal kifizetődőbb. Ha az architecture más, mint a programozás stílus, akkor muszáj betenni plusz egy konverziót, ami sok plusz munkával jár.
Mely szerveroldali nyelvek
Node, PHP, Python (de biztos
Sovány
Mely nagy projectek
Miért nem?
Hogy mi förmedvény és mi nem, az szubjektív, és szokás kérdése. Ha most eléd rakok egy új nyelvet, például a LISP-et, ránézel, és ugyanezt mondod rá, mégis rengetegen használják, köztük sok, nálunk ezerszer jobb programozó.
átgondolatlan
Ezen kár rugózni.
Átgondolatlan?
Használtam már XSLT-t a
Számodra egyébként mi volt
Az xTemplate ránézésre is
A Mustache egy nagyon ideologikus sablonnyelv, ami nagyon minimalista eszközöket nyújt csak, cserébe elég jól replikálható sokféle nyelven, illetve kliensoldalon is. Ez bizonyos alkalmazásoknál (pl. rengeteg apró AJAX-hívást használó single-page appok) nagyon hasznos lehet, más alkalmazásoknál inkább probléma, egy szerverorientáltabb, HMVC alkalmazáshoz pl. nehezen tudom elképzelni a használatát. (Plusz személy szerint nekem nem tetszik, hogy az autoescape-elt és a nyers változókat nehéz megkülönböztetni vizuálisan.)
A két "nagy" sablonnyelv PHP-hez egyébként a Smarty és a Twig, ezeket valamivel többet kell tanulni, de többet is tudnak. Sok különbség nincs közöttük, a Smarty egyszerűbb elven működik és könnyebben hackelhető, a Twig robosztusabb és komplexebb dolgokat tud, pl. az i18n-integrációja nagyon szép, cserébe kicsit rugalmatlanabb (és az írója szeret kreatív lenni a szintaxissal, ami helyenként inkább a Pythonra emlékeztet, mint a PHP-re, ízlés dolga, hogy ez jó vagy rossz dolog).
Hagyományos weboldal készítés
Ez így jó, vagy van mit javítani rajta?
Érdekelne, ez már kihaló műfaj, vagy van rá kereslet? (költői kérdés)
Ha a szerver oldalon vagyok, akkor a statikus html-t kell valami módon illeszteni. A html-t, miután már kész, a legkevesebb sérülés akkor éri, ha sablonná alakítom.
Volt olyan eset amikor szétválogattam a spagetti kódot külön függvényekbe karbantartás címén. A PHP átláthatóbb lett, a megjelenítés meg követhetetlenné vált. Szóval, ilyet csak szükség esetén.
Marad a sablon. Megnéztem párnak a leírását, a "Smarty" természetesen benne van (a csapból is az jön). Valami mást akartam, olyan kis ügyeset. Végiggondoltam hogyan írok programot, megjelenítő kódot, bele a html-be. Elég egyszerűen: Változó egy-egy kijelölt helyre, sor másolás, azon esetleg javítás. És működni fog.
Végül is arra kerestem sablonozót ami a fenti két elvet(?) - iteráció több szinten, csere - jól láthatóan tudja. Ez lett az "xTemplate" minden fogyatékosságával együtt. A nagyokban ez a szemlélet nincs meg. Inkább szépített PHP nyelvek.
(Olyasmit mint az escape-lés könnyű pótolni, nem ezen fogok fennakadni.)
Ui.
Kíváncsiságból megnéztem 3 nagy fórumot, mi a vélemény a template rendszerekről.
1 - Weblabor:
Igazán színpompás közönség. Nem tudok élni nélküle - Néha jól jön - Úgy felesleges ahogy van - Generált tartalom kell, semmi más
2 - HUP:
Szinte osztatlan lelkesedés. Alighanem "igazi programozók" járnak ide, azok akik szeretik a bonyolult dolgokat.
3 - PROG.HU:
Előfordul az állás hirdetésekben. Egyszerűen nem téma.
Helyzet függő, hogy hogy
Az igazi
A korábban említett JS
Natív JS kód, nyilván megvannak a maga korlátai, leginkább csak just-for-fun jelleggel készült, meg persze azért, hogy megmutassam: ilyet is lehet.
Van benne változó behelyettesítés, néhány vezérlési szerkezet (if, csak az igaz ágra, illetve egy buta loop szerkezet)
Elsőre talán kicsit furcsa lehet a sok zárójel (bele lehet keveredni), azért esett a választás erre, mert csak.
Egy naprakész (és megfelelően beállított) Chrome böngészővel (
Version 30.0.1573.2 dev
), illetve node.js-ben (v0.10.16
,--harmony
kapcsolóval) is működik.Adat vagy program
A tanácsok szerint a legfontosabb szempont:
- HTML mentesítése mindenféle program kódtól. Amit a böngészőnek küldünk, azt legjobb adatkezelési módszerekkel előállítani.
- Az elterjedt sablonozók nem szakadnak el a kevert nyelvtől. Együtt van minden, pont úgy mint a kezdetek kezdetén. Jól bejáratott megközelítés, szabványnak tekinthető. De itt, valamiért, a sablonozók kikerültek a látótérből. Nem elég praktikusak, vagy csak egyszerűen a szerver oldalon nem érdemes kimenetet előállítani?
- Ha már adat, akkor zavarba ejtő a választék. Maradhat a tartalom előállítás a szerver oldalon. XSLT például, generált kód, stb. Át lehet lapátolni az egészet a böngésző oldalára, vagy éppen meg lehet írni egyszerre mindkét oldalra szimultán. Az adatkezeléssel kapcsolatban:
- Egyedi megoldások tengere, cserébe rugalmasabb mint a sablon, viszont a színvonal erősen függ a programozó képességeitől.