A plataforma de desenvolvimento on-line do Eclipse Che teve um ótimo ano. No início de 2018, foi lançado o Eclipse Che 6.0, que recebeu vários novos recursos para equipes de desenvolvimento interessadas em criar aplicativos nativos da nuvem e, na conferência CheConf 18.1, foi anunciado o início do próximo estágio de desenvolvimento - Eclipse Che 7.

A cada novo lançamento, a plataforma está se tornando mais interessante, graças aos esforços da comunidade e à participação ativa dos usuários. Vamos ver como as oportunidades disponíveis mudaram e se expandiram e como você pode experimentá-las agora.
O Eclipse Che é um projeto de código aberto com os seguintes objetivos:
- Acelere a conexão de novos participantes com os projetos.
O Eclipse Che precisa apenas de um navegador para funcionar. Não é necessário instalar outro software na máquina do desenvolvedor, o que significa que novas pessoas podem se envolver imediatamente no trabalho. - Corrija o problema de incompatibilidade de ambientes de trabalho.
"Bem, eu não sei! Tudo funciona na minha máquina! ” - isso soa familiar? Isso não acontecerá novamente: agora o código funciona da mesma forma em todas as estações de trabalho. - Forneça segurança interna de nível corporativo.
Como o Eclipse Che está posicionado como um substituto para as soluções VDI, ele deve atender aos requisitos de segurança corporativa, em particular, ter um modelo de acesso baseado em função e excluir a possibilidade de armazenar textos de origem nas máquinas de desenvolvimento.
O roteiro do projeto descreve quatro áreas principais:
- IDE.next - Editor de código atualizado - para mais diversão
- Plugins são a chave para o desenvolvimento do ecossistema Che.
- Workspace.next - Ferramentas IDE que funcionam na forma de microsserviços em contêiner e aumentam a consistência dos ambientes de desenvolvimento e produção.
- Funcionalidade corporativa para Che completo.
E com mais detalhes?
IDE.Next
Em vez do IDE baseado em GWT, a nova versão do Che agora usa o
Eclipse Theia , expandindo as possibilidades de desenvolvimento adicional do projeto Eclipse Che.
Veja como o novo IDE funciona:
E agora disponível:
- Editor baseado em Mônaco - interface super rápida e super responsiva, funcionalidade codelens e muito mais.
- A paleta de comandos , que permite fazer quase tudo com o teclado.
- Suporte a tarefas , incluindo tarefas do VS Code e da equipe Che.
- Visualização integrada de aplicativos diretamente do IDE, incluindo o modo Markdown.
- Interface personalizável , funciona com o princípio de arrastar e soltar.
- E muito mais, incluindo Outline View, Search, Git.
Eclipse theia
Como você sabe, o Eclipse Theia é uma plataforma para criar IDEs online. O projeto é baseado no TypeScript e oferece aos desenvolvedores um modelo de programação mais conveniente e flexível, que acelera a criação de plugins.
No entanto, existe uma lacuna funcional séria entre o Eclipse Theia e o IDE atualmente usado no projeto Che. Portanto, durante a maior parte do ano passado, Theia adicionou recursos ausentes para poder substituir completamente o IDE atual. Os colaboradores do projeto Eclipse Che passaram mais de cinco anos criando um IDE baseado em nuvem, e é importante reter essas experiências e experiências para tornar o novo IDE realmente útil.
Aqui estão exemplos de recursos úteis:
- Protocolo do adaptador de depuração.
- Protocolo do servidor de idiomas.
- Comandos
- Configurações
- Atalhos de teclado.
- Suporte para Textmate.
- Recursos de segurança.
IDEs diferentes para diferentes casos de uso
Outro detalhe importante. Como antes, por padrão, o Che fornecerá seu IDE da web padrão para os espaços de trabalho. No entanto, agora você pode conectar outros IDEs a eles, porque há casos em que o ambiente IDE do Che não cobre os casos de uso necessários ou, por algum motivo, alguém deve usar algumas ferramentas especiais. No IDE antigo, os aplicativos RCP eram usados para isso.
No Eclipse Che 7, é possível conectar quaisquer ferramentas às áreas de trabalho (área de trabalho Che), incluindo:
- Ferramentas baseadas no Eclipse Theia (como é apenas uma plataforma para a construção de IDEs online), por exemplo, a popular ferramenta Sirius .
- Absolutamente outras soluções, como Jupyter ou Eclipse Dirigible.
Veja um exemplo de uso do Jupyter com uma área de trabalho Che:
A propósito, a equipe do Eclipse Dirigible também está trabalhando na integração de seu IDE online com os espaços de trabalho Che.
Eclipse Dirigível integrado ao espaço de trabalho do Eclipse Che. Mais neste
link .
Novo modelo Che-Plug
O Eclipse Che é uma plataforma para a construção de ferramentas baseadas em nuvem e, para isso, precisa de um modelo de extensibilidade bem pensado e conveniente.
A extensibilidade do Eclipse Che costumava se resumir ao rótulo branco: desenvolvedores independentes ajudaram a criar suas próprias versões personalizadas do Eclipse Che e a distribuí-las para o público. E, embora isso tenha se adaptado a muitos parceiros, o método sempre foi considerado complexo e levou ao surgimento de pilhas de tecnologia (especialmente GWT no IDE), que não eram particularmente convenientes para os desenvolvedores. Devido à falta de extensibilidade dinâmica, os componentes do Che Plugin precisavam ser empacotados nos chamados “assemblies de montagem” para torná-los disponíveis para os usuários finais. Além disso, sem reconstruir todo o ambiente Che, era basicamente impossível criar rapidamente um plug-in, empacotá-lo para instalação em um ambiente Che existente e disponibilizá-lo. Por isso, deixamos o GWT em favor do projeto Eclipse Theia IDE.
Todas essas manipulações foram necessárias para criar um modelo de plug-in dinâmico. Em resumo, no Che, o usuário não precisa se preocupar com as dependências das ferramentas que trabalham em seu espaço de trabalho, elas devem ficar disponíveis conforme necessário. Isso significa que o próprio Che-plugin fornece suas dependências, seus serviços de back-end (que podem funcionar em um contêiner auxiliar conectado ao espaço de trabalho do usuário) e sua extensão de interface do usuário para o IDE. Como resultado, os usuários têm a impressão de que o Che fornece magicamente os serviços de idiomas e as ferramentas de desenvolvimento de que precisam no espaço de trabalho.
Compatível com VSCode
O novo modelo de plug-in tem outro aspecto importante: o desejo de otimizar os esforços dos desenvolvedores criando plug-ins e distribuindo-os como parte de várias ferramentas ou dentro das comunidades. Portanto, os plugins Theia foram complementados com suas APIs para garantir a compatibilidade com os pontos de extensão do VS Code. Como resultado, a migração de plug-ins existentes do VS Code para o Eclipse Che é bastante simplificada. A principal diferença é o método de empacotamento: no Eclipse Che, os plugins e as dependências são empacotados em seu próprio contêiner.
Assim:
Para simplificar a publicação e a distribuição, um mercado de plugins será lançado. Além disso, ele será implementado na forma de um serviço público disponível para a comunidade e na forma de uma funcionalidade separada que permite criar essas lojas como parte de ambientes Che privados com controle rígido de conteúdo sobre firewalls. Agora você pode encontrar os plugins no registro do repositório github correspondente.
Modo hospedado
Criar Che-plugins deve ser fácil e levar o mínimo de tempo possível no ciclo de desenvolvimento interno (agora estamos falando sobre a diferença entre fazer alterações no código e exibir e depurar os resultados dessas alterações). E como ele precisa de grandes melhorias em relação ao IDE baseado em GWT, um novo modo hospedado foi implementado. Esse modo permite que os participantes do projeto Che construam o Che diretamente do próprio Che, e com suporte completo ao ciclo de vida, da criação e codificação de um novo plug-in para a depuração.
Aqui está o que parece:
IDE Orientado ao Kubernetes
O Eclipse Che 7 é o primeiro IDE orientado a Kubernetes. Ou seja, você pode usar contêineres diretamente em suas áreas de trabalho. No Che, essas áreas têm um nível de lógica especial, “modo dev”, que é implementado sobre os contêineres usados no ambiente de produção e fornece ferramentas de preenchimento automático ao entrar no IntelliSense e outras ferramentas IDE auxiliares.

Quanto ao Workspace.Next, graças a eles, você pode usar imediatamente definições de aplicativos "limpas" (imagem do Docker, lista de recursos Composefile ou Kubernetes) no Che sem nenhuma modificação para implementar os serviços IDE. No Workspace.Next, as ferramentas IDE são implementadas como microsserviços empacotados em seus próprios contêineres auxiliares, juntamente com dependências e não afetam os contêineres de aplicativos de nenhuma maneira. No tempo de execução, as ferramentas IDE são isoladas umas das outras e dos contêineres do aplicativo. Como resultado, cada ferramenta IDE possui seu próprio ciclo de vida, o que simplifica sua atualização e substituição, e em breve eles receberão seus próprios mecanismos de dimensionamento.
Como tentar?
O Eclipse Che 7 está disponível e você pode experimentá-lo agora, simplesmente selecionando a pilha Che 7 ao criar um novo espaço de trabalho.
Vá para o URL da fábrica:
https://che.openshift.io/f?id=factoryvbwekkducozn3jsnCrie uma conta no che.openshift.io, crie um novo espaço de trabalho e selecione a pilha Che 7.
Deseja testar? Instale a versão mais recente do Eclipse Che:
Início rápido com o Eclipse CheSe você estiver pronto para compartilhar seus pensamentos e observações, participe da comunidade!
Suporte: perguntas, relatórios de bugs, solicitação de recursos via
problemas do GitHubBate-papo geral: eclipse-che Mattermost channel
Reuniões virtuais: a reunião da comunidade Che ocorre a cada segunda segunda-feira
Lista de discussão: che-dev@eclipse.org
O Red Hat CodeReady Workspaces pode ser baixado da assinatura do desenvolvedor aqui:
https://developers.redhat.com/crw-hw/