mboost-dp1

newz.dk
- Forside
- ⟨
- Forum
- ⟨
- Nyheder
#50
Windcapes eksempel har en fleksibilitet som du ikke faciliterer i dit eksempel, se:
Hvis du vil filtrere på karma == "bad" bruger du bare en anden anonym funktion som "filter":
Men det brtyder ikke at man ikke kan konstruere samme fleksibilitet i OOP uden brug af closures (reelt er ovenstående vel heller ikke en closure per se?)
Eller er jeg off?
Windcapes eksempel har en fleksibilitet som du ikke faciliterer i dit eksempel, se:
var users = [{name:"a", karma:"bad"},{name:"b", karma:"super"},{name:"c", karma:"bad"},{name:"d", karma:"super"}];
Array.prototype.filter = function (f) {
var r = [];
for ( var i = 0; i < this.length; i++ ) {
if ( f(this[i]) ) {
r.push(this[i]);
}
}
return r;
}
var superusers = users.filter( function(user) {
return user.karma == "super";
});
Hvis du vil filtrere på karma == "bad" bruger du bare en anden anonym funktion som "filter":
var badusers = users.filter( function(user) {
return user.karma == "bad";
});
Men det brtyder ikke at man ikke kan konstruere samme fleksibilitet i OOP uden brug af closures (reelt er ovenstående vel heller ikke en closure per se?)
Eller er jeg off?
#51
"Filter" funktionen er altsaa indbygget i "MagiskSprog7", eller hvad er det vi snakker om?
Hvis du selv skal lave filter funktionen, kan du jo lave den saa din syntax er som du vil have det......?
Ding :)
"Filter" funktionen er altsaa indbygget i "MagiskSprog7", eller hvad er det vi snakker om?
Hvis du selv skal lave filter funktionen, kan du jo lave den saa din syntax er som du vil have det......?
Men det brtyder ikke at man ikke kan konstruere samme fleksibilitet i OOP uden brug af closures (reelt er ovenstående vel heller ikke en closure per se?)
Ding :)
#53
Det var et reelt spoergsmaal?
Jeg aner ikke hvilket sprog i taler om og der er ikke nogen der har uddybet om filter er en funktion man selv har skrevet.
Pointen er, at jeg kan filtrere enhver liste med en filtrerings funktion i ethvert sprog?
Jeg kan ikke se hvad det er i diskuterer, uden at vide om "filter" er jeres egen funktion.
Det var et reelt spoergsmaal?
Jeg aner ikke hvilket sprog i taler om og der er ikke nogen der har uddybet om filter er en funktion man selv har skrevet.
Pointen er, at jeg kan filtrere enhver liste med en filtrerings funktion i ethvert sprog?
Jeg kan ikke se hvad det er i diskuterer, uden at vide om "filter" er jeres egen funktion.
#54
Du har stadigvæk ikke forstået closures så.
mat i #51 bragte også prototyping ind i billedet, det er også endnu en super funktionalitet af JavaScript sproget.
QED
Du har stadigvæk ikke forstået closures så.
mat i #51 bragte også prototyping ind i billedet, det er også endnu en super funktionalitet af JavaScript sproget.
Vi diskuttere closures. Indtil du forstår dem vil du ikke kunne forstå diskussionen.fidomuh (54) skrev:Jeg kan ikke se hvad det er i diskuterer, uden at vide om "filter" er jeres egen funktion.
QED
@Windcape
Kan du ikke forklare hvad closures er, med dine ord. plz.
Jeg må indrømme, at jeg ikker så stærk i de forskellige termer.
Kan du ikke forklare hvad closures er, med dine ord. plz.
Jeg må indrømme, at jeg ikker så stærk i de forskellige termer.
#56
Jeg vil hellere linke wikipedia igen, for ikke at give en faktuel forkert forklaring.
http://en.wikipedia.org/wiki/Closure_(computer_sci...
Jeg vil hellere linke wikipedia igen, for ikke at give en faktuel forkert forklaring.
http://en.wikipedia.org/wiki/Closure_(computer_sci...
Kan du i det mindste ikke uddybe, hvad du mener med, at folk er dårlige til at lave closures.
Windcape (9) skrev:Problemet er at de fleste udviklere er så utrolig dårlige til closures :p
#58
Jeg mente mere at forstå dem. F.eks. virker både du, og fidomuh, ikke særlige stærke i konceptet, og derfor ville JavaScript måske fremstå som svært forståeligt i kode der ville gøre høj brug af closures.
Jeg kender ihvertfald mange som har det på den måde med C#, når man benytter extension methods og lambda expressions eller delegates (delegate = closure).
Rigtig rigtig meget JavaScript er utrolig dårlig og grimt skrevet, fordi at udviklerne ikke har forstået og/eller brugt closures, hvor det ville give mening. Og det giver jo så sproget et dårlig ry.
Det er ligesom at Perl bliver betegtet som et "write-only" sprog.
(no pun intended, ingen ved alting (undtagen mig!))
Jeg mente mere at forstå dem. F.eks. virker både du, og fidomuh, ikke særlige stærke i konceptet, og derfor ville JavaScript måske fremstå som svært forståeligt i kode der ville gøre høj brug af closures.
Jeg kender ihvertfald mange som har det på den måde med C#, når man benytter extension methods og lambda expressions eller delegates (delegate = closure).
Rigtig rigtig meget JavaScript er utrolig dårlig og grimt skrevet, fordi at udviklerne ikke har forstået og/eller brugt closures, hvor det ville give mening. Og det giver jo så sproget et dårlig ry.
Det er ligesom at Perl bliver betegtet som et "write-only" sprog.
(no pun intended, ingen ved alting (undtagen mig!))
Efter som jeg ikke er 100% sikker på hvad closures er, så kan jeg ikke sige at jeg har brugt det.
Men som jeg forstår det så har jeg brugt funktionaliteten, jeg har bare ikke været klar over, der var et udtryk for det.
For mig er det sådanne set lige meget hvilke metoder man benytter til at nå sit mål.
Det eneste der giver JavaScript(JScript) et dårligt ry er MS's elendige og langsomme implementering.
Hvad hjælper det at vide aldting, hvis man ikke kan bruge det til andet end teoretisk pladder. ;-)
Men som jeg forstår det så har jeg brugt funktionaliteten, jeg har bare ikke været klar over, der var et udtryk for det.
Windcape (59) skrev:Rigtig rigtig meget JavaScript er utrolig dårlig og grimt skrevet, fordi at udviklerne ikke har forstået og/eller brugt closures, hvor det ville give mening.
For mig er det sådanne set lige meget hvilke metoder man benytter til at nå sit mål.
Det eneste der giver JavaScript(JScript) et dårligt ry er MS's elendige og langsomme implementering.
Hvad hjælper det at vide aldting, hvis man ikke kan bruge det til andet end teoretisk pladder. ;-)
Det har du helt sikkert. Det har de fleste!røvskæg (60) skrev:Men som jeg forstår det så har jeg brugt funktionaliteten, jeg har bare ikke været klar over, der var et udtryk for det.
Jeg tvivler også på at de fleste .NET programmører ved at delegates hedder closures i CS/matematik.
#54
Eksemplet er JavaScript. I eksemplet er "filter" funktionen skrevet af mig, JavaScript har så vidt jeg ved ikke en "filter" funktion på arrays.
Ja du kan skrive en funktion der kan søge og udvælge fra lister i ethvert sprog. Eksemplet illustrerer bare et handy feature.
on topic:
Jeg tror at HTML5 vil overtage videoafspilning på nettet og lidt data visualisering, og det bliver på Flashs bekostning, men det er det.
HTML5 kommer ikke til at erstatte Flash som weapon of choice for animationstunge/grafikbærende feature "websites", for spil eller for webapplikationer. Alt det som Flash gør bedre end HTML nu vil HTML5 ikke rykke nævneværdigt ved (andet end videoafspilning).
For mange forskellige implementationer, og for langsom en udvikling vil betyde at HTML5 vil blive brugt til det samme som HTML4 bliver brugt til i dag.
Du kan ikke komme med en teknologi, der ikke har det samme feature set som konkurrenten, hvor implementation vil variere, og hvor brugerbasens adoptionsrate er langsom, og forvente at overtage markedet - ikke inden for en overskuelig fremtid i hvert fald.
Dertil skal lægges at selv hvis vi antager at HTML5 er featuremæssigt 1-1 med Flash nu, så står udviklingen for Flash eller andre jo ikke stille, og hvad er udsigten til at få feature x med i HTML5, som ikke allerede er i spec? Hvornår udkommer HTML6?
Men det er selvfølgelig svært at spå.
Adobe har iøvrigt lige annonceret "molehill" i en kommende Flash Player: http://labs.adobe.com/technologies/flash/molehill/ det ser da meget fedt ud?
Eksemplet er JavaScript. I eksemplet er "filter" funktionen skrevet af mig, JavaScript har så vidt jeg ved ikke en "filter" funktion på arrays.
Ja du kan skrive en funktion der kan søge og udvælge fra lister i ethvert sprog. Eksemplet illustrerer bare et handy feature.
on topic:
Jeg tror at HTML5 vil overtage videoafspilning på nettet og lidt data visualisering, og det bliver på Flashs bekostning, men det er det.
HTML5 kommer ikke til at erstatte Flash som weapon of choice for animationstunge/grafikbærende feature "websites", for spil eller for webapplikationer. Alt det som Flash gør bedre end HTML nu vil HTML5 ikke rykke nævneværdigt ved (andet end videoafspilning).
For mange forskellige implementationer, og for langsom en udvikling vil betyde at HTML5 vil blive brugt til det samme som HTML4 bliver brugt til i dag.
Du kan ikke komme med en teknologi, der ikke har det samme feature set som konkurrenten, hvor implementation vil variere, og hvor brugerbasens adoptionsrate er langsom, og forvente at overtage markedet - ikke inden for en overskuelig fremtid i hvert fald.
Dertil skal lægges at selv hvis vi antager at HTML5 er featuremæssigt 1-1 med Flash nu, så står udviklingen for Flash eller andre jo ikke stille, og hvad er udsigten til at få feature x med i HTML5, som ikke allerede er i spec? Hvornår udkommer HTML6?
Men det er selvfølgelig svært at spå.
Adobe har iøvrigt lige annonceret "molehill" i en kommende Flash Player: http://labs.adobe.com/technologies/flash/molehill/ det ser da meget fedt ud?
#19: spejlkugle skrev:En tastefejl i et variabel navn vil, f.eks. ikke melde fejl, der bliver blot oprettet en lokal variable med det "forkerte" navn, hvor efter resten af koden opfører sig uforudsigeligt, da den så prøver at bruge en uinitialiseret variabel.
Brug JSLint, det fanger alle den slags fejl og mere til.
Hvis du bruger alt for meget tid i din debugger, skulle du måske overveje at unitteste din JavaScript kode, der findes et væld af værktøjer til det. jQuery-gutterne har et og YUI har også et.
Du kan sagtens bygge store robuste applikationer med JavaScript, der er nemme at vedligeholde, men det kræver at man tænker sig om og bruger en god opdeling af kode. Fx View-Model-ViewModel
I min fritid har jeg bygget en JavaScript applikation på små 30.000 linjers kode, og det går fint med at vedligeholde den. Men jeg gør også tingene på min egen måde, dvs. jeg bruger ikke jQuery. Men i stedet en metode der er meget lig YUI's komponenter.
Jeg er fuldstændig tosset med JavaScript. Det er første gang i historien vi har muligheden for at sende kode rundt i hele verden på millisekunder, og kan få det afviklet fuldstændig end på stort set alle platforme. Ja der er endda flere forskellige runtimes (browsere) til hver platform. Og de virker alle 100% ens.
Ja, 100% ens. For forskellene mellem de forskellige browsere ligger ikke i JavaScript. Men udelukkende i DOM, CSS, HTML osv. Ikke i selve programmeringssproget.
Jeg synes det er intet mindre end fantastisk, og for mig at se er vi kun lige begyndt at kradse i overfladen på hvad vi kan med det.
Jeg synes SliverLight og Flash er dybt uinterresant i sammenligning.
Opret dig som bruger i dag
Det er gratis, og du binder dig ikke til noget.
Når du er oprettet som bruger, får du adgang til en lang række af sidens andre muligheder, såsom at udforme siden efter eget ønske og deltage i diskussionerne.