| Autor |
Mensagem |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/01/2010 09:51:58
|
xjunior
JavaEvangelist
![[Avatar]](/images/avatar/7d5e16c1a728cb7d3e40ffa4eadb67ab.png)
Membro desde: 26/08/2009 15:49:19
Mensagens: 321
Localização: Belo Horizonte - MG
Offline
|
Olá galera do guj,
Estou desenvolvendo uma ferramenta baseada no JasperReports em PHP, e preciso criar uma mini-linguagem de programação para executar as expressões feitas em java, como não fiz a matéria de Compiladores e na grade do meu curso da facul não tem mais, gostaria de algumas dicas de vcs....
Se alguém já tiver feito qualquer tipo de linguagem de programação idependente da linguagem, até o meu xodó C++, pode postar, fico muito grato.
Aqui no trampo falaram pra mim usar o design pattern interpreter, mas acho que num vai atender muito.
Se tiverem tutoriais ou apostilas, favor me enviar, não vou ter que fazer a linguagem completa, só o que é mais usado para gerar relatórios ou gráficos, subrelatórios, cubo e etc., entende?
Valeu galera....
This message was edited 2 times. Last update was at 04/02/2010 15:28:28
|
acessem um dos melhores foruns de TI: http://www.clubedaprogramacao.com/forum/
Always code as if the person who will maintain your code is a maniac serial killer that knows where you live. |
|
|
 |
|
|
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/01/2010 09:53:02
|
xjunior
JavaEvangelist
![[Avatar]](/images/avatar/7d5e16c1a728cb7d3e40ffa4eadb67ab.png)
Membro desde: 26/08/2009 15:49:19
Mensagens: 321
Localização: Belo Horizonte - MG
Offline
|
|
acessem um dos melhores foruns de TI: http://www.clubedaprogramacao.com/forum/
Always code as if the person who will maintain your code is a maniac serial killer that knows where you live. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/01/2010 10:21:40
|
eduveks
GUJ Ranger
![[Avatar]](/images/avatar/bce9abf229ffd7e570818476ee5d7dde.png)
Membro desde: 19/04/2005 07:45:40
Mensagens: 831
Localização: Lisboa - Portugal
Offline
|
Não sei se você conhece o CajuScript, é leve, e fácil de usar, e podes customizar a sintaxe, pega o código do SVN e compila, tem algumas melhorias. www.cajuscript.org Tem um startup rápido e leve, e um tempo de execução bastante rápido. Acho que desenvolver algo de raiz é uma grande aventura, falo pela minha experiência ao desenvolver o CajuScript. Você pode é fazer um conversor para adaptar para correr com outra linguagem, no caso CajuScript, ou outra qualquer. Mas boa sorte... não sei qual é o retorno desta empreitada, mas acredito q deve valer o esforço
This message was edited 1 time. Last update was at 15/01/2010 10:22:22
|
http://www.cajuscript.org
http://eduveks.blogspot.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/01/2010 10:35:19
|
xjunior
JavaEvangelist
![[Avatar]](/images/avatar/7d5e16c1a728cb7d3e40ffa4eadb67ab.png)
Membro desde: 26/08/2009 15:49:19
Mensagens: 321
Localização: Belo Horizonte - MG
Offline
|
Bem interessante,
Já tinha ouvido falar do cajuscript e achei muito interessante a iniciativa, vou até baixar pra ver como ele funciona...
Realmente preciso de algo mais simples, não tão encorpado como uma linguagem de mercado, pois o objetivo é atender ao específico e não ir à este ponto de se tornar uma linguagem comercial...
Uma outra alternativa é ao invés de fazer todos os passos de um compilador, eu criar uma camada que verifica os ítens definidos em um xml e assim converte para php, o que vc acha amigo eduveks? será que é viável? Ou é melhor criar mesmo uma mini-linguagem, ou uma meta-linguagem?
aqui, aproveitando, como faço pra me integrar no desenvolvimento do projeto do cajuscript?
|
acessem um dos melhores foruns de TI: http://www.clubedaprogramacao.com/forum/
Always code as if the person who will maintain your code is a maniac serial killer that knows where you live. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/01/2010 10:55:05
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20578
Localização: Curitiba/PR
Offline
|
http://groovy.codehaus.org
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/01/2010 11:18:04
|
xjunior
JavaEvangelist
![[Avatar]](/images/avatar/7d5e16c1a728cb7d3e40ffa4eadb67ab.png)
Membro desde: 26/08/2009 15:49:19
Mensagens: 321
Localização: Belo Horizonte - MG
Offline
|
Seria interessante ao invés de criar uma nova linguagem, somente fazer uma camada que transcreve o código em outro para este caso?
|
acessem um dos melhores foruns de TI: http://www.clubedaprogramacao.com/forum/
Always code as if the person who will maintain your code is a maniac serial killer that knows where you live. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/01/2010 11:23:45
|
ViniGodoy
Moderador
![[Avatar]](/images/avatar/1921493b5362e63fbe8983f4bd54157d.png)
Membro desde: 11/12/2006 08:22:01
Mensagens: 20578
Localização: Curitiba/PR
Offline
|
Seria, ao invés de usar uma nova linguagem, que tal usar uma linguagem já pronta?
|
@ViniGodoy - Lattes
Tem dúvidas de Java? Poste no fórum! Não respondo dúvidas de java via MP!
Ponto V! - Desenvolvimento de Jogos Profissional - @Pontov - Facebook
Projeto Towel - Swing de uma forma inteligente (Novo lar do ObjectTableModel e do Auto-Filtro).
Ei... você está usando DefaultTableModel no seu projeto??
Não faça isso! Veja: http://www.guj.com.br/posts/list/15/199067.java#1001295 |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/01/2010 11:38:25
|
xjunior
JavaEvangelist
![[Avatar]](/images/avatar/7d5e16c1a728cb7d3e40ffa4eadb67ab.png)
Membro desde: 26/08/2009 15:49:19
Mensagens: 321
Localização: Belo Horizonte - MG
Offline
|
O caso é::
Aqui na empresa, sou desenvolvedor PHP, onde trabalho no setor de desenvolvimento de framework, e estamos criando um application builder de alta performance em php, para criar sistemas de grande porte e complexos, e para isso, a gente precisa de uma ferramenta de geração de relatórios e apoio a BI, eu fiquei incubido de pesquisar a ferramenta e implementar, mas em php não existe nenhuma que presta, aí decidi escolher uma em java, as duas que mais agradei foram o BIRT que não o escolhi somente porque seus pdfs não são fiéis ao html gerado por ele e o Jasper que é bem forte no mercado.
Para disponibilizarmos precisamos de integrar essa ferramenta ao application builder, mas para isso, se usassemos em java, as grandes empresas que são nossas clientes deveriam ter dois servidores de aplicação instalados no caso o apache e outro como o jeronimo ou classfish entre outros, para não ter esse problema, me incubiram de fazer a engenharia reversa somente através dos aspectos do xml gerado pelo ireports, e características de implementação da api do jsaper e depois vou fazer um ireports em php, já fiz uma versão da ferramenta, mas sem grandes recursos, agora estou fazendo ela com a maioria dos recursos disponíveis implementando a maioria de design patterns necessários...
Por isso não posso usar outra linguagem, e sim criar ou fazer uma camada para que as expressões inseridas no gerador sejam interpretadas e façam a interação necessária com o relatório.
Entendeu o pq amigo...,, puxado mesmo, mas o bom é que haverá uma alternativa para o povo PHP, embora creio que não será open-source...
|
acessem um dos melhores foruns de TI: http://www.clubedaprogramacao.com/forum/
Always code as if the person who will maintain your code is a maniac serial killer that knows where you live. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/01/2010 12:16:19
|
eduveks
GUJ Ranger
![[Avatar]](/images/avatar/bce9abf229ffd7e570818476ee5d7dde.png)
Membro desde: 19/04/2005 07:45:40
Mensagens: 831
Localização: Lisboa - Portugal
Offline
|
ViniGodoy wrote:http://groovy.codehaus.org
O Groovy é muito mais robusto que o CajuScript. Mas o CajuScript consome muito menos memória e tem um startup muito mais rápido do que o Groovy. E há vários casos em que a performance do script com Groovy era muito pesada e demorada, e com o CajuScript se tornou muito mais rápido. Depende do cenário os pontos positivos de um pode valer mais a pena do que outro. E também claro... o "gosto" sempre conta.  E a curva de aprendizagem do CajuScript penso que é muito curta também, por ser simples. Só queria frizar também que os objetivos do CajuScript não são os mesmo do Groovy. Enquanto que o Groovy aposta em ser uma linguagem completa e robusta, o CajuScript foca em ser simples e leve, para pequenas implementações de script. Caso for fazer uma solução inteira em linguagem de script o CajuScript certamente não será a melhor escolha, mas se for ter apenas pequenas parte do programa em script, ai sim o CajuScript pode ser a melhor opção. Vini, nada contra o Groovy, muito pelo contrário, apenas para ficar claro que o ramo de um não é o ramo do outro  Há e também outro ponto, é que o Groovy é muito mais popular e assim muito mais ativo, já o CajuScript não.
This message was edited 1 time. Last update was at 15/01/2010 12:17:17
|
http://www.cajuscript.org
http://eduveks.blogspot.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/01/2010 12:32:44
|
Bruno Laturner
GUJ Expert
![[Avatar]](/images/avatar/5800ccd9514fd789d08e5831951aa6bc.jpg)
Membro desde: 18/02/2008 16:17:53
Mensagens: 3002
Offline
|
Não entendi por que você precisa de um application server para rodar o Jasper Reports. Só a JRE instalada + as libs não ficaria bom?
|
A resposta acima foi achada em menos de 5 minutos no google.
The prisoner falls in love with his chains. --E.W. Dijkstra |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/01/2010 13:21:24
|
xjunior
JavaEvangelist
![[Avatar]](/images/avatar/7d5e16c1a728cb7d3e40ffa4eadb67ab.png)
Membro desde: 26/08/2009 15:49:19
Mensagens: 321
Localização: Belo Horizonte - MG
Offline
|
Bruno Laturner wrote:Não entendi por que você precisa de um application server para rodar o Jasper Reports. Só a JRE instalada + as libs não ficaria bom?
Bom mano, ce num entendeu, eu preciso desta solução em PHP, e não existe ainda, só a que eu fiz primeiro, agora estou criando um "JasperReports" em PHP, uma api de geração de relatório, que satisfaça o que o outro faz, e este já está em fase avançada de desenvolvimento, sendo que faz grande parte do que se necessita, mas preciso avançar com a ferramenta, por isso preciso de uma "Linguagem que traduza o Java para PHP", entendeu?
flw brother...
|
acessem um dos melhores foruns de TI: http://www.clubedaprogramacao.com/forum/
Always code as if the person who will maintain your code is a maniac serial killer that knows where you live. |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/01/2010 13:21:37
|
AUser
GUJ Master
![[Avatar]](/images/avatar/ed3b5b6f006e79c5a2f0fff4b91c94cd.jpg)
Membro desde: 23/10/2008 06:39:07
Mensagens: 1092
Offline
|
xjunior wrote:O caso é::
Aqui na empresa, sou desenvolvedor PHP, onde trabalho no setor de desenvolvimento de framework, e estamos criando um application builder de alta performance em php, para criar sistemas de grande porte e complexos, e para isso, a gente precisa de uma ferramenta de geração de relatórios e apoio a BI, eu fiquei incubido de pesquisar a ferramenta e implementar, mas em php não existe nenhuma que presta, aí decidi escolher uma em java, as duas que mais agradei foram o BIRT que não o escolhi somente porque seus pdfs não são fiéis ao html gerado por ele e o Jasper que é bem forte no mercado.
Para disponibilizarmos precisamos de integrar essa ferramenta ao application builder, mas para isso, se usassemos em java, as grandes empresas que são nossas clientes deveriam ter dois servidores de aplicação instalados no caso o apache e outro como o jeronimo ou classfish entre outros, para não ter esse problema, me incubiram de fazer a engenharia reversa somente através dos aspectos do xml gerado pelo ireports, e características de implementação da api do jsaper e depois vou fazer um ireports em php, já fiz uma versão da ferramenta, mas sem grandes recursos, agora estou fazendo ela com a maioria dos recursos disponíveis implementando a maioria de design patterns necessários...
Por isso não posso usar outra linguagem, e sim criar ou fazer uma camada para que as expressões inseridas no gerador sejam interpretadas e façam a interação necessária com o relatório.
Entendeu o pq amigo...,, puxado mesmo, mas o bom é que haverá uma alternativa para o povo PHP, embora creio que não será open-source...
Opa,
Bom, sinceramente? Se você diz que só não escolheu o BIRT pois achou o PDF gerado nada fiel, eu acho que compensa muito mais você baixar ele e mudar o que não te agrada. Isso pode virar até um patch depois para o BIRT, você pode fazer uso disso como curriculum, tb.
Eu estou passando por uma experiência dessas de integração/modificação. Estou integrando o jBPM à nossa engine. Te garanto: MUITO melhor pegar algo assim do que fazer do zero. O jBPM4 que estou usando por ex. contém certas coisas que demorariam no mínimo um ano pro time desenvolver. Não gaste tempo à toa.
[]'s
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/01/2010 13:23:27
|
AUser
GUJ Master
![[Avatar]](/images/avatar/ed3b5b6f006e79c5a2f0fff4b91c94cd.jpg)
Membro desde: 23/10/2008 06:39:07
Mensagens: 1092
Offline
|
xjunior wrote:
Bruno Laturner wrote:Não entendi por que você precisa de um application server para rodar o Jasper Reports. Só a JRE instalada + as libs não ficaria bom?
Bom mano, ce num entendeu, eu preciso desta solução em PHP, e não existe ainda, só a que eu fiz primeiro, agora estou criando um "JasperReports" em PHP, uma api de geração de relatório, que satisfaça o que o outro faz, e este já está em fase avançada de desenvolvimento, sendo que faz grande parte do que se necessita, mas preciso avançar com a ferramenta, por isso preciso de uma "Linguagem que traduza o Java para PHP", entendeu?
flw brother...
Dê uma procurada em JSON. Vê se te ajuda se for esse o caso.
|
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/01/2010 13:46:39
|
eduveks
GUJ Ranger
![[Avatar]](/images/avatar/bce9abf229ffd7e570818476ee5d7dde.png)
Membro desde: 19/04/2005 07:45:40
Mensagens: 831
Localização: Lisboa - Portugal
Offline
|
Mas vc quer traduzir o JasperReports para PHP!? Ou seja, traduzir código Java em PHP... Ou quer chamar o JasperReports a partir do PHP? Ou seja, executar Java a partir do PHP... Qual das duas??? A primeira hipótese penso que é doidera
This message was edited 1 time. Last update was at 15/01/2010 13:47:23
|
http://www.cajuscript.org
http://eduveks.blogspot.com |
|
|
 |
![[Post New]](/templates/default/images/icon_minipost_new.gif) 15/01/2010 13:47:31
|
xjunior
JavaEvangelist
![[Avatar]](/images/avatar/7d5e16c1a728cb7d3e40ffa4eadb67ab.png)
Membro desde: 26/08/2009 15:49:19
Mensagens: 321
Localização: Belo Horizonte - MG
Offline
|
AUser wrote:
xjunior wrote:O caso é::
Aqui na empresa, sou desenvolvedor PHP, onde trabalho no setor de desenvolvimento de framework, e estamos criando um application builder de alta performance em php, para criar sistemas de grande porte e complexos, e para isso, a gente precisa de uma ferramenta de geração de relatórios e apoio a BI, eu fiquei incubido de pesquisar a ferramenta e implementar, mas em php não existe nenhuma que presta, aí decidi escolher uma em java, as duas que mais agradei foram o BIRT que não o escolhi somente porque seus pdfs não são fiéis ao html gerado por ele e o Jasper que é bem forte no mercado.
Para disponibilizarmos precisamos de integrar essa ferramenta ao application builder, mas para isso, se usassemos em java, as grandes empresas que são nossas clientes deveriam ter dois servidores de aplicação instalados no caso o apache e outro como o jeronimo ou classfish entre outros, para não ter esse problema, me incubiram de fazer a engenharia reversa somente através dos aspectos do xml gerado pelo ireports, e características de implementação da api do jsaper e depois vou fazer um ireports em php, já fiz uma versão da ferramenta, mas sem grandes recursos, agora estou fazendo ela com a maioria dos recursos disponíveis implementando a maioria de design patterns necessários...
Por isso não posso usar outra linguagem, e sim criar ou fazer uma camada para que as expressões inseridas no gerador sejam interpretadas e façam a interação necessária com o relatório.
Entendeu o pq amigo...,, puxado mesmo, mas o bom é que haverá uma alternativa para o povo PHP, embora creio que não será open-source...
Opa,
Bom, sinceramente? Se você diz que só não escolheu o BIRT pois achou o PDF gerado nada fiel, eu acho que compensa muito mais você baixar ele e mudar o que não te agrada. Isso pode virar até um patch depois para o BIRT, você pode fazer uso disso como curriculum, tb.
Eu estou passando por uma experiência dessas de integração/modificação. Estou integrando o jBPM à nossa engine. Te garanto: MUITO melhor pegar algo assim do que fazer do zero. O jBPM4 que estou usando por ex. contém certas coisas que demorariam no mínimo um ano pro time desenvolver. Não gaste tempo à toa.
[]'s
Bom amigo, se eu escolhece o BIRT, seria a mesma coisa, mas ele é um pouco menos complicado, agora, realmente desenvolver uma ferramenta destas do zero é complicado, mas a empresa quis assim e eu tinha falado antes que tinha como desenvolver a partir dela, então a responsabilidade foi pra minha mão.
Nesta ferramenta que estou desenvolvendo em PHP, eu estou desenvolvendo ela sozinho, e por causa da performance tenho q gastar muito neurônio pensando em solução pra fazer o produto acontecer, graças à Deus já tá em um ponto muito bom, que pra ficar mais completo falta fazer este módulo, a única coisa que ainda não implementei e nem sei se vou fazer assim é o hashmap, pois no nosso caso não é necessário fazer isso.
Vi uma que uns malaios tão tentando fazer, um tal de PHPJasper XML, muito ruim a ferramenta, era feita em PHP4 (terrível, quase num tinha orientação à objetos), eles estão a 1 ano e meio tentando fazer a ferramenta e eu em menos de 1 mês e meio criei uma que fazia quase tudo, enquanto a deles nem renderizava direito, mas agora esta que estou desenvolvendo agora, que já tem 2 meses, está em um ponto muito bakana.
|
acessem um dos melhores foruns de TI: http://www.clubedaprogramacao.com/forum/
Always code as if the person who will maintain your code is a maniac serial killer that knows where you live. |
|
|
 |
|
|