Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.

Scripta na vishe jezika

[es] :: PHP :: Scripta na vishe jezika

[ Pregleda: 3253 | Odgovora: 12 ] > FB > Twit

Postavi temu Odgovori

Autor

Pretraga teme: Traži
Markiranje Štampanje RSS

RAZZLEDAZZLER
Tora Bora

Član broj: 27
Poruke: 543
*.verat.net



Profil

icon Scripta na vishe jezika04.01.2003. u 16:14 - pre 258 meseci
Ima na nekim od prethodnih topica pitanje vezano za podrzavanje vishe jezika od strane scripte.
Npr napravi se verzija scripte na engleskom, srpskom, nemachkom itd itd
Mene zanimaju slichne, ali malo drugachije stvari u odnosu na taj topic, pa zato otvaram novi.

Neko je rekao da je najbolje za tako neshto koristiti Smarty.
Da li neko misli da ima neko bolje reshenje od Smarty-ja i ako ima - koje je to i zashto?

Kada kazem bolje, mislim na neshto shto nece imati sopstvenu sintaksu kao Smarty, shto ce biti
relativno jednostavno lako za odrzavanje [za veliki broj update-a i koda i dizajna].
Da li je neko stavljanje svojih funkcija u poseban fajl i pozivanje istih mozda bolje reshenje?

Ajde svi koji imate da kazete neshto o ovome, kazite shta imate i obrazlozite mishljenje. Znam i sam da moze na vishe nachina da se uradi, zanima me koji je po vama najbolji.

Hvala

P.S. Molim bez odgovora "ma smarty ti je najbolji" nego ako moze uz to neko obrazlozenje ili ako je nekom lakshe primer zashto je jedno bolje od drugog
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.rcub.bg.ac.yu

Sajt: localhost


+5 Profil

icon Re: Scripta na vishe jezika05.01.2003. u 00:12 - pre 258 meseci
"ma smarty ti je najbolji"


:D posto sam ja to rekao i u prvoj temi, ajde da ti odgovorim. mozes da koristish i druge template engine (sisteme), koji imaju manje opcija, a samim tim i prostiju sintaxu, ako to bash oces. ja sam samo naveo smarty kao (po meni) najbolju opciju (za detaljnije razloge, pogledaj moje i druga misljenja na top temi "smarty nesto...")

recimo, fast templates su (bar do skora bili) najpopularniji php sistem za sablone (iako je to port sa perl verzije).


elem, ajde sada cu (ipak) detalno zasto je smarty najbolji.

u stvari necu. mrzi me da objasnjava podugacko to ponovo. (trebalo bi da uskoro zavrsim jedan poooduzi clanak o naprednim funkcijama smartija, pa cu da ga okacim. ali ne za manje od nedelju-deset dana...)

samo ukratko (nesto sto nece biti u clanku): smarty sintaxa nije bash tiliko teska, iako je mnogo mocnija. prosecno inteligentan dizajner moze za dan-dva da pohvata konce ako je rad da procita malo dokumentacije.

a dacu ti dva primera koja se nikako drugacije ne mogu resiti (elegantno) osim smartijem.

(kratak uvod. ako si ikad cio za MVC - Model View Controler pattern, iliti odvojeno pisanje (podataka) logike i izgleda programa, znaces o cemu pricam. ako nisi, knjigu, pardon google u sake -> pa udri)

1) recimo format brojeva, datuma i slicno u razlicitim verzijama jezika. moguce je pripremiti datume i cene (sa sve zarezima i tackama, $1,000,000.00 ili 1.000.000,00 EUR) u php-u, ali to nije najelegantnije resenje, jer se dodavanjem novog jezika (koji ima svoj format za datum i cene) mora menjati/dodavati php kod koji to odradjue, sto nije ni elegantno ni optimalno (citaj ne moze dizajner da sam zavrsi, nego je potrebna intervencija programera. za nesto sto se tice htmla - znaci prezentacije , menjati php kod, u kome bi idealno bilo da stoji samo "logika" aplikacije).

2) listanje neke tabele iz baze u html-u. znaci, iz baze si dobio dvodimenzionalni niz / matricu $data, ($data[7]['ime'] ime sedmog kupca i sl) i dizajner oce to da prikaze kao html tabelu. kako bi to resio. vecina template sistema ima odradjenu funkciju za to (sa specijalnom sintaxom) ali jedino u smartiju je moguce praviti exibicije tipa "ocu da mi svaki drugi red bude u drugoj boji naizmenicno" (zbog preglednosti) ili slicno.

3) ili naknadno, kada je vec sajt gotov, i kada treba da se doda i neki "treci" jezik, otrkije se da je neka cetvrta funkcija u tom jeziku (kao npr datumi i cene, samo nesto trece nepredvidjeno) totalno specijalna, i da mora da se menja/dopisuje php kod, da bi se resio taj "exception".


zbog ovakvih primera (za koje ja ne znam bolje resenje od smartija) je pametno to sto smarty ima tu moc koju ima. (pa i za baze su ljudi brzo shvatili da nije dovoljno da one samo cuvaju podatke, vec da je potrebno ugraditi i malo logike u "model level" aplikacije -> i tako su nastali trigeri, stored procedure i sl..)


(a rekao sam da necu dugo.. ;)
 
Odgovor na temu

RAZZLEDAZZLER
Tora Bora

Član broj: 27
Poruke: 543
*.verat.net



Profil

icon Re: Scripta na vishe jezika05.01.2003. u 01:31 - pre 258 meseci
a i ko bi mi drugi odgovorio
Mogao sam odmah mail da ti poshaljem

Nisam ni znao da si ti odgovorio na tom topicu u vezi vishe jezika, ali eto ....
Hvala na iscrpnom odgovoru. Lepa su obrazlozenja, samo imam pitanja [to pred kraj].

Sad par stvari koje bih ja hteo da kazem za dnevnik.
Odvajanje logike i izgleda [programerskog i dizajnerskog dela] je ono od chega sam i poshao i osnova celog funkcionisanja aplikacije i naravno da znam za to.
Ne odvajam zato shto treba neki totalni nepoznavalac programiranja da odrzava aplikaciju, nego da se olaksha zivot "odrzavachu prezentacije" [kako "lepo" recheno], bilo on menjao kod ili dizajn.
Naime pochinjem sa drugom da pishem jednu aplikaciju, a poshto je gotovo sigurno da ce trebati da podrzava vishe jezika, hteo sam odmah pre pochetka pisanja da razreshim to da ne bi u sred posla bilo tuc-muc.
Znam nekoliko nachina za pisanje ovakvih aplikacija, neke sam video po netu, neki su mi jednostavno pali na pamet, ali svi su manje-vishe nezgodni [zamorni] za odrzavanje kada su cheste promene koda/dizajna.

Prvo shto mi je palo na pamet su razni vec napisani templates sistemi, a kada sam malo procheshljao po netu video sam da je Smarty najcheshce korishcen.
Iskreno nisam skoro nishta o njima znao jer sam uvek bio u fazonu "sve moje" [iako svi znamo da smo veliki deo jezika nauchili iz gomile primera], a niko nije previshe obrazlagao zashto bash Smarty.

Sledece shto mi je palo na pamet je da gotovo cela aplikacija bude standardno potrpana u funkcije, klase i kompaniju i da postoji samo minimalni deo programerskog dela u "dizajn" fajlovima koji bi pozivao te funkcije. To bi bilo ono shto mi lichno odgovara [sve moje], ali kada malo "dublje" pochnem da razmishljam, shvatam da bih i time komplikovao sebi zivot iz vishe razloga. Najvishe zato shto bih praktichno uporedo pisao dve aplikacije - ovu koju pishem i jedan template engine.
Da li sam dobro to pokapirao u mojoj ludoj glavi?
Da li je to stvarno tako i da li ima josh neshto shto ide u prilog/korist samostalnom pisanju funkcija?

Sve ovo pitam jer konkretno iz ovih stvari nemam praxu i sve shto zakljuchujem, zakljuchio sam prostim "mashtanjem", tako da sam svestan da lako moze da se desi da sam neshto pogreshno "izmashtao".

Znachi najvishe me zanima to da li je smarty bolji od "mojih funkcija" samo zato shto mi skracuje vreme da ih ne bih pisao jer vec postoje?

Evo konkretno primer sa bojenjem svakog drugog reda koji si naveo. Koliko shvatih smarty za te loopove koristi section "komandu" kojoj je jedan od properites [iteration] govori koji put po redu prolazi kroz loop i na osnovu toga moze da se boji svaki drugi red ... ili josh lakshe pomocu cycle funkcije[ispravi me ako greshkim, tek sam pocheo da chitam smarty doc.]. Zar to ne bih u svojoj "loop funkciji" da reshim prostim dodavanjem jedne varijable u funkciju koja ce da broji koji put se prolazi kroz loop, a sve te promene bi se desile iskljuchivo u logichkom [programerskom] delu?

Za kraj samo da kazem - nije sintaksa od Smartyja teshka, nema tu shta da se ne shvati. Ne verujem da postoji osoba koja zna PHP a da ne moze da pokapira Smarty, nego sam kratkim chitanjem dokumentacije shvatio da Smarty ima poprilichan broj svojih funkcija i imam utisak da bi uchenje njega lichilo na uchenje novog jezika.
Evo npr da pochnem od te proste a korisne cycle opcije koje nema u php-u pa preko svih ostalih koje se svakodnevno koriste a specifichne su za Smarty.

I ja sam sada svashta napisao [da ne kazem neku goru rech] pa ko ima zivaca da prochita ili nekim preletanjem ovog texta da odgovara, neka to slobodno uradi. Kratak odgovor, dug odgovor ... samo da se neshto konkretno kaze

P.S. bluesman, ajde ako nemash vremena za neko objashnjavanje i odgovore, a vidish ovo, samo kazi da li app za lux-otticu tj lux-store radi sa Smarty-jem poshto u onom "top" topicu kazesh da smarty koristish od najranijih dana njegovog razvoja
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.rcub.bg.ac.yu

Sajt: localhost


+5 Profil

icon Re: Scripta na vishe jezika05.01.2003. u 02:45 - pre 258 meseci
Citat:

a i ko bi mi drugi odgovorio
Mogao sam odmah mail da ti poshaljem

;) pa sto nisi ;) (btw, jel ovo za mpulse ili sta. ako jeste, opstu raspravu mozemo nastaviti ovde, a o tome cu privatno da ti izobjasnjavam neke stvari koje ja planiram da predlozim).

Citat:

Iskreno nisam skoro nishta o njima znao jer sam uvek bio u fazonu "sve moje" [iako svi znamo da smo veliki deo jezika nauchili iz gomile primera], a niko nije previshe obrazlagao zashto bash Smarty.


pa "sve moje" i ucenje iz primera nisu kontradiktorni. ja sam vrlo dugo koristio taj princip gledanja tudjeg koda, ali primenjivao na moj nacin.

a za obrazlozenje zasto bas smarty, sacekaj moj clanak (pisem ga za php|arch magazin, ali sam ipak shvatio da mi je tako dugacak text lakse napisati na srpskom, pa posle prevesti. sada se ovde vezbam i konkretizujem svoje misli kroz odgovre na pitanja, pa zato tako nasiroko oddgovaram. ;)

Citat:

Da li sam dobro to pokapirao u mojoj ludoj glavi?
Da li je to stvarno tako i da li ima josh neshto shto ide u prilog/korist samostalnom pisanju funkcija?

Sve ovo pitam jer konkretno iz ovih stvari nemam praxu i sve shto zakljuchujem, zakljuchio sam prostim "mashtanjem", tako da sam svestan da lako moze da se desi da sam neshto pogreshno "izmashtao".


dobro si pokapirao. i ja sam vrlo slicno razmisljao (oklevao da koristim tudji kod i sl). posto mi ni jedan template sistem nije BASH odgovarao, ja sam poceo da pisem svoj. prvo sam poceo sa obicnim varijablama. pa sam dodao petlje (za iteraciju kroz nizove - za liste i tabele). pa sam dodao if-ove, pa includove (i jednu funkciju koju nema cak ni smarty, ali planiram da je dodam, a to je include DELA drugog fajla, nesto tipa {include=file.tpl#treci_deo} trebalo mi je za jedan projekat, a ispalo korisno uopste)

ali kada sam video smarty, videh da on ima sve to, i mnogo vise. a i to sto nema, vrlo lako se dodaje (to je po meni glavna stavka u smartyju).


Citat:

Znachi najvishe me zanima to da li je smarty bolji od "mojih funkcija" samo zato shto mi skracuje vreme da ih ne bih pisao jer vec postoje?


prvo to. pa onda druge stvari. kako ti sam kazes, smarty je najpopularniji sistem. time sto ga ti koristish, omogucuje (olaksava) drugom programeru/dizajneru da nastavi da radi na tom projektu bez mnogo muke. a posto je najpopularniji, najvise ljudi ga zna, i ne mora ponovo da ga uci...

onda je vrlo bitna stavka dokumentacija. recimo, radish neki sajt gde ti treba da radish php deo, a dizajner (bash dizajner, ne zna programiranje) treba da radi html dizajn. ako bi koristio svoj sistem, onda bi morao da mu natenane objasnjavash sve kako i sta da radi da menja/dopisuje i slicno. josh ako je dizajner stranac, pa morash sve to na engleskom (kao sto se meni desilo)... ehh...

zato recimo koristish smarty, i njega samo uputish na http://smarty.php.net i kazes mu da skine i pogleda dokumentaciju (ima poseban deo za dizajnere) i zavrsio si posao. nema objasnjavanja, nema nicega...

josh jedna prednost je sto dosta ljudi pise, odrzava i testira kod, pa se svi bagovi brze uocavaju...

Citat:

Evo konkretno primer sa bojenjem svakog drugog reda koji si naveo. Koliko shvatih smarty za te loopove koristi section "komandu" kojoj je jedan od properites [iteration] govori koji put po redu prolazi kroz loop i na osnovu toga moze da se boji svaki drugi red ... ili josh lakshe pomocu cycle funkcije[ispravi me ako greshkim, tek sam pocheo da chitam smarty doc.]. Zar to ne bih u svojoj "loop funkciji" da reshim prostim dodavanjem jedne varijable u funkciju koja ce da broji koji put se prolazi kroz loop, a sve te promene bi se desile iskljuchivo u logichkom [programerskom] delu?


to moze u smartyju na vise nacina. i da, mogao bi ti to da odradish u php kodu, ali sta ako kasnije dizajneru "dune" da mu se vise svidja bez shara, ili sa sharama posle svaka dva ili tri reda. ili cak ako hoce neki extra pederaj tipa sahovnica (crno-belo-crno naizmenicno). opet bi ti morao da menjash kod. i drugo, sta bi ti upisao u tu dodatnu promenjivu? boju reda? sta ako dizajner oce da promeni boje u tabeli?

Citat:

Ne odvajam zato shto treba neki totalni nepoznavalac programiranja da odrzava aplikaciju, nego da se olaksha zivot "odrzavachu prezentacije" [kako "lepo" recheno], bilo on menjao kod ili dizajn.


da, ali sigurno ces raditi i na projektima gde ce IPAK neki "totalni nepoznavalac programiranja" da radi dizajn. a zato ja pricam o dizajnerima kao onima koji ce da kreiraju sablone. naravno, to mozes i ti da radish, ali to sam podrazumevao da ako oni mogu da ga nauce, da mozes i ti, ili bilo ko ko radi u php-u (ovo bez uvrede za same dizajnere).

Citat:

Za kraj samo da kazem - nije sintaksa od Smartyja teshka, nema tu shta da se ne shvati. Ne verujem da postoji osoba koja zna PHP a da ne moze da pokapira Smarty, nego sam kratkim chitanjem dokumentacije shvatio da Smarty ima poprilichan broj svojih funkcija i imam utisak da bi uchenje njega lichilo na uchenje novog jezika.
Evo npr da pochnem od te proste a korisne cycle opcije koje nema u php-u pa preko svih ostalih koje se svakodnevno koriste a specifichne su za Smarty.


kada sam rekao sintaxa, mislio sam i na sve te funkcije i logiku u smartiju. jeste. tu si u prilicno u pravu da je smarty "svoj jezik", ali kao sto rece neko na smarty-dev listi, "smarty NE pokusava da izbaci svu logiku iz sablona, ali pokusava da ostavi SAMO onu logiku koja utice SAMO na izgled aplikacije" (u suprotnom, ta logika bi morala da bude u samoj aplikaciji).

da te opet podsetim na baze (suprotan kraj u MVC arhitekturi). sve ozbiljen baze imaju svoje "jezike" (PL/SQL, T-SQL, PL-PG/SQL i sl) jel su uvideli da je i kod samog procesa cuvanja podataka (kao i kod dizajna aplikacije) potrebno malo logike, koja bi u suprotnom (da nema tih jezika) morala da se nadje u samoj aplikaciji...


uff.. eto ja opet poduugacko... ali neka.. ako ima ko da slusa, ja cu da nastavim da se vezbam... ;)
 
Odgovor na temu

Darko Pipic
Darko Pipic
B e o g r a d

Član broj: 93
Poruke: 880
*.beg.sezampro.yu

Sajt: www.kontrol-inzenjering.c..


Profil

icon Re: Scripta na vishe jezika05.01.2003. u 03:10 - pre 258 meseci
Svaka čast Tomice na ovim iscrpnim odgovorima, samo nastavi !
Life is a game - play to win
irc.elitesecurity.org #es
darnik.com
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.rcub.bg.ac.yu

Sajt: localhost


+5 Profil

icon Re: Scripta na vishe jezika05.01.2003. u 03:15 - pre 258 meseci
pa samo vi pitajte (kao razzleed$%$.... ma batali. ovaj odozgo! ;)

 
Odgovor na temu

RAZZLEDAZZLER
Tora Bora

Član broj: 27
Poruke: 543
212.124.182.*



Profil

icon Re: Scripta na vishe jezika05.01.2003. u 03:52 - pre 258 meseci
xa xa xa
... ma napishi nenad ili pReTeNdEr ili bilo kako ako ti je ovaj nick tezak. Shvaticu na koga mislish
K'o shto ja imam obichaj da kazem "prichaj i pishi kako god hocesh, sve dok te ja shvatam, meni odgovara"

Hvala na iscrpnom odgovoru. Meni sasvim odgovara shto vishe da napishesh. Nadam se samo da nismo zamorili nevine posmatrache.
Shto se mene tiche, ovo je bilo dovoljno za stvari koje su me zanimale. Pretpostavljam da ne treba posebno da kazem da sam se odluchio za Smarty.
Drago mi je da ti ako nishta bar ovako pomognem za to sklapanje misli za chlanak

Ako nekoga zanima neshto dodatno, neshto hoce da doda i sl. neka nastavi sa pitanjima i diskusijom

... i ovo nije vezano uopshte za mpulse.
Poslacu ti kratak mail u vezi toga.

Josh jednom hvala
Pozdrav
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.rcub.bg.ac.yu

Sajt: localhost


+5 Profil

icon Re: Scripta na vishe jezika05.01.2003. u 19:34 - pre 258 meseci

ma shalio sam se ono za ime. btw, sta znaci to razzleda...

Citat:

Shto se mene tiche, ovo je bilo dovoljno za stvari koje su me zanimale. Pretpostavljam da ne treba posebno da kazem da sam se odluchio za Smarty.


znaci imam dara i za ubedjivanje. odoh ja u politicare. ili bar u prodavce :D


btw, svima, slobodno pitajte josh sta vas zanima od smartyja....

 
Odgovor na temu

RAZZLEDAZZLER
Tora Bora

Član broj: 27
Poruke: 543
212.124.182.*



Profil

icon Re: Scripta na vishe jezika05.01.2003. u 21:21 - pre 258 meseci
mozesh u politichare ili da budesh neki sales manager

inache nisam stavio ovaj nick jer znachi neshto, nego mi jednostavno zanimljivo zvuchi/izgleda

Kada sam trazio neshto sasvim deseto u rechniku, naleteo sam na rech "RAZZLEDAZZLE" - pisalo je da znachi zaslepljivanje ... nebitno mi je bilo shta znachi, samo sam "pretvorio" u RAZZLEDAZZLER chisto da se odnosi na osobu a ne na radnju i eto.
Posle sam saznao da valjda RAZZ znachi rugati se ili tako vec neshto

Nisam ja nikakav zaslepljivach i sl. nemojte da se plashite
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.rcub.bg.ac.yu

Sajt: localhost


+5 Profil

icon Re: Scripta na vishe jezika07.01.2003. u 16:53 - pre 258 meseci
http://www.evolt.org/article/S...n_with_PHP/18/51272/index.html

sad naleteh na clanak.


meni se (licno) ne cini bash elegantno, ali rekoh da postujem, mozda nekome pomogne / da neku ideju.

 
Odgovor na temu

RAZZLEDAZZLER
Tora Bora

Član broj: 27
Poruke: 543
212.124.182.*



Profil

icon Re: Scripta na vishe jezika08.01.2003. u 19:21 - pre 258 meseci
al' ko shto reche chovek josh pri pochetku chlanka
"This is ideal in situations where you don't need to display a large amount of content"

... znachi za takve neke situacije je ok reshenje [mada opet za takve situacije postoji josh ok reshenja]
 
Odgovor na temu

bluesman

Član broj: 4505
Poruke: 1895
*.34.EUnet.yu



+1 Profil

icon Re: Scripta na vishe jezika09.01.2003. u 11:27 - pre 258 meseci
Citat:
RAZZLEDAZZLER:
P.S. bluesman, ajde ako nemash vremena za neko objashnjavanje i odgovore, a vidish ovo, samo kazi da li app za lux-otticu tj lux-store radi sa Smarty-jem poshto u onom "top" topicu kazesh da smarty koristish od najranijih dana njegovog razvoja


Tek sada sam slicajno video ovo...

Nisam koristio smarty za Lux Ottica jer sam hteo da napravim da kod bude razumljiv i drugima jer je neko drugi trebao da odrzavanje.

Vidim da raspravljate o smarty, ja sve nove projekte pocinjem sa njim. Jednostavno je mnogo lakse i fleksibilnije. Doduse, od plugin-ova (funkcija i modifiera) nema bas sve sto ti treba ali lako se pravi. Glavna zamerka mi je rad sa osnovnim matematickim funkcijama.

Ja sam sa smarty poceo da radim silom prilika pre 3 godine i skoro da sam odustao od posla jer mi je sve bilo neobicno (a i smarty je tada imao svojih "bubica") ali sam na kraju ipak "zagrizao metak" i nisam pogresio.

Po meni je smarty idealan za nas jer obicno radimo dvojezicne sajtove a to je kod smarty veoma laka, samo se napravi jos jedan template sa istim kodom (isti backend) a tekst se prevede na srpski.
Goran Pilipović fka bluesman
 
Odgovor na temu

-zombie-
Tomica Jovanovic
freelance programmer
ni.ac.yu

Član broj: 4128
Poruke: 3448
*.dial.InfoSky.Net

Sajt: localhost


+5 Profil

icon Re: Scripta na vishe jezika09.01.2003. u 17:39 - pre 258 meseci
Citat:

Glavna zamerka mi je rad sa osnovnim matematickim funkcijama


heh. isti problem.

prvo sam za "total" "suma" i slicna polja koristio sabiranje iz smartija (kad vec iteriram u njemu), ali sam odustao. ono je najgore odradjen deo.

heh, mislim da cu i na tu temu da poradim malo (da pisem svoje funkcije / modifiere / ...)

 
Odgovor na temu

[es] :: PHP :: Scripta na vishe jezika

[ Pregleda: 3253 | Odgovora: 12 ] > FB > Twit

Postavi temu Odgovori

Navigacija
Lista poslednjih: 16, 32, 64, 128 poruka.