Spring 4 on väljas. Peamised uuendused on uuendatud async tugi, rest tugi. Toetatud on konfigureerimine Groovy abil.
Spring tutvustas oma uut projekti nimega Boot. Mõte on sarnane Grailsiga - kõikide spring tehnoloogiate ühendamine ühteks RAD platvormiks kasutades springi enda meelest (opionionated) parimaid praktikaid. Kindlasti on see väga oluline ja vajalik samm et springi ennast paremini kasutada, sest siiamaani suurimates probleemideks oli just kogu stacki õieti konfigureerimine (boilerplate koodi loomine) ennem kui sai midagi sisulist arendama hakata.
Siiani oli selleks ainuke mõistlik võimalus Grailsi kasutada või otsida suvalisi koodinäiteid netist, aga nüüd on ka ametlik ja toetatud versioon sellest.
Demos näidati nii Java kui Groovy näidist kuidas Booti kasutada. Groovy näiteks sisuliselt tehti groovy stiilis kontroller mida annoteeriti siis vastava springi @Controller annotatsiooniga ning järgmine hetk oli pilt juba ekraanil - väga sarnane grailis enda põhimõttele, et minimaalselt vaja luua koodi mis suhtleks raamistikuga ja ülejäänu on juba sisuline. Puhas java versioon oli sarnane kus maveni sõltuvustesse määrati spring boot spetsiaalsed klassid ning peale main meetodi defineerimist oli juba võimalik pilt ette saada. Lisaks annab Boot välja ka mitu servletti kust küsida infrastruktuurset infot - millised beanid on defineeritud, palju võetakse mälu, mis on mäppingud, mis on kasutus statisitika jpm - väga asjalik ja kasulik info arendajale ja miks ka mitte haldurile.
Spring ise kutsub nüüd oma tooteperekonda Spring IO-ks. Kus siis alt tuleb raamistik ise, java ja groovy keel, keskel on igasugused integratsiooniraamistikud nagu Spring Batch, Spring JPA, Spring Security ning kõige peal on siis Boot või Grails. Sellega seoses on Spring loonud ka oma tooteperekonnale täiesti uue kodulehe mis täna ka läks kõigi ees Laivi. Spring.io on loodud spring Boot raamistiku peale (kui seda võib nii kutsuda üldse?). Siin on väga tänuväärne et meil on firma kes jälgib põhimõtet "Eating your own dogfood". spring.io on hea tutorialite, uudiste näidistele ja koodile orienteeritud koduleht kus sisuliselt copy paste meetodil saab töötavaid !"Hello world" rakendusi kokku panna kasutades erinevaid tooteperekonna komponente. Igatahes jättis väga hea mulje et on mõeldud ka inimestele kes pole Springiga väga detailselt kodus kuid tahaksid seda proovida ja õppida ning selle asemel et minna StackOverFlowd külastama saavad parimaid näpunäiteid otse allikast.
Lisainfot leiab siit: http://www.datacenterdynamics.com/focus/archive/2013/09/pivotal-launches-spring-platform-spring-io aga antud firma tootis selle kodulehe ja ise kes nad väga peavad lugu oma lihtsuse poolest Ruby on Railsi kiitsid Boot-i produktiivsust ja ütlesid et see on täiesti võrreldav Railsiga ning ka parem kuna koosneb korralikest ja tõestatud komponentidest.
Demo ajal oli juba näha kuidas on erinevate jar-ide näol tekkimas ka Boot-i plugina süsteem. Ei mäleta peast aga näiteks websocketi toeks oli juba üks plugin olemas mis abstrahheerib kogu keerukuse kasutaja eest kes tahab socket stiilis suhtlust kliendiga.
Huvitav kuidas Boot suhestub Grailsi ja Spring Roosse, seda ma tahan kindlasti Graeme käest küsida, sest siin on näha kuidas Grails ja Spring omavahel aina lähedamale tulevad. Grails kasutab oma põhjaks Springi kõiki parimaid komponente kui samas Spring Boot võimaldab kirjutada oma controllereid näiteks groovy süntaksis rääkimata et Spring Core ise toetab nüüd ka konfigureerimist Groovy DSL-iga mis on üks Grailsi põhiomadusi. Eks näis!
Spring.io jookseb Cloud Foundry peal. Tundub et see pilvetehnoloogia läheb aina paremaks ja seda tuleks ehk ka Enterprise kontekstis lähemalt vaadata. Igatahes jooksist spring.io rakendusest kaks versiooni korraga ning reaalajas switchiti siis url ringi nn. ametlikule variandile. Lisaks töötaks ideaalselt multinode koos load balanceriga.
UPDATE: lähiajal antakse spring.io website välja opensource projektina, mida saab kasutada hea reference materjalina kas siis Boot-i õppimisel või isegi lausa alusrakendusena. Eks näis.
Vaatame mis homme põnevat tuleb kui sessioonid pihta hakkavad.
Uuri, kas midagi ka funktsionaalsuse kliendile lähemale viimisest ka on Springil (kunagi neil oli mingi projekt) või tuleb teha .Net-i :)
ReplyDeleteuurisin vaata teist päeva.
ReplyDelete