29. ledna 2009

Jaké dynamické jazyky využíváte? - výsledky

Opět skončila další minianketka, tentokrát mě zajímalo využití dynamických jazyků. Zde jsou výsledky:

  1. Žádné (41%)
  2. Něco jiného (25%)
  3. Groovy (20%)
  4. Jython (12%)
  5. jRuby (2%)
  6. Scala (2%)
  7. Rhino (1%)
Hlasovalo celkem 62 lidí.

Co k tomu říci? Výsledky mě nepřekvapily, jen by mě zajímalo, jaké dynamické jazyky se skrývají pod položkou "Něco jiného". Když jsem vybíral jazyky do ankety, tak jsem vycházel z tohoto seznamu a snažil jsem se vybrat ty nejpopulárnější, ale asi se mi to moc nepodařilo.

Asi před rokem jsem o dynamických jazycích psal a od té doby se můj váhavý postoj nijak nezměnil. Pořád jsem na tom stejně - pořád nevím, kde bych je mohl sám využít, kde mi přinesou tu tíženou výhodu při vývoji aplikací oproti standardní Javě.

Asi je nebudu využívat přímo, ale přes nějaký aplikační framework jako jsou třeba Grails nebo ZK framework. Jsem hodně zvědavý s čím novým přijde Spring ve spojení s Groovy, když nedávno koupili firmu G2One, které stojí za frameworkem Grails a jazykem Groovy.

S uvedených jazyků jsem používal pouze Groovy a to ve spojení s nástrojem SoapUI. Díky Groovy jsem si mohl napsat vlastní testovací případy a to se mi líbilo.

Také jsem skeptický na větší využití dynamických jazyků s ohledem na většinu (dle mého názoru ano, na většinu) programátorů, kteří se vlastně ani nic nového učit nechtějí - naučí se Javu a pár věcí okolo a myslí si, že jim to bude stačit. Znám to - stačí abych přišel s nějakou myšlenkou využití nové knihovny (natož s použitím nějakého dynamického jazyka) a už vidím tu nutnost přemlouvání, vysvětlování apod.

4 komentáře:

Jira řekl(a)...

Scala podle mě není dynamický jazyk, je to silně typovaný objektový jazyk říznutý funkcionálním programováním. Rhino není dynamický jazyk ale implementace jazyka JavaScript napsaná v Javě, která umožňuje tyto 2 jazyky propojit (volat JavaScript z Javy a naopak).

Osobně si myslím, že existuje spousta oblastí, kde se použití dynamických jazyku přímo nabízí: DSL, UI, různé customizace atd.

Honza Novotný řekl(a)...

No u nás chystáme využití Groovy na customizace pro zákazníka. Abychom mohli všude instalovat netknutý produktový WAR. Drobnosti, na které se nedají použít obecné (předpřipravené) věci - např. nové validátory, jednoduché akce, transformace dat apod, bychom řešili právě s pomocí Groovy mimo vlastní WAR. Tím bychom ušetřili plno práce při správě - WAR bychom mohli nechávat standardní. Další výhodou je ta vlastnost Groovy (dynamických jazyků obecně), že stačí přeuložit Groovy class a změny se okamžitě projeví - což je právě na ty customizační věci naprosto ideální nástroj.

Petr Jůza řekl(a)...

Honzo, tomu říkám super nápad. Díky moc za inspiraci, tady vidím opravdový přínos dynamických jazyků.

kolisko řekl(a)...

Delam na integracnim projektu, kde XML lehce hypertrofovalo a programuje se v nem misto v jave. Tohle je misto, kde by bylo uzitecnejsi groovy nebo jeste lepe scala.

Kolega mi nedavno ukazoval, jak groovy pouzivaji k necemu takovemu podobnemu, co popisuje Honza Novotny -- vytvorili repozitory groovy validatoru a generarotu/modifikatoru obsahu, ktere muze vkladat zakaznik do stranek sveho eshopu. Taky misot JSP pouzivaji GSP, protoze jsp/gsp nectou z filesystemu, ale z CMS a jsp by se muselo hodne lamat pres koleno.