Autor Tópico: Importante - Joomla! 5.0 Ousado em um ano - Mas podemos fazer isso?  (Lida 2221 vezes)

0 Membros e 1 Visitante estão a ver este tópico.

Offline Aplicweb

  • Administrador
  • *****
  • Mensagens: 56
  • Sexo: Masculino
    • Ver Perfil

Quais são os desafios que enfrentamos?
Sejamos honestos, a cada dois anos, ter um novo lançamento importante parece assustador. No passado, nem sempre estivemos à altura da migração e das atualizações. Os motivos foram vários. A longa fase de desenvolvimento levou a uma grande lacuna entre o atual major e a próxima versão. E como a tecnologia muda constantemente, qualquer grande período de tempo significa que muitas mudanças tecnológicas devem ser consideradas, o que acarreta um obstáculo maior à migração.

Diminuir o tempo de conclusão tem seus benefícios, mas também algumas desvantagens. Por um lado, podemos reagir mais facilmente às novas tecnologias, para que as mudanças não sejam muito grandes. Se a nova versão principal for deixada por muito tempo, a migração levará a uma reconstrução quase completa.

Por outro lado, as atualizações de tecnologia mais rápidas trazem desafios para os desenvolvedores de extensões e templates. Estamos plenamente conscientes de que às vezes é doloroso manter-se atualizado com as mudanças na arquitetura do Joomla, pois envolvia a refatoração regular do código para se livrar de funções e classes obsoletas.

Não existe um prazo perfeito. Sem período de lançamento Goldilocks para ajudar a todos, sempre há vencedores e perdedores, e a dor sempre estará em uma parte do processo de construção ou outra.

Algumas mudanças também parecem um pouco questionáveis ​​à primeira vista. Por exemplo, por que a maioria das classes Joomla\Cms\Factory estão obsoletas e devem ser removidas com o Joomla 5? Funcionou como um encanto por 11 anos; por que deveria se tornar uma má prática agora?

Esses são os pensamentos que tivemos nas diferentes equipes responsáveis ​​​​por enviar nosso produto excelente, extensível, à prova de futuro e de manutenção. Mas vamos enfrentar os desafios um por um.

As boas notícias
Antes de começarmos a falar sobre o futuro, vamos olhar para onde estamos com o Joomla 4. Após cerca de sete longos anos de desenvolvimento, finalmente lançamos uma nova versão principal do Joomla!. E o Joomla 4 é realmente um ótimo software, sem dúvida. Construir um componente da maneira Joomla 4 precisa de muito menos código em comparação com o Joomla 3. A segurança foi aumentada por muitas mudanças, incluindo instruções preparadas para proteger contra injeções de SQL.

A acessibilidade veio aos trancos e barrancos, e os recursos interessantes crescem o tempo todo, fluxos de trabalho, agendador, modelos filhos e a lista cresce.

Também estamos em um estado muito melhor em termos de comunidade, com muitas pessoas avançando para preencher vagas vazias. As equipes estão crescendo e houve uma vibração positiva no GitHub e nos canais da comunidade. Sempre há coisas que poderíamos fazer melhor, mas não é por falta de tentativa, e nosso declínio de participação de mercado diminuiu, parou e, no momento em que escrevo, está mostrando um crescimento muito pequeno no gráfico W3Tech e outras fontes mostraram um aumento mais acentuado.

Temos uma estratégia clara para o sucesso, só precisamos construir sobre ela.

Quais são os planos para o 5.0?
O “recurso” mais importante do Joomla 5.0 é remover o código obsoleto. Isso torna o Joomla à prova de futuro. Reduziremos fortemente o esforço de manutenção consolidando diferentes áreas do código. Além disso, escrever testes será muito mais fácil e confiável no futuro.

Queremos ter uma estrutura de código que nos dê a possibilidade de oferecer suporte a desenvolvedores de terceiros, aumentando sua qualidade e segurança de código. Imagine ter seu código automaticamente testado apenas porque você está seguindo o padrão principal do Joomla; essa é a visão para o futuro. Mais importante, conhecemos o desafio dos métodos obsoletos do Joomla\Cms\Factory, que são amplamente utilizados em todo o ecossistema. No momento, estamos no processo de garantir que teremos uma solução, portanto, extensões usando isso não serão inutilizáveis ​​no Joomla 5.0.

Com o Joomla 5.0, aumentaremos a versão mínima do PHP para 8.1. Fazer essa mudança nos trará muitos benefícios e nos ajudará a nos mantermos competitivos no mercado.

O PHP 8.1 traz uma enorme melhoria de desempenho para o Joomla. O efeito colateral é: estamos usando uma versão mais recente do PHP, que não está prestes a terminar tão cedo. Isso nos permite fazer os próximos passos em versões posteriores do Joomla, como o uso de fibras, loops de eventos e outros recursos de aprimoramento de desempenho.

Queremos trazer alguns benefícios em termos de função. Para o Joomla 4, planejamos a funcionalidade de vários domínios, mas depois de avaliar os requisitos completos, decidimos mover esse recurso para uma versão posterior, pois outras ideias entraram em foco e não queríamos nos apressar, pois ele precisa funcionar bem. Agora, com o Joomla 5.0, pode ser a hora certa e o código maduro o suficiente para trazer esse recurso para o núcleo.

Também estamos em uma discussão ativa sobre o futuro da edição de conteúdo. Editores de blocos como Gutenberg são uma nova maneira de fazer a edição de conteúdo funcionar. Queremos testar as águas e ver se é certo para o Joomla. Isso depende, é claro, do número de voluntários que estão dispostos a nos ajudar.

Tudo o que se relaciona com CSS/template de alguma forma está planejado para ser movido dos layouts principais para o Cassiopeia. Cassiopeia (ou talvez um novo template) serve como um modelo pai baseado em Bootstrap e pode ser personalizado por meio de modelos filhos. Isso possibilita a criação de modelos pai adicionais com base em outras estruturas, como Tailwind ou UIKit. Gostaríamos de integrar tal modelo alternativo no Joomla 5 se alguém puder ser encontrado para implementá-lo.

Como é típico para uma nova versão principal, a maioria das melhorias não são visíveis na superfície, mas são encontradas sob o capô.

Isso inclui separar os drivers de banco de dados para MySQL e MariaDB, que estão se tornando cada vez mais divergentes. Drivers separados nos permitem dar suporte aos respectivos sistemas de gerenciamento de banco de dados (DBMS) da melhor maneira possível. Além disso, queremos realizar as conexões de banco de dados preferencialmente via sockets, o que traz um aumento de velocidade.

As chamadas expressões de tabela comuns - um recurso agora oferecido por todos os bancos de dados suportados pelo Joomla - nos permitem tornar os direitos de acesso, categorias e menus mais eficientes porque podemos fazer sem a complicada implementação de conjuntos aninhados. Os acessos de leitura não são acelerados por isso, mas esperamos uma melhoria significativa no acesso de gravação.

Quais são os próximos passos?
Atualmente, estamos trabalhando em duas coisas principais: documentação do desenvolvedor e avaliação de todas as classes e funções obsoletas no Joomla CMS. Assim, com o lançamento do Joomla 4.3, queremos que todos os códigos obsoletos do Joomla sejam revisados. Esta revisão levará a uma de duas coisas:

A descontinuação é removida ou
Uma descrição e exemplos de código completos são fornecidos como um comentário de código sobre como migrar o uso desse código.
Além disso, a documentação completa de migração do desenvolvedor deve estar pronta, explicando como uma extensão do Joomla 3 pode ser migrada e totalmente compatível com o Joomla 4, que é então compatível com o Joomla 5.

Planejamos remover o uso de todos os códigos obsoletos no Joomla CMS para o lançamento do 4.4. Assim, o Joomla CMS pode ser visto como a melhor prática de como o código deve ser escrito.

Por último, mas não menos importante, planejamos criar para a versão Joomla 5.0 RC1 um conjunto completo de regras de reitor para suportar a reescrita automatizada de código obsoleto. Para conseguir isso, não ajustaremos manualmente os locais onde o código obsoleto ainda é usado no CMS, mas escreveremos as regras do Rector correspondentes para fazer as alterações. Essas regras estão então disponíveis para os desenvolvedores de extensões para adaptar seus componentes, módulos e plugins ao Joomla 5 com uma chamada de linha de comando, incluindo refatoração automatizada para as depreciações Joomla\Cms\Factory. Esperamos aprimorar o verificador JED de uma forma que possa fornecer feedback sobre código obsoleto em extensões de terceiros.

Enquanto isso, estamos em modo de desenvolvimento completo para os novos recursos, como multidomínio. Se você acha que pode contribuir com um recurso valioso, sinta-se à vontade para entrar em contato conosco pelos canais habituais e veremos se é possível integrar para o benefício de todos.

Para responder à pergunta levantada no início: estamos muito otimistas em preparar o 5.0 a tempo com muitas mudanças importantes para o futuro do Joomla, mas dependemos de VOCÊ. Precisamos do seu poder de codificação, habilidades de teste, escrita e arte gráfica e toda a ajuda que você pode oferecer. Então todos nós teremos um ótimo Joomla 5.0!

« Última modificação: 09 de Agosto de 2022, 10:25 por Aplicweb »