Entrevista com Rod Johnson, CEO da SpringSource

Rod Johnson

Uma pesquisa lançada nessa semana pela Evans Data mostrou que 73% do mercado atualmente usa ou planeja adotar o framework para Java da Spring dentro dos próximos dois anos. O mais notável é que 83% das empresas com 500 ou mais desenvolvedores usam o Spring, de acordo com o estudo. Então pensei que seria bom falar com Rod Johnson, CEO e fundador da SpringSource, e autor do framework livre que, na opinião da maioria da comunidade Java, é uma alternativa tão boa quando o EJB.

EddieC: Por que você acha que a adoção do Spring se ampliou tanto?

Rod Johnson: O relatório da Evans mostra a percentagem de pessoas motivadas pela produtividade. O crescimento do uso do Spring tem sido constante com o passar do tempo. Ele foi lançado como software livre em fevereiro de 2003 e hoje já ultrapassou 5 milhões de downloads. Você sempre quer saber... claro, as pessoas estão baixando mas elas estão usando na produção? Esse uso também é extremamente alto.

EC: Como você tem certeza que está sendo usado na produção? Em que essa afirmação é baseada?

RJ: Os requisitos para as habilidades no Spring estão superando os requisitos para as habilidades no EJB, verificado por ferramentas de busca e sites de empregos. Nós também usamos o Indeed.com, que tem um rastreador de tendências de empregos em ferramentas de busca para empregos e abrange uma grande amostra de espaço. As tendências têm sido bem claras, os requisitos para empregos com o Spring estão crescendo muito rapidamente. E um grande número de pessoas procurando por esse conjunto de habilidades mostra que eles estão fazendo algo com o Spring na produção, não apenas o avaliando. Nós estamos bem cientes que quanto mais rápidos são os downloads, maior é o amplo uso na produção.

EC: Por que as pessoas estão tão interessadas no Spring? Qual é a principal vantagem?

RJ: A principal vantagem do uso do Spring é a produtividade. As pessoas acham que elas podem desenvolver aplicativos mais rapidamente e que elas podem mantê-los mais facilmente, uma vez que elas estão na fase de produção. 83% das atividades de desenvolvimento de aplicações são em torno da manutenção. E os desenvolvedores que saíram do EJB para o Spring disseram que eles tiveram um crescimento na produtividade.

EC: Quais são os outros benefícios do framework?

RJ: Outro motivo é que o Spring tende a fazer os aplicativos mais portáveis. No tradicional ambiente Java EE, o código requer um framework in-house e está intimamente ligado ao servidor de aplicativos. Há um número de problemas nisso. As questões sobre testes são significantes. Além disso, o que acontece quando há uma revisão com o servidor de aplicação adjacente? Essa mudança impactará no seu código? E se eu quiser sair do WebSphere e rodar num Tomcat? Você não poderia fazer isso se você estivesse ligado a um servidor Java EE.

EC: Mas poderia se fosse escrito com o Spring. Por quê?

RJ: Porque o Spring fornece um substituto ao conteiner EJB que é mais portável. Com o Spring, você pode rodar método empresarial em um conteiner web, um servidor completo ou como um aplicativo que não tem nenhum conteiner. Servidores de aplicativos dividem os aplicativos em 2 níveis. No nível principal, ele gerencia os seus objetos de negócio, e controla como eles são configurados e funcionam no momento da execução. O segundo é o modelo de implantação, que fornece serviços empresariais, como serviços de mensagem e habilidade de transações. Fundamentalmente, os servidores de aplicativos fazem um bom trabalho na primeira parte, mas não fazem na segunda.

EC: Existem outros produtos com o Spring, e como eles se comparam?

RJ: Não há nada, realmente, como o Spring. Se você observar o nicho de aplicativos de framework, há outros projetos que tentam abranger a mesma área mas nenhum deles consegue. A SpringSource também tem o servidor de aplicativos dm Server, e é o fornecedor líder nos serviços de suporte para o Tomcat. Somos também o maior contribuidor do projeto Apache Tomcat.

EC: No começo desse mês, a SpringSource adquiriu a G2One, que desenvolveu as tecnologias de linguagem dinâmica Groovy e Grails. Onde a G2One se encaixa na estratégia da SpringSource?

RJ: Tem havido um crescimento significante nas linguagens dinâmicas. Nós trabalhamos no Java estático. Com a aquisição, adicionamos o Grails, uma interpretação JVM do mesmo tipo de key drivers que você vê por trás do Ruby On Rails. O Ruby On Rails é simples para problemas simples. Mas quando você tem problemas mais complexos, você dá com a cara na parede. Achamos que o Grails é superior para as pessoas que querem uma linguagem superior.

EC: Superior? Quanto?

RJ: Por exemplo, imagine que você é uma organização que está pensando em mover o seu aplicativo web para uma linguagem dinâmica ou escrever uma nova. Você ouvir falar de seus benefícios de produtividade e quer dar uma olhada nelas. Você pode escolher entre o Rails e o Grails. Se você usar o Rails, você não tem acesso a qualquer infra-estrutura (ferramentas de gerenciamento, etc) que você tinha no mundo Java e você não tem acesso ao código escrito em Java existente. Se você usar o Grails, você mantém a sua infra-estrutura e você não precisa abrir mão de coisas que são muito boas. Com o Grails, você tem os benefícios de produtividade de trabalhar com um linguagem dinâmica e você não tem que abrir mão de tudo que você já investiu. Com o Grails, você tiver um problema muito grande, você pode pular para o Spring.

EC: Como isso pode acontecer? O Java e o Grails (antigamente chamado de Groovy on Rails) não são linguagens completamente diferentes?

RJ: O Grails usa o Groovy, que é muito mais parecido com o Java, mas mapeia as classificações Java de uma maneira que nenhuma outra linguagem faz. O Grails está embutido no Spring, que fica no topo da pilha runtime. Quando você tem um aplicativo Spring rodando, o Spring assume as responsabilidades do servidor de aplicativos para gerenciar o método empresarial, etc. No caso do Grails, você tem uma outra camada no topo dessas capacidades, e todos os componentes do Grails gera um objeto que pode ser gerenciado pelo Spring. Isso é importante de uma perspectiva de suporte porque, no runtime, o Grails está alavancando uma tecnologia muito madura, em vez de inventar o seu próprio modelo de componente. Se você é um desenvolvedor em Grails e necessita acessar funções avançadas, você não pode acessar diretamente no Groovy, você pode configurar qualquer um dos objetos gerenciados pelo Spring e você terá os seus planos poderes a seu dispor.

Fonte: EddieC@DaniWeb
 
Powered by FeedBurner Creative Commons License
Esta obra está licenciada sob uma Licença Creative Commons.