Właśnie zacząłem używać Google Closure i słyszałem również o Google Dart, które wydaje się bardzo podobne. W jaki sposób są one powiązane?W jaki sposób rzutki Google są powiązane z zamknięciem google?
Odpowiedz
Zamknięcie Google to zestaw bibliotek javascript i parser javascript służący do kompilowania i kompaktowania języka javascript. Istnieją narzędzia do zamykania google, które można wbudować w cykl budowy/wdrażania.
Google Dart pojawia się (z bieżących informacji skąpych), aby zastąpić język javascript, z opcją kompilacji do javascript. Jest to podobne do tego, co Google GWT robi teraz z java (tzn. Piszesz java i kompiluje się do javascript.) Wierzę, że ten proces kompilacji również używa kompilatora zamykającego).
To właśnie dlatego zespoły GWT + Closure zostały przeniesione do projektu Dart - istotne jest, aby deweloperzy mogli wdrażać aplikacje typu dart po stronie klienta w przeglądarkach, które nie obsługują bezpośrednio rzutek (np.). Krzyżowa kompilacja darta do javascript (w ten sam sposób, w jaki GWT robi java do javascript) jest metodą Googlesa rozwiązania tego.
Ach, widzę, więc Google Dart bardziej przypomina ClojureScript, ponieważ Google Dart będzie kompilował się do kodu zamknięcia Google? – Zubair
Myślę, że będziesz musiał poczekać, aż Google ogłosi go, aby dowiedzieć się czegoś na temat jego szczegółów. – John
Po prostu aktualizacja: dart2js, kompilator Dart to JavaScript, nie emituje kodu zamknięcia. Emituje vanilla JavaScript (zoptymalizowany i zminimalizowany, oczywiście :) –
Mowa główna Dart'a powinna wkrótce nastąpić (jutro?), Ale pomyślałem, że dodam ten fragment z Dash email.
Co z istniejącymi podstawami kodu dla dużych Google Apps? Czy nie będą musieli odbudować wszystkiego, aby skorzystać z Dash?
Kompilator Dash Cross powinien być w stanie przyjąć wpisany kod zamknięcia (z pewnymi ograniczeniami) i przekonwertować go na Dash. Chociaż proces migracji nie będzie w pełni automatyczny, powinien nieco ułatwić przejście do kodu kreskowego Dash.
W tej chwili DartC używa kompilatora zamknięcia w celu zoptymalizowania kompilacji (--optymalizuj). W normalnym cyklu edycji/odświeżania generuje javascript bezpośrednio, aby zyskać trochę prędkości dla programisty. Faza optymalizacji (i zamykania) jest bardziej etapem pakowania i wdrażania.
Po aktualizacji, dartc został zastąpiony przez dart2js: http://www.dartlang.org/docs/dart-up-and-running/contents/ch04-tools -dart2js.html –
Wierzę, że Dart został zaprojektowany z myślą o kompilatorze Google Closure od samego początku. Zasada rdzeń bazowego opcjonalny system typowania dart jest to, że:
„typ Striping adnotacji nie powinny wpływać na zachowanie programu w trybie produkcyjnym”
które odpowiadają bardzo dobrze z systemem typu adnotacji Google zamknięcie za komentarz na bazie.
http://www.dartlang.org/articles/optional-types/
bar(int n) { return n *2;}
...
bar(3.2); // returns 6.4 in production, but fails in checked mode
Dlaczego głosy zamknięcia? – Zubair