Qual é a melhor / mais fácil biblioteca de GUI para Ruby? [fechadas]


137

Qual é a melhor / mais fácil biblioteca de GUI disponível para Ruby?

Eu preferiria uma biblioteca GUI de plataforma cruzada, mas atualmente só estou preocupada com o Windows (Win32). Estou tendo dificuldade em encontrar algo que pareça fácil de usar. Há alguns?


1
Eu criei uma proposta de site para dar a perguntas como essa uma casa oficial longe do Stack Overflow. Chama-se Code Recommendations Help para torná-lo realidade, juntando-se e fazendo perguntas agora!
daviewales 23/03

2
Seria bom se um Mod pudesse passar esse para o site "Recomendações de Software". softwarerecs.stackexchange.com
Chris Pietschmann

4
SIM - este deve ser um recurso deste site - fechado como recomendação de software , movendo-o para o SE. Existem muitas postagens úteis neste site encerradas como 'não construtivas' quando, na verdade, são apenas extraviadas.
precisa


Respostas:


85

O Ruby Shoes (por quê) pretende ser uma estrutura GUI realmente simples. Eu não sei o quão completo é, no entanto.

Algumas boas amostras de código podem ser encontradas nos tutoriais .

Além disso, acho que o shoes impulsiona o hackety hack , um ambiente atraente de aprendizado de programação para jovens.


2
onde você o encontra agora por que o esforço da sorte se foi?
knoopx

2
O AFAIK shoes.heroku.com é o novo lar pós- _por que tudo está relacionado aos sapatos.
Pete Hodgson

1
A versão em shoesrb.com/downloads é "3", enquanto a versão mais recente em github.com/shoes/shoes/downloads é "3.1.0", enquanto "gem install shoes" instala "3.0.1". O que há com o pandemônio de versoning? É porque _por que desapareceu?
Alexander Alexander

6
Sapatos não são feitos para o ambiente de produção, mas por diversão, é o "gráfico das tartarugas" de Ruby. Ele é destinado a iniciantes a se familiarizar com 1.) linguagem específica de domínio, 2.) gráficos
karatedog

16
Para quem tem intenção de usar sapatos Ruby, não. É de buggy e o suporte é limitado. Promete muito, mas entrega tão pouco. Isso ocorre porque o autor 'desapareceu' e deixa para trás o que parece ser um projeto completo de 3/4. Não parece assim no início, mas quando seu código começa a ficar sério, ele não cumprirá o que promete. Sério, corra!
Dane Balia



12

Recentemente, comecei a usar o Qt como uma estrutura de GUI para um aplicativo Ruby. Existe uma ligação chamada QtRuby . Para um tutorial de início rápido (abrange apenas janelas), consulte esta postagem


10

Luz da ribalta Gosto muito da metáfora do teatro.


2
Você tem outros exemplos além da primeira e única demonstração da calculadora? Move nada em seu site
Peter

8

O Glimmer é uma opção interessante para usuários do JRuby, que fornece uma interface muito Ruby-ish para o kit de ferramentas SWT. (SWT é a estrutura de interface do usuário por trás do Eclipse, que oferece desempenho rápido e metáforas familiares da interface do usuário, usando widgets nativos nas várias plataformas suportadas: Windows, OS X, Linux etc.) O SWT sempre me atraiu como desenvolvedor Java , mas codificá-lo foi doloroso ao extremo. O Glimmer torna o processo muito mais direto, enfatizando as convenções sobre a configuração e avaliando o DRYness e todas as outras qualidades normais do Ruby.

Outra opção interessante é o SproutCore , um kit de ferramentas GUI baseado em Javascript com ligações Ruby, desenvolvido pela Apple. Pelo menos, as demos para ele parecem ótimas, e a otherinbox criou um aplicativo bastante elegante sobre ele. Pessoalmente, passei algumas horas tentando executá-lo em dois sistemas - um Windows e um Linux - e não obtive sucesso em nenhum deles - continuo enfrentando problemas de dependência com o Merb ou outras partes do Pilha SproutCore. Mas é intrigante o suficiente que eu volte depois de algumas semanas e tente novamente, esperando que os problemas sejam resolvidos nesse período.



7

Se você está procurando uma GUI de plataforma cruzada, recomendo ir com o JRuby e o Swing.

Além disso, dê uma olhada na biblioteca monkeybars , que é uma biblioteca Ruby para criar aplicativos MVC usando JRuby e Swing, onde você também pode usar o excelente Netbeans IDE para criar visualmente sua GUI.


1
o link rubyforge monkeybars é antigo e faz você pensar que o projeto foi abandonado; melhor ir para o site do projeto principal ( monkeybars.org ), ou a página github ( github.com/monkeybars/monkeybars-core )
fakeleft

5

Se você está desenvolvendo para Mac, o MacRuby tem a melhor biblioteca, sem dúvida . Além de ser rápido, ele possui uma interface gráfica muito boa chamada hotcocoa. Além disso, a biblioteca é desenvolvida pela Apple, usa as classes Core Foundation como base e é executada no tempo de execução do Objective-C usando LLVM. Em duas palavras, é incrivelmente rápido.


4

Existem ligações Ruby para QT e GTK, portanto você não pode dar errado com elas (elas também são portáteis).

Os programadores pragmáticos publicaram um mini livro sobre Ruby com QT e um livro completo sobre FXRuby, então acho que o último é outra boa opção.

Embora seja fácil de aprender e bonito, o Shoes é bastante situacional e não oferece tantas opções de controle quanto qualquer outro, por isso, se você deseja criar algo além de uma interface simples (para não odiar o Shoes, mas não é maduro) o suficiente), eu recomendo que você use um dos kits de ferramentas mais maduros e testados.


4

Experimente o visualruby, você pode criar facilmente seus formulários usando o designer de interface glade e , em seguida, escreva código ruby ​​puro para animá-los. É muito mais fácil do que as opções mencionadas acima, porque você não precisa codificar tudo manualmente.

Você pode ver vídeos de exemplo no site visualruby.


3

Eu tive uma experiência muito boa com o Qt, então eu definitivamente recomendo.

Você deve conhecer o modelo de licenciamento. Se você estiver desenvolvendo um aplicativo de código aberto, poderá usar a versão licenciada de código aberto gratuitamente. Se você estiver desenvolvendo um aplicativo comercial, terá que pagar taxas de licença. E você não pode desenvolver o código-fonte aberto e depois mudar a licença para comercial antes de começar a vender.

PS: acabei de dar uma olhada rápida nos sapatos. Eu realmente gosto das definições declarativas dos elementos da interface do usuário, por isso definitivamente vale a pena investigar ...


Por que você não pode desenvolver com a versão e o SO do sistema operacional? O mesmo código não funcionará nas duas versões? APIs totalmente diferentes ou algo assim?
Iconoclast

3

Se você estiver interessado, o RubyLearning oferece um curso sobre FXRuby e Shoes. Atualmente, o curso de Calçados está sendo realizado atualmente.

Provavelmente o mais fácil é o Shoes. Como professor assistente do RubyLearning, espero que tenhamos melhores cursos para os alunos.

Algumas pessoas ficaram presas na instalação do FXRuby. Mas o Shoes possui um instalador para qualquer plataforma (Windows, Mac e Linux).


3

Usando o interperter ironRuby, você tem a plataforma .net completa, o que significa que você pode codificar o Winforms e o WPF (tentei apenas o Winforms). É potencialmente multiplataforma, já que a plataforma mono existe


2

Há uma discussão aqui que pode ser útil.

Pela minha exposição (limitada), eu diria que os sapatos eram os mais divertidos e provavelmente os "mais fáceis" de entrar. Esteja avisado, no entanto, que descobrir o que estava errado quando algo quebra pode ser complicado (pelo menos era para mim).

Para um aplicativo do mundo real que eu planejava implantar para usuários do mundo real, acho que eu usaria o wxruby .



2

O Wxruby é um ótimo framework, simples e limpo. Experimente ou use glade com ruby ​​(a opção mais simples)



2

Experimente sapatos . Infelizmente, ainda não tive a chance de trabalhar com ele, mas tenho um projeto próximo em que planejo usá-lo. É multiplataforma. Além disso, a API parece muito Rubyish, então eu tentaria.


2
_why deixou os internets com todas as suas obras
knoopx

hey knoopx, sapatos está vivo e chutando, verificação da versão 4
peter
Ao utilizar nosso site, você reconhece que leu e compreendeu nossa Política de Cookies e nossa Política de Privacidade.
Licensed under cc by-sa 3.0 with attribution required.