Pergunta

Eu tenho usado Ext JS como meu kit de ferramentas rico-widget por um tempo, mas estou pensando em me mudar para Yui, em parte por causa da licença menos restritiva.

O modelo orientado para componentes usado em Yui parece bastante semelhante ao que eu gostei tanto no Ext JS, mas estou interessado em quão profundas são essas semelhanças. Então, estou interessado em feedback de pessoas que usaram o Ext JS e o YUI. O que é o mesmo e o que é diferente? O que eu perco me mudando para Yui e o que eu ganho?

Foi útil?

Solução

Eu acho que ambas as bibliotecas realmente atendem a diferentes necessidades.

Yui é projetado atende às necessidades do Yahoo Inc. É muito bom em construir aplicações públicas, onde coisas como degradação graciosa, marcação limpa e acessibilidade são importantes.

O EXTJS é uma estrutura completa muito boa e bem projetada da RIA, que é muito firmemente direcionada para a linha de aplicativos de negócios. Recursos como um componente de grade realmente poderoso, um layout forte e uma boa aparência profissional.

Eu usei consideravelmente os dois, embora apenas até Yui 2.7.0 e tenha construído vários RIA completos usando as estruturas.

Mover uma aplicação existente de um para outro seria bastante diferente, como se eles compartilhassem um ancestral comum (EXTJS já foi Yuiext), as estruturas são bem diferentes agora.

Outras dicas

Uma grande diferença é que o YUI é distribuído sob a licença BSD extremamente permissiva, enquanto o EXTJS é distribuído sob uma interpretação muito viral da GPL. Por exemplo, com a interpretação da GPL por Senca, se você escrever uma interface de sabão ou repouso especificamente para conversar com um front end Extjs, o código do servidor deve ser GPL e você deve fornecer acesso à fonte, pois o "distribuiu" concedendo a conceder -a concedendo Acesso na web. A Senca fornece uma licença comercial para o código deles, mas se você ler os documentos com cuidado, verá que eles não permitem que você converta código que você escreveu contra a GPL Senca em outra licença quando você mudar para a versão comercial. (http://www.sencha.com/legal/license-overview)

Em resumo, se o seu código precisar integrar -se à lógica de negócios proprietária ou sistemas licenciados comercialmente, você deverá desenvolver usando a versão comercial do Sencha desde o início.

Para mim, a diferença é que Yui é muito leve e flexível, enquanto o ExtJS é mais pesado, com uma pegada maior e mais rígida na maneira como você o usa. Yui é ótimo se você souber o que está fazendo em JavaScript e deseja estender seu poder; Extjs é bom se você quiser uma camada de abstração da interface do usuário que você não precisa mexer muito ... mas se você Faz Deseja fazer isso fazer coisas que não foi projetado, pode ser uma tarefa real.

Ao construir uma aplicação recente, tive exatamente a mesma decisão de fazer Yui ou Ext JS.

Acabei indo com Yui por alguns motivos: o YUI 3 é extremamente leve e rápido para tarefas simples e o carregamento preguiçoso torna as coisas ainda mais rápidas.

A degradação graciosa foi importante para este aplicativo.

O uso de widgets Yui 2 em Yui 3 é bastante fácil e com 3,1 semanas literalmente, isso se tornará ainda mais fácil.

A documentação do YUI é inacreditável e o bate -papo e os fóruns do IRC são muito úteis e realmente têm pessoas da equipe de desenvolvimento da YUI.

Em uma época em que Todos os aplicativos estão migrando para a web, a linha clara desenhada por Gareth entre o aplicativo público e o aplicativo de negócios não faz sentido também.

Prefiro as outras respostas, como a de Robusto, e comparo ambas as estruturas por motivos técnicos/financeiros.

Vantagens Yui:

  • Livre
  • Leve (HTML + JavaScript)
  • Mais eficiente
  • Mais fácil de aprender e entender
  • Melhor documentação e exemplos
  • Comunidade maior

Vantagens de extensão:

  • Recursos e componentes mais ricos
  • Alguns driver do lado do servidor (sem documentos) (como .NET) (embora o uso dessas bibliotecas no servidor pareça um design ruim)

Conclusão: Se o seu site não exigir os recursos extras fornecidos pelo EXT, vá para Yui.

Ainda não usei ExtJs, ainda em uma fase de aprendizado, mas pelo que pude fazer com isso, tenho certeza de que ainda mais de 1 ano atrás, quando eu estava fazendo muito yui dev , teria sido muito mais desafiador e o resultado não teria sido tão liso.

Não é muito dizer que você não deve fazê -lo, mas meu conselho para você seria fazer uma pesquisa séria e uma boa prototipagem de alguns dos recursos existentes que você deve ver se Yui atenderá às suas necessidades. Não apenas se baseie nos exemplos e na sensação de "Sim, parece que isso funcionaria".

Com o GPLV3, afirma que, desde que seus usuários façam parte da mesma entidade legal que você não precisa compartilhar o código -fonte. A verborrage afirma tecnicamente isso como se não fizesse parte da mesma entidade legal, você precisa fornecer a fonte. Mas isso não significa que Sencha não mudará a licença posteriormente. Isso também não significa que eles também.

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top