:], Boa tarde!
Já fiz algumas perguntas aqui no forum e esqueci de me apresentar, então vamos lá;
Meu nome é Nycholas de Oliveira e Oliveira e atualmente estou em um projeto que pretende criar um fork do InVesalius para aplicação na implantodontia, e durante esse processo creio que surgirão várias dúvidas e espero saná-las aqui, ;-).
Algo importante que gostaria que vocês me esclarecessem, é o porque de usar a Wx? Não estou falando que ele não seja robusto para a aplicação, não me entendam mau, estou perguntando sobre estratégia e compatibilidade com a VTK e outras APIs que se integram juntamente com ele. Se a Wx tem um suporte maior ou algo parecido, ou vocês não chegaram a testar outras GUIs?
Vou explicar o porque da pergunta; Como comentei acima o projeto que estou pretende criar um fork do InVesalius e eu tenho muito mais experiência com a Qt do que com a Wx, e a Qt tem o Designer que pode me ajudar bastante na construção das widgets. Sei que a Wx tem o Boa Constructor mas o Boa esta fora de cogitação para ser uma ferramenta nesse projeto (sei que vocês entendem o porque disso, :-).
Se haver algo mais que alguém gostaria de compartilhar sobre o decorrer do desenvolvimento do InVesalius (dificuldades, estratégias, o que deu certo, o que deu errado, o que pode ficar melhor, etc) que comente aqui.
Obrigado.
--
Até mais e boa sorte,
Nycholas de Oliveira e Oliveira.
Autor: Nycholas Oliveira e Oliveira
22 comentários
- que tivesse licenciamento compatível com GPL (na época Qt não era LGPL)
- multiplataforma
- comunidade ativa Naquele período, o wxPython foi o que mais se enquadrou às nossas necessidades. A princípio utilizávamos o BoaConstuctor como IDE, pela facilidade em construir as interfaces. Entretanto, com o passar do tempo, ele não estava atendendo mais nossas necessidades, e identificamos que a melhor saída era escrever o código fonte da GUI na mão, sem um builder. Isso nos garantiu autonomia e possibilitou que utilizássemos os recursos mais recentes da biblioteca. Em termos de velocidade de desenvolvimento, diria que foi bastante rápida a construção da interface gráfica com wxPython sem builder, mesmo por programadores novos no projeto que não tinham experiência com a biblioteca (Thiago fez um editor de rtf em menos de 1 semana). Em relação a integração com VTK, hoje desenvolvemos em Ubuntu, Fedora, Windows e MacOS X. A integração wxPython-VTK nestes SOs tem sido satisfatória. Antes de iniciarmos o desenvolvimento do InVesalius 3, consideramos mudar de biblioteca de GUI, e o PyQt era um potencial candidato. Entretanto, tínhamos em mente que o InVesalius 2 precisava ser reformulado para ser menos dependente do wxPython e também para ser mais facilmente extendido a outras aplicações. Não nos sentimos aptos a fazer esta reformulação e, simultaneamente, migrar do wx para PyQt, por não termos experiência com a biblioteca. Então, desde novembro estamos escrevendo o InVesalius 3 de modo modularizado o suficiente para que seja simples a alteração da biblioteca de GUI, caso este seja o melhor caminho. É importante buscarmos consenso e caso a comunidade avalie que o PyQt atende melhor as demandas, podemos adotar a biblioteca para uma próxima versão do programa. Apenas defendo que é importante fecharmos uma versão do InVesalius 3 funcionando, bem modularizada, antes de alterar a biblioteca GUI empregada. O core do InVesalius (manipulação VTK, gerenciamento de projeto, importação, exportação, recursos, otimização de memória) é mais importante do que a biblioteca de interface gráfica utilizada, e acredito que todos ganhariam juntando esforços para melhorá-lo. Você não gostaria de contribuir neste sentido? "Coming together is a beginning; keeping together is progress; working together is success."
- Henry Ford Abraços, Tatiana