DevProTalk

DevProTalk (http://www.devprotalk.com/index.php)
-   PHP (http://www.devprotalk.com/forumdisplay.php?f=9)
-   -   Izbor PHP Framework (http://www.devprotalk.com/showthread.php?t=3434)

degojs 18. 02. 2010. 20:58

^Ivanhoe, sve dok JS jeste takav kakav jeste, neće ni biti u situacijama da mu trebaju takve stvari, slažem se.

Sad je to više problem kokoške i jajeta.

Ali pazi, da imaš izbor da koristiš nešto drugo, pitam te da li bi koristio JS? I kada bi JS bio napredniji, garantujem ti da bi već odavno koristili isti još više i to sa uživanjem. Nažalost, MS i Yahoo i još neki su nedavno značajno usporili dalji razvoj JS-a pozivajući se na kompatibilnost, itd. Šta da se radi..

degojs 18. 02. 2010. 21:55

@jablan, čisto da isteramo mak na konac:

Citat:

objekat_pera.podrzava? sve_sto_covek_mora_da_podrzava
Ovaj, sta je "podrzava" gore? Ne vidim nigde to definisano? Je l' to obaveza programera ili runtime sad razume i srpski, pored danskog?

jablan 18. 02. 2010. 22:10

Ok, s obzirom da si prešao u "ad hominem" mod, ja prelazim u "from a distance people can't tell who is who" mod pa te neću udostojiti odgovora.

Inače, ta funkcija bi se u JS-u implementirala nekako ovako:

Kôd:

Object.prototype.haveMethods = function(methodList) {
  for(var i=0; i<methodList.length; i++) {
    if (typeof(this[methodList[i]]) != 'function') {
      return false;
    }
  }
  return true;
};

/* i onda na degojs-ovom primeru: */
g.haveMethods(['duck', 'walk']); /* vraca true */
g.haveMethods(['duck', 'walk', 'talk']); /* vraca false */


degojs 18. 02. 2010. 22:13

Nemoj ti meni kako bi se implementiralo u JS pomocu "objekti u JSu su asocijativni nizovi", pa moze tako bilo gde (refleksija, itd) da se proveri..

Inace, tvoje pominjanje ad hominem nesto mi ne pase, s obzirom da si poceo gore sa ovakvim stvarima, sigurno ne ja, npr: "Mislim, ja kapiram da ti to znaš, pišem ovo zbog omladine koja ovo čita...", pa onda mali Perica i tako dalje.

Druga je stvar sto ti ne umes da ukapiras da bi neko proverio da li objekat podrzava skup funkcija pre nego bi pozvao neku funkciju.. Tvoj problem.

Znaci nakon sto pocnes prvo nekog da ismejavas, iako upravo ti gresis, sad jos i lazes i meni pripisujes takvo ponasanje prvom. Lepo.

Interesantno da kad ti nesto tebas da isprogramiras, neku pomocnu funkciju, onda to nije problem, a? Ali ako u Javi ili PHP-u treba da se malo programira, onda je to "sve samo ne elegantno, ekspresivno, itd".

PHP podrzava interfejse, koliko mi se cini :)

Imam i ja savet za omladinu: pre nego pozovete neku funkciju, ne bi bilo lose znati da li funkcija uopste postoji na objektu.



Inace, imamo deal, ja cu tvoje poruke ubuduce da ignorisem, pokusaj i ti moje.

jablan 18. 02. 2010. 22:31

Citat:

Originalno napisao degojs (Napišite 79936)
Ali ako u Javi ili PHP-u treba da se malo programira, onda je to "sve samo ne elegantno, ekspresivno, itd".

Dakle, ti tvrdiš da ne postoje manje i više ekspresivni jezici? Pa C# je živi primer jezika koji je u poslednjih 10-ak godina prošao kroz par verzija, svaka je za magnitudu ekspresivnija od prethodne. Možda treba da probaš da ubediš ljude iz MS-a da su se džaba cimali, jer je sve to isto...

Citat:

PHP podrzava interfejse, koliko mi se cini :)
Verovatno ovdeprisutni PHP-ovci ne mogu da žive bez njih, koliko su korisni... :)

Citat:

Imam i ja savet za omladinu: pre nego pozovete neku funkciju, ne bi bilo lose znati da li funkcija uopste postoji na objektu.
Ovo zapravo i nije preterano dobar savet... U originalnoj OO paradigmi, metode (odn. kako ih ti zoveš, funkcije) samo su "uputstva" objektima kako da obrađuju poruke koje dobijaju od drugih objekata. Pojmovi sa kojima se zapravo barata su poruke, a ne metode. U tom smislu, uopšte nije neophodno da objekat ima definisanu metodu da bi znao kako da hendluje neku poruku koja mu je upućena.

Citat:

Inace, imamo deal
Bojim se da ga nemamo. :)

ivanhoe 18. 02. 2010. 23:51

Citat:

Originalno napisao degojs (Napišite 79936)
Nemoj ti meni kako bi se implementiralo u JS pomocu "objekti u JSu su asocijativni nizovi", pa moze tako bilo gde (refleksija, itd) da se proveri..

heh, mene je jednom prilikom, u vreme news grupa, Douglas Crawford iznapusaovao kad sam nekom nesto pomagao i upotrebio izraz asocijativni niz za neki objekat ... ne, molicu lepo, JS nizovi su objekti koji samo simuliraju pristup preko sintaxe za asocijativne nizove... bem li ga ako znam i danas koja je fundamentalna razlika, ali posto je on u medjuvremenu postao velika JS faca, rekoh da se pohvalim da mi je odrzao lekciju :P

degojs 19. 02. 2010. 01:20

Pa tako cu i ja jednog dana da se hvalim da mi je jablan rekao

Citat:

metode (odn. kako ih ti zoveš, funkcije)
Jer, ko je ikad video tu kljucnu rec u npr. JavaScriptu? Ma nema, prividja mi se.. func.. sta?

ivanhoe 19. 02. 2010. 20:53

hehe, kad smo vec kod price o JS, jeste videli WTFJS, ima stvarno umobolnih stvari u javascriptu...

EDIT: Jel moze neko da mi objasni kako se ovo desava?
Kôd:

(x=[].reverse)() === window // daje true
([].reverse)() === window  // daje naravno false


ivan.skugor 21. 02. 2010. 16:14

Citat:

Originalno napisao ivanhoe (Napišite 79920)
E sad, ako neko planira da pravi web verziju photoshopa u js

http://mugtug.com/sketchpad/

:1074:

ivanhoe 21. 02. 2010. 16:33

ima sam pre na pameti neke filtere tipa Unsharp mask :)


Vreme je GMT +2. Trenutno vreme je 18:15.

Powered by vBulletin® Verzija 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Copyright © DevProTalk. All Rights Reserved.

Mišljenja, saveti, izjave, ponude ili druge informacije ili sadržaji nastali na Sajtu su vlasništvo onoga ko ih je kreirao, a ne DevProTalk.com, tako da ne morate da se oslanjate na njih.
Autori poruka su jedini odgovorni za ovakve sadržaje. DevProTalk.com ne garantuje tačnost, kompletnost ili upotrebnu vrednost informacija, stavova, saveta ili datih izjava. Ne postoje uslovi pod kojima bi mi bili odgovorni za štetu ili gubitak koji je posledica bilo čijeg oslanjanja na nepouzdane informacije, ili bilo kakve informacije nastale kroz komunikaciju između registrovanih članova.
Web sajt može sadržavati linkove na druge web sajtove na Internetu ili neke druge sadržaje. Ne kontrolišemo niti podržavamo te druge web sajtove, niti smo pregledali bilo kakve sadržaje na takvim sajtovima. Mi nećemo biti odgovorni za legalnost, tačnost ili prikladnost bilo kog sadržaja, oglasa, proizvoda, usluga ili informacije lociranim na ili distribuiranih kroz druge web sajtove, niti za bilo kakvu štetu nastalu kao posledica takvih informacija. DevProTalk.com drži i čuva druga prava vlasništva na web sajtu. Web sajt sadrže materijale zaštićene copyright-om, zaštitne znakove i druge informacije o pravu vlasništva ili softver. Članovi mogu poslatu informacije zaštićene pravima vlasništva njihovih nosilaca i ona ostaju zaštićena bez obzira da li su oni koji prenose te informacije to naveli ili ne. Osim informacija koje su u javnom vlasništvu ili za koje dobijete dozvolu, nemate pravo da kopirate, modifikujete ili na bilo koji način menjate, objavljujete, prenosite, distribuirate, izvršavate, prikazujete ili prodajte bilo koju informaciju zaštićenu pravima vlasništva. Slanjem informacija ili sadržaja na bilo koji deo DevProTalk.com, Vi automatski dozvoljavate i predstavljate garanciju da imate pravo da dozvolite DevProTalk.com ili članovima DevProTalk.com bespovratnu, kontinualnu, neograničenu, globalnu dozvolu da koriste, kopiraju, izvršavaju, prikazuju i distribuiraju takve informacije i sadržaje i da iz takvih sadžaja koriste bilo koji deo u bilo koje svrhe, kao i pravo i dozvolu da koriste gore navedene sadržaje. Svi zaštitni znakovi (trademarks), logotipi, oznake usluga, firme ili imena proizvoda koji se pominju na ovom web sajtu su vlasništvo kojim raspolažu njihovi vlasnici.