BT

Desenvolvimento em cloud: os IDEs foram para a nuvem

Postado por Eder Magalhães em 03 Nov 2011 |

A quantidade de soluções para Cloud Computing e o aumento em investimentos nessa área trazem a sensação de que tudo está se movendo para a nuvem. Agora a bola da vez são os IDEs. A proposta com os ambientes de desenvolvimento em nuvem é permitir, entre outras vantagens, que programadores não se preocupem com configurações do ambiente e outros detalhes locais, podendo escrever código a qualquer momento e de qualquer lugar, bastando dispor de um equipamento com navegador moderno e, claro, acesso à internet.

Os desenvolvedores de várias linguagens importantes, como Java, Python, JavaScript, C#, Ruby e PHP, já contam com serviços na web oferecendo IDEs. Boa parte não tem custo. Neste artigo, é apresentada uma seleção das principais IDEs na nuvem.

Eclipse Orion

O Eclipse Orion, projeto liderado pela Fundação Eclipse, disponibiliza suporte básico a escrita de código Java e tecnologias para web. Há várias funcionalidades para escrita de código, como autocompletar código e realce de sintaxe, para Java, HTML, CSS e JavaScript. O Orion usa o Git como sistema de controle de versões, mas ainda não foi integrado a ambientes de implantação de projetos em nuvem (por exemplo, Heroku, CloudBees ou Openshift).

Em paralelo ao Orion, a Fundação Eclipse disponibiliza o OrionHub, que hospeda a implementação do Orion, tornando-o acessível ao desenvolvedor. Para experimentar o Eclipse Orion no OrionHub, o desenvolvedor precisa informar um email no site do projeto, sem qualquer custo. O InfoQ Brasil, tem acompanhado os projetos de perto, começando pelo lançamento do OrionHub; em seguida cobrimos a versão 0.2 do Orion e recentemente, a versão 0.3. As três referências apresentam outros detalhes sobre o funcionamento do IDE em nuvem da Fundação Eclipse.

Eclipse Orion

Eclipse Orion

eXo Cloud IDE

O eXo Cloud IDE é um ambiente de desenvolvimento colaborativo disponível na web para as linguagens Java, PHP e Ruby, além de HTML5/JavaScript. O ambiente traz a navegação em múltiplas janelas, permitindo que o desenvolvedor edite vários arquivos ao mesmo tempo (algo comum no desktop, mas ainda inovador no ambiente de cloud). Da mesma forma que o Orion, o editor tem a funcionalidade de autocompletar código e realce de sintaxe, além de atalhos de teclado. O Git também é o sistema de controle de versões.

O ponto forte do eXo Cloud é o suporte a múltiplos ambientes para o implantação de projetos em ambientes de cloud, entre eles:

  • CloudBees, ambiente com suporte a projetos escritos em Java, integrado ao controlador de versões Git, com a opção de Integração Contínua através do Jekins e Maven.
  • Heroku, plataforma de cloud com suporte a projetos desenvolvidos em Ruby e Java. O Heroku também é integrado ao controlador de versão Git.
  • OpenShift: alternativa para implantação de projetos na nuvem. Projetos desenvolvidos em Java, PHP ou Ruby podem ser implantados diretamente no OpenShift Cloud Express.
  • Amazon Elastic Beanstalk: o eXo Cloud IDE pode ser adicionado em uma instância do Elastic Beanstalk.

O serviço está disponível sem custo. O desenvolvedor precisa criar uma conta informando o email e um nome do domínio (ex: dominio.cloud-ide.com) para definir um host que fica vinculado ao conteúdo dos projetos no eXo Cloud IDE.

eXo Cloud IDE

eXo Cloud IDE

Cloud9 IDE

O IDE Cloud9 é mais uma alternativa para IDE colaborativa, acessível via web com algumas funcionalidades complementares voltadas à gestão de projetos. Seu editor de código suporta HTML, JavaScript, CSS, CoffeeScript, Ruby e PHP. O IDE se integra aos controladores de versão distribuídos Git e Mercurial, com a possibilidade de integrar o projeto ao GitHub ou ao BitBucket.

A ferramenta permite implantação de projetos nos ambientes Joyent e Heroku (é necessário criar uma conta para utilização). Para projetos públicos e open source, o Cloud9 IDE é gratuito; no caso de projetos privados o custo é de 15 dólares por mês para cada usuário.

Cloud9 IDE

Cloud9 IDE

Python Fiddle e JS Fiddle

O Python Fiddle traz uma proposta mais simples que os três IDEs já descritos. Ele oferece um editor e um runtime online para código escrito em Python. O editor conta com algumas teclas de atalho e o suporte a realce de sintaxe. Outra característica é o suporte a alguns módulos escritos em Python e a possibilidade de compartilhar código entre desenvolvedores.

O Python Fiddle está imediatamente disponível para qualquer pessoa; não é necessário criar uma conta, basta escrever um trecho de código Python e executar diretamente no site. Para usar algumas funcionalidades, entretanto, é solicitado o login usando uma conta do Twitter, Facebook ou Google. Um detalhe: a IDE deve ser acessada por navegadores com suporte a HTML5 (ex.: Chrome, Firefox e IE9).

O JS Fiddle também disponibiliza um runtime e um editor; o foco, no entanto, é em JavaScript, HTML e CSS. O desenvolvedor consegue editar os três tipos de conteúdo na mesma tela, em áreas distintas, e tem a possibilidade de validar o resultado final combinando as três partes. Uma característica do JS Fiddle é o suporte a diversos frameworks JavaScript em diferentes versões, incluindo JQuery, Dojo, Mootools, Prototype e ExtJS.

Tanto o JS Fiddle como o Python Fiddle são ferramentas simples e diretas, que o desenvolvedor pode utilizar sem a necessidade de criar uma conta; basta acessar pelo browser e começar a codificar. As duas ferramentas não possuem integração com controladores de versão, nem suporte à implantação dos projetos em um ambiente cloud.

Python Fiddle

Python Fiddle

JS Fiddle

JS Fiddle

CodeRun Studio

O CodeRun Studio oferece suporte em cloud, a C#, ASP.NET, Silverlight, PHP, JavaScript, HTML e CSS. A proposta da ferramenta é centralizar o ambiente de desenvolvimento e execução em nuvem numa única plataforma. O CodeRun integra-se ao SQL Server e ao Amazon SimpleDB.

Para utilizar a IDE do CodeRun, o desenvolvedor não tem nenhum custo, e é possível realizar um test-drive no site do projeto, sem a necessidade de criar uma conta. A CodeRun fornece um outro serviço pago, chamado CodeRun Cloud, para a hospedagem integrada ao IDE, tornando possível a implantação no ambiente EC2 da Amazon.

CodeRun Studio

CodeRun Studio

Qual ferramenta?

Atualmente, os IDEs eXo Cloud e Cloud9 demonstram maior maturidade e maior número de funcionalidades, quando comparadas aos outros IDEs aqui analisados. Ambas as ferramentas, além do ambiente de escrita de código, fornecem integração com outras ferramentas fundamentais no dia-a-dia de qualquer equipe de desenvolvimento: um controlador de versões dos fontes e um ambiente para implantação e execução em cloud. Esse cenário pode mudar, entretanto, com a evolução rápida do Eclipse Orion. Vale acompanhar o progresso nas principais IDE na nuvem.

No geral, as três ferramentas citadas anteriormente suportam tecnologias para desenvolvimento de projetos e/ou serviços web. No caso do Eclipse Orion existe um esforço para a criação de plugins, permitindo a integração com ferramentas e frameworks JavaScript e CSS. Já os IDEs eXo Cloud e Cloud9 é importante que o desenvolvedor compreenda quais as restrições impostas em relação a APIs pelo ambiente de implantação escolhido.

IDEs em Cloud: o futuro?

Há ainda muitos desafios a serem enfrentados ao desenvolver sistemas na nuvem; por exemplo, como lidar com a cultura das empresas/equipes de desenvolvimento, como manter a segurança e garantir funcionalidades avançadas disponíveis em IDEs tradicionais, e como fazer a integração com outros aplicativos que compõem um kit de desenvolvimento.

Essas questões devem ser respondidas ou solucionadas com o amadurecimento das ferramentas e das próprias tecnologias de nuvem, e com o surgimento de novas empresas e desenvolvedores adeptos à nova estratégia de trabalho. O conceito de desenvolver software online, na nuvem, é muito recente, mas é possível identificar um grande potencial apenas examinando o que está disponível hoje. O futuro dos IDEs certamente passa pela nuvem.

Avalie esse artigo

Relevância
Estilo/Redação

Olá visitante

Você precisa cadastrar-se no InfoQ Brasil ou para enviar comentários. Há muitas vantagens em se cadastrar.

Obtenha o máximo da experiência do InfoQ Brasil.

Dê sua opinião

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

Interessante isso! by Wellington Pinheiro

Muito boa essa ideia de ter um ambiente de desenvolvimento disponível onde quer que você esteja e independente de SO, navegador, etc. Espero que isso realmente amadureça e se torne viável.

O maior obstáculo na evolução desses aplicativos, na minha opinião, continua sendo a questão cultural. Apesar de cada vez mais inserida em nosso contexto, a nuvem ainda soa como algo místico e, portanto, inseguro para muitas empresas/gestores. Mas com o tempo isso deve se tornar algo mais comum e a sua aceitação facilitará a adoção e também a evolução dessas ferramentas....assim espero!

Parabéns pelo artigo Eder!

Desenvolvimento em Tablets? by Fernando Simao

Seria essa uma possibilidade para podermos desenvolver aplicativos em tablets?

Re: Desenvolvimento em Tablets? by anderson freitas

Considerando o ambiente cloud, é possível sim. Porém, eu não conseguiria substituir a 'velocidade de digitação' em um teclado físico por um touch. Mas, para 'pequenos reparos', um tablet até que atenderia bem.
Abçs;

ótima idéia by Ediney Lopes

Era exatamente o que eu estava precisando, valeu pelo artigo!

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

HTML é permitido: a,b,br,blockquote,i,li,pre,u,ul,p

Receber mensagens dessa discussão

4 Dê sua opinião
Feedback geral
Bugs
Publicidade
Editorial
Marketing
InfoQ Brasil e todo o seu conteúdo: todos os direitos reservados. © 2006-2016 C4Media Inc.
Política de privacidade
BT

We notice you’re using an ad blocker

We understand why you use ad blockers. However to keep InfoQ free we need your support. InfoQ will not provide your data to third parties without individual opt-in consent. We only work with advertisers relevant to our readers. Please consider whitelisting us.