2010-10-21 9 views
6

Jestem zaznajomiony z Javą i zaczynam eksperymentować z Groovy. Ponieważ oba są tak dobrze zintegrowane, ja piszę w Javie, co tylko mogę, bo to takie proste. Jakie konkretne wskazówki możesz zaoferować, które przyspieszyłyby moją pracę z Groovy?Najlepsze praktyki przechodzenia z Javy na Groovy

Znaczenie - w jakich obszarach najlepiej radzić sobie z Java i gdzie powinienem trzymać się Javy?

+0

Tak więc nie temat, ale tak dobre pytanie! –

+0

Pisanie na Jawie nie jest łatwiejsze niż pisanie w Groovy. Oprócz problemów z wydajnością, Groovy jest znacznie bardziej komunikatywny i prowadzi do kodu, który wygląda jak problem. W Javie wszystko wygląda jak Java. –

+2

To pytanie wydaje się być nie na temat, ponieważ dotyczy listy rzeczy. –

Odpowiedz

3

Niektóre z głównych rzeczy lubię Groovy dla:

  • testowanie jest prawdopodobnie największa wygrana. Zdolność do zmiany zachowania w czasie wykonywania i wyśmiewać metody jest jedną z największych rzeczy o groovy. Przekształć swoje zestawy testowe na groovy już teraz!
  • użyj budowniczych. Groovy budowniczowie mają o wiele większą ekspresyjność niż tradycyjna Java. W szczególności MarkupBuilder wbudowanych fragmentów XML lub HTML jest 1000s razy ładniejszy w obsłudze niż waniliowym java
  • GPars jeśli robisz jakichkolwiek programowania współbieżnego lub gwintowania

zobaczyć również Hidden features of Groovy i Why would one use Groovy over Java(uwaga: "usunięto z przepełnienia stosu z powodów moderacji").

Gdzie bym trzymać Java:

  • każde miejsce, gdzie prędkość jest naprawdę ważne, trzymać się z java. Nadal ponosisz wysokie koszty za dynamiczną naturę groovy.
+1

Dodałabym także kolekcję do zasiłku. O wiele ładniejszy i szybszy do napisania w groovy. – Scott

-2

Problem z Groovy.

Groovy jest łatwym do napisania, ale koszmarnym serwisem. Moim zdaniem nie powinno się go stosować w dużych projektach. Dziedziczenie cudzego (lub własnego) kodu może być problematyczne, ponieważ bardzo często nie masz pojęcia o typie zmiennej, więc masz swoją należytą staranność, aby dowiedzieć się, lub użyć asercji, aby zagwarantować rodzaj przychodzący do metody.

Groovy jest językiem o słabym typie. Typ zmiennej jest często ignorowany lub "wygodnie" rzutowany automatycznie, co prowadzi do wielu błędów i wolniejszej wydajności.

Nawet najlepszych IDE brakuje, ponieważ praktycznie bez typowych zmiennych języka. W wielu przypadkach kompilacja po prostu nie może wiedzieć, jaki jest typ zmiennej. Nawet jeśli zadeklarujesz typ zmiennej (ułatwiający edytorowi sugestie), wielu programistów zapomina zdefiniować typ zmiennych.

Ma ciekawe pomysły, które chciałbym zobaczyć na Jawie, ale trzymaj się z dala od niego, jeśli twój kod Groovy będzie wymagał więcej niż tysiąca linii.

* Odpowiedzi w pigułce * podsumowując, tu są odpowiedzi na oba pytania:

Jakie konkretne wskazówki można oferować że byłoby przyspieszenie mojej pracy z Groovy?

Używaj go tylko do małych rzeczy. W przeciwnym razie poniesiesz dług techniczny (patrz Wikipedia). Jak dotąd jestem w podobnej sytuacji. Testowanie jednostek, używanie konsoli do testowania fragmentów kodu, itp., To rzeczy, które przyspieszą twój rozwój, ponieważ jest tak łatwy do nauczenia się i używania. Pamiętaj, aby opanować zamknięcie, kolekcje i zapętlenie, i zrozumieć, jakie funkcje Java są dostępne w Groovy.

Nie należy używać czystego Groovy do złożonych lub dużych aplikacji. W dłuższej perspektywie konserwacja spowolni Cię.

Znaczenie - w jakich obszarach Groovy excel na java, i gdzie należy I trzymać Java?

W dużym lub krytycznym projekcie należy zachować dyscyplinę i używać niezawodnych narzędzi. To jak budowanie domu: buduję dom dla lalek, Groovy ma się dobrze :-) ... jeśli nie jest idealny, to nie jest biggie. Jeśli zbudujesz własny dom lub coś większego, z niewielką tolerancją na błędy, musisz użyć wysokiej jakości narzędzi i materiałów o lepszej jakości, które nie pozwolą ci nadzorować potencjalnych problemów (na przykład Java).

W każdym razie Groovy jest jak kaczuszka: niektóre tu i tam mogą nie zaszkodzić.

+0

Naprawdę nie jest to odpowiedź. – ripper234

+1

Brzmi jak źle napisany i/lub -architektoniczny Groovy zamiast "GRROVY IS TEH BAD MKAY". –