Mostrando postagens com marcador java. Mostrar todas as postagens
Mostrando postagens com marcador java. Mostrar todas as postagens

quarta-feira, 17 de setembro de 2008

Programação jogada no ventilador

Imagine fazer com que um programa Java converse com uma rotina em Fortran. Parece a cena final do Star Trek I, com o computador da nave querendo "jogar uma idéia" na V'Ger...

Mas isso é possível, a princípio se voce chamar um intermediário, que nesse caso será o meu amigo C++... ou talvez o "primo-pobre" C, talvez cause menos problema com ambos os lados...

Então o programa Fortran será embalado pelo C/C++, fazendo o encapsulamento, podendo virar uma DLL. Daqui ele conversa com o Java, graças ao JNI, que é a possibilidade do Java ler código nativo.

Lembrando que o Java é uma linguagem interpretada e portável entre máquinas distintas, enquanto que o lado C /C++/ Fortran são compilados, não necessariamente funcionais em qualquer lugar.

Então você pergunta: "porque não faça o que você quer em um local só ?!?" porque quero aproveitar o melhor de cada um:
  • O Fortran é o cara para calcular (você pode dizer o mesmo do C++, mas quando você tem uma biblioteca pronta a sua disposição, ou simplesmente um código que levou anos para uma galera implementar, não é você que vai desenroscar)
  • O Java é o cara da apresentação: interface gráfica, web, XML... há bastante coisa pronta, e principalmente: a torcida é a das maiores.
Surgem outras dúvidas, para ambos os lados: tem gente com bibliotecas numéricas boas, e tem gente que é melhor em web... mas juntando todos os requisitos, qual é a melhor combinação? Se buscar pela melhor solução, não saio daqui hoje, então escolhi isto.

Agora o problema é implementar. o java chamará funções do fortran, vai passar estruturas de dados variadas, e hoje em dia tem que haver um tratamento de exceção, coisa que até hoje não tem no fortran (horror, horror), ou seja, quando trava, é rosca, sem aviso prévio.

Felizmente existem tutoriais, que abordam um pedaço de cada coisa. Um exemplo é o http://www.csharp.com/javacfort.html

sexta-feira, 25 de maio de 2007

Metendo o pau...

... no java. Usando NetBeans com UML e a porra toda. Testei também o Java Studio Enterprise, mas trata-se da mesma coisa, com a desvantagem de deixar o módulo de C++ de fora da festa.

Próximos passos: sacar JNI e patterns.

quinta-feira, 3 de maio de 2007

quarta-feira, 2 de maio de 2007

Programação do final de semana

Bem bem bem, atualmente programando com NetBeans, mexi um pouco no Eclipse mas deixei esse pra uma etapa posterior. Achei o NetBeans mais prático (não sei se alguém vai me bater, mas enfim). Peguei uma library sarada para traçar gráficos, o jFreeChart, que se integrou perfeitamente. Mais a frente devo procurar outra ferramenta para gerar relatórios.

Os planos são: criar uma interface gráfica em Swing, integrar com rotinas em C++ e Fortran (the horror, the horror...) com JNI, compilar a jogar pra frente.

Fora isso, mexendo também com a novíssima versão do Matlab, no qual finalmente é paralela, ho ho ho