Overtræder Google Street View privatsfæren?
6. nov. 2009 12:37Google har meget erfaring når det kommer til at lave webapplikationer, som Gmail, Google Docs, Google Maps m.fl. Det er blandt andet blevet til en række egenudviklede JavaScript-værktøjer, som Google nu frigiver nogle af som open source.
Pakken kalder Google for Closure Tools, og indeholder tre forskellige værktøjer; Closure Compiler, Closure Library og Closure Templates.
Det første værktøj, Closure Compiler, er beregnet til at optimere og generere kompakt og effektiv JavaScript-kode. Det gør den blandt andet ved at finde og fjerne "død" kode og omskrive resten så det afvikles hurtigst muligt.
Med Closure Library får man adgang til et gennemtestet JavaScript-bibliotek, der indeholder en masse funktioner programmører kan genbruge i deres kode. Det kan være værktøjer til at håndtere animationer, serverkommunikation, tekstredigering m.m..
Sidst er der Closure Templates der er en række af skabeloner som har fokus på effektiv JavaScript-kode. Der er tale om små komponenter, der ifølge Google gør det nemmere at bygge sin brugergrænseflade.
6. nov. 2009 13:01
Bruger ikke selv GMail bruger de frameworks såsom jQuery og Mootools til deres AJAX samt animationer eller er det det som deres Closure Library indeholder?
6. nov. 2009 13:08
#1
Nej, de bruger GWT, et Java (Ja, ikke JavaScript) library.
Og så vidt jeg kan se, er dette her noget teknologi som bygger op af det. Closure Templates er ihvertfald bygget op omkring Java.
I got a tinfoilhat for you!
6. nov. 2009 13:16
Jeg forstår ikke GWT.
#3
Google Wave er skrevet udelukkende i GWT.
ONTOPIC:
Det lyder sgu da ret godt at de deler ud af goderne :)
6. nov. 2009 13:26
#2 Ahem bruger de ikke Google Gears? skooterkurt (#3)
Nej, Gears er noget helt andet.
I got a tinfoilhat for you!
6. nov. 2009 13:40
Gmail bruger IKKE GWT, men Closure (som er noget de har lavet igennem mange år) - det samme gælder google docs og google maps (og sikkert et par mere)
GWT er et nyere projekt som de i starten ikke selv hoppede på.
Først da Google Wave teamet besluttede at bruge det begyndte der at ske ting og sager, de har dog kommet med en masse ændringer til GWT teamet som bliver releaset GWT 2.0 som de arbejder på pt.
Ud over Google wave er der også et par andre der bruger GWT, blandt andet Google Adwords. Tror muligvis Google Reader også bruger GWT, men er ikke sikker.
Den store forskel på Closure og GWT er at closure er helt normal javascript hvor GWT skrives med java som complies om til javascript.
Gears er en helt trejde ting. Det er en browser extension der blandt andet gør det muligt at dragge og droppe billeder ind i browseren.
Det er (snart var) Googles start på HTML5 satsningen
6. nov. 2009 13:55
#6
Google Calendar benytter ihvertfald GWT, mon ikke også de har blendet det ind andre steder?
I got a tinfoilhat for you!
6. nov. 2009 14:09
Det gør den blandt andet ved at finde og fjerne "død" kode og omskrive resten så det afvikles hurtigst muligt.
Kodeoptimering tiltaler mig. Nogen der ved om det er gældende for samtlige fortolkere såsom PHP, at kode bliver direkte afviklet som det er skrevet, hvorved der ikke er mulighed for optimering vha. statisk analyse? Og i så fald, hvad gør man for at ens PHP-kode bliver optimeret? Hm, når jeg nu tænker på det, sælger Zend vist nok et PHP-optimeringsværktøj - det svarer måske mit eget spørgsmål. :-)
6. nov. 2009 14:11
#7 well de skriver i al fald selv at gmail, docs og maps ikke bruger gwt, men closure
og det har også været kendt i længere tid i gwt communitiet at gmail ikke er gwt
6. nov. 2009 15:47
Jeg forstår ikke hvordan det er muligt at udvikle websites via java (GWT) - javascript er for mig da netop udviklet til at arbejde sammen med html.
6. nov. 2009 15:51
Jeg forstår ikke hvordan det er muligt at udvikle websites via java (GWT) - javascript er for mig da netop udviklet til at arbejde sammen med html. johanmw (#10)
heh, HTML.
De fleste af Googles applikationer er skrevet i 99% javascript, hvor GWT så er et Java framework der "laver javascript" som output.
I got a tinfoilhat for you!
6. nov. 2009 15:52
Jeg forstår ikke hvordan det er muligt at udvikle websites via java (GWT) johanmw (#10)
GWT oversætter Java til JavaScript i.s.f. Java byte code.
6. nov. 2009 16:06
GWT oversætter Java til JavaScript i.s.f. Java byte code. arne_v (#12)
Det forstår jeg godt - men hvorfor ikke bare lave det direkte i javascript?
6. nov. 2009 16:14
#13
Java syntax er bedre til at finde problemer compile time og gennemtvinge struktur end JavaScript. Derfor antager man at koden er nemmere at vedligeholde.
6. nov. 2009 16:47
#8
Ifølge wiki er det ret almindeligt for php engines at kompilere koden inden brug, dvs. der bruges potentielt optimeringer: http://en.wikipedia.org/wiki/PHP#Speed_optimization
Der er også referencer til compilere, så man manuelt kan kompilere
6. nov. 2009 19:23
Battle-tested. Closure Templates are used extensively in some of the largest web applications in the world, including Gmail and Google Docs. Kilde
Står der på det link der linker til Closure.
6. nov. 2009 19:27
#14
Og for dem som er mere til C# end Java se:
http://projects.nikhilk.net/ScriptSharp
6. nov. 2009 19:44
#17
Det minder lidt om Microsoft Volta fra Microsoft Labs.
http://livelabs.com/blog/volta-offline/ og http://en.wikipedia.org/wiki/Microsoft_Volta
I got a tinfoilhat for you!
7. nov. 2009 18:30
Nu legede jeg og Lord Mike lige lidt med det her.
Vi tog en md5 algoritme, og loopede 60000 gange, hvor den satte en variabel til md5 af den selvsamme variabel (vi hashede den forrige hash).
Hele dette script kørte vi så gennem deres compiler, som de kalder det.
I firefox gik det et par sekunder hurtigere (ca. fra 10-8 sekunder).
Det sjove kommer så når man kører det gennem Google Chrome.
Chrome kører det ukompilerede script en del hurtigere end det kompilerede :)
"De får flere penge, mere magt og får mere sex end de har fortjent." -Paul Feyerabend om videnskabsmænd..
7. nov. 2009 21:55
#19
Det kan godt være svært at optimere kode så det kører hurtigere i alle environments.
Og jeg tror ikke at man prioriterer matematiske udregninger som MD5 hash, når man skal beslutte hvad der skal optimeres mest.
Men stadig interessant.
9. nov. 2009 05:58
#19: Google optimeringer har (i hvert fald i Chrome) gået på at få dispatching af metoder og lignende sprog-ting til at køre hurtigere. Det kan man også gøre compile time ting for at forbendre på. Hvor hurtigt en algoritme som MD5 kører hvis man looper den 60000 gange er fuldstændig og aldeles uinteressant uden for benchmark verdenen. Det lyder umiddelbart som en god ting at Google ikke har spildt tid på det...
DDR - Kan du se pointen eller skal jeg stave den for dig?
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.
Denne side supporterer ikke længere IE 6.
Vi vil gerne benytte denne lejlighed til at anbefale dig at opgradere din browser.
Internet Explorer 6.x er en uddateret browser, fuld af sikkerhedshuller, som ikke overholder webstandarder, som er nødvendig for at se denne side.
Du kan finde en ny browser på nedenstående links:
Hvis det ikke er muligt for dig at downloade og bruge en af ovenstående browsere kan du stadig benytte newz.dk, blot med begrænset funktionalitet.