Algo interessante relacionado ao OpenLaszlo na hora de desenvolver aplicações mais otimizadas está relacionado no uso das referentes tags: include ou import ambas possuem a mesma finalidade de incluir um recurso, ou .lzx, para ser utilizado na aplicação OpenLaszlo, porém a tag include irá incluir o recurso, ou as classes no tempo de compilação, caso seja uma aplicação SOLO irá compilar tudo para um único binário final .swf, caso seja utilizado a tag import, essa tag irá incluir o recurso em runtime, caso em uma aplicação SOLO irá gerar mais de um SWF final, um .swf da parte principal da aplicação e outros .swf dos recursos e classes, utilizando dessa forma otimizamos de certa forma a performance e uso dos recursos e classes, reduzindo o tamanho inicial do swf carregado na máquina do usuário, com isso reduzindo o tempo de acesso à aplicação...
ver os respectivos links sobre o assunto:
performance-tuning
tag import
tag include
SOLO is simple, part two
Import Statement
Dynamic Libraries
Chapter 14. Program Structure
sexta-feira, 16 de fevereiro de 2007
quinta-feira, 15 de fevereiro de 2007
OpenLaszlo: tags Canvas e Library
uma das grandes dúvidas das pessoas que começam a utilizar o OpenLaszlo é quanto ao uso das respectivas tags: canvas e library
de forma análoga...
- Tag canvas:
comparado com o java seria como o método de execução public static void main, em outras palavras é o ponto de execução da aplicação, desenho, apresentação da aplicação e execução das classes... Obs.: um .lzx pode ter apenas uma única tag canvas
- Tag library:
é utilizado para os demais arquivos .lzx onde dentro desta tag serão alocados as classes de funcionalidades desenvolvidas para a aplicação, ou mesmo rotinas de códigos que poderão ser reutilizadas n vezes dentro da aplicação, ou mesmo, em outras novas aplicações no intuito de reduzir o tempo de desenvolvimento de novas aplicações...
de forma análoga...
- Tag canvas:
comparado com o java seria como o método de execução public static void main, em outras palavras é o ponto de execução da aplicação, desenho, apresentação da aplicação e execução das classes... Obs.: um .lzx pode ter apenas uma única tag canvas
- Tag library:
é utilizado para os demais arquivos .lzx onde dentro desta tag serão alocados as classes de funcionalidades desenvolvidas para a aplicação, ou mesmo rotinas de códigos que poderão ser reutilizadas n vezes dentro da aplicação, ou mesmo, em outras novas aplicações no intuito de reduzir o tempo de desenvolvimento de novas aplicações...
quarta-feira, 14 de fevereiro de 2007
OpenLaszlo: trabalhando com Classes
uma das grandes vantagens no OpenLaszlo que também foi um dos motivos do meu interesse inicial por esta tecnologia VIEW, foi o fato de ter sido anunciado que era capaz de programar um interface de aplicação web usando conceitos de POO, isso mesmo, o paradigma que o pessoal do java e outras linguagens Orientada a Objetos estão acostumados, no caso classes, herança e outras funcionalidade...
nesse post o foco são as classes, o OpenLaszlo te possibilita organizar a sua aplicação em classes aumentando ao máximo a reusabilidade de código, sendo uma classe alguma funcionalidade de processamento, ou então uma classe que represente um componente visual costumizado como um novo botão, ou mesmo tela de formulário genércio que pode ser muitas vezes reaproveitados no mesmo sistema, ou melhor ser utilizado como base para novos sistemas reduzindo o tempo gasto no desenvolvimento...
Obs.: o OpenLaszlo disponibiliza um conjunto muito grande de classes, tanto de componentes quanto de funcionalidades prontas para uso, porém em se tratando de interface para as quais estamos acostumados, lembrando o genero de interface de aplicações desktop notamos que os componentes disponibilizados pelo OpenLaszlo são genericos, tem como utiliza-los para sistemas simples, mas quando formos trabalhar com aplicações de verdade iremos nos deparar com a necessidade de desenvolver o nosso proprio conjunto de componentes padrão que usamos em aplicações, como por exemplo um campo com formatação de texto, numério, ou mesmo um campo de CPF com validação do CPF digitado... com isso fica uma dica, avalie e liste os componentes que normalmente se utiliza e gaste um tempo desenvolvendo o seu próprio conjunto de componentes visando a reusabilidade para reduzir o tempo gasto futuramente, tornando a montagem da interface como "brincar de lego", declarar as tags das classes dos componentes, ajustar e pronto temos uma nova interface.
Classe
[link: guia de referência]
[link: documentação]
Herança
Outro ponto importante no OpenLaszlo é o fato de suportar herança isso ajuda muito, digamos que você desenvolva seus componentes genéricos iniciais, mas futuramente em um caso de uso, existe a necessidade de um componente mais especializado, não tem problema basta herdar a sua classe existente e codificar as especializações para o novo componente
*** Exemplo *** [link]
O problema: famosa repetição de código
A solução: definir uma classe e reutilizar
Herança: reusabilidade e especialiação
ver na documentação oficial:
capítulo 25 - classes
capítulo 30 - extendendo classes
nesse post o foco são as classes, o OpenLaszlo te possibilita organizar a sua aplicação em classes aumentando ao máximo a reusabilidade de código, sendo uma classe alguma funcionalidade de processamento, ou então uma classe que represente um componente visual costumizado como um novo botão, ou mesmo tela de formulário genércio que pode ser muitas vezes reaproveitados no mesmo sistema, ou melhor ser utilizado como base para novos sistemas reduzindo o tempo gasto no desenvolvimento...
Obs.: o OpenLaszlo disponibiliza um conjunto muito grande de classes, tanto de componentes quanto de funcionalidades prontas para uso, porém em se tratando de interface para as quais estamos acostumados, lembrando o genero de interface de aplicações desktop notamos que os componentes disponibilizados pelo OpenLaszlo são genericos, tem como utiliza-los para sistemas simples, mas quando formos trabalhar com aplicações de verdade iremos nos deparar com a necessidade de desenvolver o nosso proprio conjunto de componentes padrão que usamos em aplicações, como por exemplo um campo com formatação de texto, numério, ou mesmo um campo de CPF com validação do CPF digitado... com isso fica uma dica, avalie e liste os componentes que normalmente se utiliza e gaste um tempo desenvolvendo o seu próprio conjunto de componentes visando a reusabilidade para reduzir o tempo gasto futuramente, tornando a montagem da interface como "brincar de lego", declarar as tags das classes dos componentes, ajustar e pronto temos uma nova interface.
Classe
[link: guia de referência]
[link: documentação]
Herança
Outro ponto importante no OpenLaszlo é o fato de suportar herança isso ajuda muito, digamos que você desenvolva seus componentes genéricos iniciais, mas futuramente em um caso de uso, existe a necessidade de um componente mais especializado, não tem problema basta herdar a sua classe existente e codificar as especializações para o novo componente
O problema: famosa repetição de código
<canvas width="200">
<simplelayout spacing="5"/>
<view height="100" width="100" bgcolor="red"/>
<view height="100" width="100" bgcolor="red"/>
<view height="100" width="100" bgcolor="red"/>
</canvas>A solução: definir uma classe e reutilizar
<canvas width="200">
<simplelayout spacing="5"/>
<class name="box" height="100" width="100" bgcolor="red"/>
<box/>
<box/>
<box/>
</canvas>Herança: reusabilidade e especialiação
<canvas width="200">
<simplelayout spacing="5"/>
<class name="box" height="100" width="100" bgcolor="red"/>
<class name="borderedbox" extends="box">
<view bgcolor="yellow"
x="3" y="3"
width="${parent.width-6}"
height="${parent.height-6}"/>
</class>
<borderedbox/>
<borderedbox/>
<borderedbox/>
</canvas>ver na documentação oficial:
capítulo 25 - classes
capítulo 30 - extendendo classes
OpenLaszlo: como intergrar em um HTML ?
outra duvida que vejo o pessoal um pouco perdido é como integrar o OpenLaszlo com o HTML, sendo este gerado por um .jsp, .asp, .php ou qq outra tecnologia web...
lembrando que o OpenLaszlo na versão 3.x ele disponibiliza 2 formas de publicar uma aplicação desenvolvida com o OpenLaszlo:
- Proxied : a qual utiliza um suporte no server-side de libs e java
- SOLO : essa é similar, ou até digamos que a mesma modalidade utilizada pelo Flex, no qual você irá gerar um .SWF da aplicação e disponibilizar em qualquer servidor web de qualquer tecnologia de sua preferência...
* agora como fazer para integrar?
existem 2 formas de fazer isso, uma é utilizando a tag para integrar um .swf em um HTML, como no exemplo a seguir:
ou então usando o suporte javascript da plataforma OpenLaszlo que irá gerar isso por trás e exibir sua aplicação dentro de um HTML, onde é necessário incluir o javascript:
e no local onde for exibir a aplicação inserir o respectivo script:
outras informações podem ser vistas nesse [link]
ver capítulo 32 da documentação oficial: Integração com o Browser
lembrando que o OpenLaszlo na versão 3.x ele disponibiliza 2 formas de publicar uma aplicação desenvolvida com o OpenLaszlo:
- Proxied : a qual utiliza um suporte no server-side de libs e java
- SOLO : essa é similar, ou até digamos que a mesma modalidade utilizada pelo Flex, no qual você irá gerar um .SWF da aplicação e disponibilizar em qualquer servidor web de qualquer tecnologia de sua preferência...
* agora como fazer para integrar?
existem 2 formas de fazer isso, uma é utilizando a tag para integrar um .swf em um HTML, como no exemplo a seguir:
<object type="application/x-shockwave-flash"
data="suaAplicacao.lzx?lzt=swf&debug=false&lzr=swf7"
width="800" height="100%">
<param name="movie" value="suaAplicacao.lzx?lzt=swf&debug=false&lzr=swf7" />
<param name="quality" value="high" />
<param name="scale" value="noscale" />
<param name="salign" value="LT" />
<param name="menu" value="false" />
</object>
ou então usando o suporte javascript da plataforma OpenLaszlo que irá gerar isso por trás e exibir sua aplicação dentro de um HTML, onde é necessário incluir o javascript:
<script src="/NomeAplicacao/lps/includes/embed.js" type="text/javascript"></script>e no local onde for exibir a aplicação inserir o respectivo script:
<script type="text/javascript">
lzEmbed({url: 'suaAplicacao.lzx?lzt=swf&debug=false&lzr=swf7', bgcolor: '#ffffff', width: '800', height: '100%', id: 'lzapp', accessible: 'false'});
</script>outras informações podem ser vistas nesse [link]
ver capítulo 32 da documentação oficial: Integração com o Browser
OpenLaszlo: sessionrpc
Voltando ao assunto de sessões com o OpenLaszlo, uma funcionalidade legal para trabalhar com sessões que o OpenLaszlo disponibiliza é a tag sessionrpc
Obs.: porém esta é relacionado a um suporte java no lado do servidor, pelo menos em suma pelo que compreendi, de acordo com o especificado no guia de referência da documentação oficial do OpenLaszlo [link: sessionrpc]
Exemplo: [link]
Código fonte: [link]
Obs.: porém esta é relacionado a um suporte java no lado do servidor, pelo menos em suma pelo que compreendi, de acordo com o especificado no guia de referência da documentação oficial do OpenLaszlo [link: sessionrpc]
Exemplo: [link]
Código fonte: [link]
terça-feira, 13 de fevereiro de 2007
OpenLaszlo: uma aplicação de e-learning
navegando no forum oficial do OpenLaszlo vi uma aplicação muito interessante
feita com Openlaszlo de ensino...
segue o [link]
post no forum do OpenLaszlo [link], outras implementações feitas pela mesma empresa [link]
Obs.: grupo de designers Chineses
agora uma aplicação que eles fizeram de exemplo na modalidade que vem sendo debatida nas web o chamado Webtop [link], minha opinião sobre esta, ficou muito impressionante o resultado da aplicação...
outras aplicações feitas com OpenLaszlo:
- no forum [link]
- no wiki [link]
feita com Openlaszlo de ensino...
segue o [link]
post no forum do OpenLaszlo [link], outras implementações feitas pela mesma empresa [link]
Obs.: grupo de designers Chineses
agora uma aplicação que eles fizeram de exemplo na modalidade que vem sendo debatida nas web o chamado Webtop [link], minha opinião sobre esta, ficou muito impressionante o resultado da aplicação...
outras aplicações feitas com OpenLaszlo:
- no forum [link]
- no wiki [link]
OpenLaszlo 4: Laszlo Explorer em HTML
OpenLaszlo e Flex não são realmente comparáveis...
Este post foi baseado no post: OpenLaszloNaut - OpenLaszlo and Flex are not really comparable
de um grupo de usuário de OpenLaszlo da Alemanha
É impressionante ver a quantidade de pessoas comparando OpenLaszlo com o Flex.
Sim realmente o OpenLaszlo compila o .lzx para um bytecode do Flash o SWF, assim como o Flex faz também, ambas as tecnologias utilizam uma programação baseada em tags como em um formato de arquivo XML.
Pode-se observar similiridades nos conceitos tecnicos entre ambas as tecnologias... o conceito tecnico do Laszlo Presentation Server foi copiado pela Macromedia quando les construiram o Flex Presentations Server.
Muitas pessoas não sabem ou simplesmente figem não ver o fato: a versão 1.0 do Laszlo Presentation Server foi disponibilizada em Janeiro de 2003 ( aqui um link do Apple Developers Connection anunciando a liberação da versão 1.0 ), enquanto o Flex Presentation Server foi lançado em Março de 2004, ou seja, um ano depois( o anuncio do lançamento do Flex pode ser encontrado no internet.com ). A Macromedia não teve nem o cuidado de utilizar um nome diferente no seu produto, que também utilizaram o "presentation server".
Isto não é sobre Flash...
O OpenLaszlo utiliza o plugin do Flash, porém somente foi utilizado por que não foi encontrado outra tecnologia baseada em browser que possibilitasse criar a experiência de interface para usuário que os criados do OpenLaszlo procuravam por volta do ano de 2001. Mas nunca foi ideia de utilizar somente o Flash. O desenvolvimento da experiência de usuário marcado com uma experiência cinemática de interface para o usuário pelo Laszlo é possível independentemente do runtime que o desenvolvedor utilizar. Com a versão OpenLaszlo 4.0 o sonho da Laszlo Systems irá se tornar realidade agora. Um peso enorme foi retinado dos ombros dos desenvolvedores graças ao OpenLaszlo: nos não precisamos mais gastar um tempo enorme com programação de script e funcionalidades visuais para o browser, agora temos muito mais tempo para focar em
funcionalidades para os sistemas desenvolvidos e uma melhor qualidade e experiência de uso para atender as necessidades dos usuários. Com isso agora os desenvolvedores
poderão implementar o que os designers ou os arquitetos de interface proporem, não pensando em usar Flash ou Ajax, mas qualquer nova tecnologia baseada em browser que possa surgir no futuro.

A versão 4 do OpenLaszlo oferece um suporte para multiplos runtimes
Com isso o OpenLazlo versus Flex abre uma grande vantagem, pois agora você pode gerar a saída que desejar SWF ou DHTML+AJAX, porém o Flex foi projetado para gerar saída Flash 9 e assim como no post do blog no qual esse foi baseado, acredito que o Flex continuará apenas com suporte para saída SWF...
Observação de algo que penso: sim sim o Flex possui uma vantagem que para mim é única mas sem isso prefiro muito mais o OpenLaszlo, é o chamado Flex Builder, ferramenta RAD... em outras palavras quando surgir uma ferramenta RAD de mesmo nível que o Flex Builder; bom então deixo um conselho... esqueça o Flex e invista pesado no OpenLaszlo... ou caso queira comece desde agora.
Algumas considerações sobre o Flex [link]
de um grupo de usuário de OpenLaszlo da Alemanha
É impressionante ver a quantidade de pessoas comparando OpenLaszlo com o Flex.
Sim realmente o OpenLaszlo compila o .lzx para um bytecode do Flash o SWF, assim como o Flex faz também, ambas as tecnologias utilizam uma programação baseada em tags como em um formato de arquivo XML.
Pode-se observar similiridades nos conceitos tecnicos entre ambas as tecnologias... o conceito tecnico do Laszlo Presentation Server foi copiado pela Macromedia quando les construiram o Flex Presentations Server.
Muitas pessoas não sabem ou simplesmente figem não ver o fato: a versão 1.0 do Laszlo Presentation Server foi disponibilizada em Janeiro de 2003 ( aqui um link do Apple Developers Connection anunciando a liberação da versão 1.0 ), enquanto o Flex Presentation Server foi lançado em Março de 2004, ou seja, um ano depois( o anuncio do lançamento do Flex pode ser encontrado no internet.com ). A Macromedia não teve nem o cuidado de utilizar um nome diferente no seu produto, que também utilizaram o "presentation server".
Isto não é sobre Flash...
O OpenLaszlo utiliza o plugin do Flash, porém somente foi utilizado por que não foi encontrado outra tecnologia baseada em browser que possibilitasse criar a experiência de interface para usuário que os criados do OpenLaszlo procuravam por volta do ano de 2001. Mas nunca foi ideia de utilizar somente o Flash. O desenvolvimento da experiência de usuário marcado com uma experiência cinemática de interface para o usuário pelo Laszlo é possível independentemente do runtime que o desenvolvedor utilizar. Com a versão OpenLaszlo 4.0 o sonho da Laszlo Systems irá se tornar realidade agora. Um peso enorme foi retinado dos ombros dos desenvolvedores graças ao OpenLaszlo: nos não precisamos mais gastar um tempo enorme com programação de script e funcionalidades visuais para o browser, agora temos muito mais tempo para focar em
funcionalidades para os sistemas desenvolvidos e uma melhor qualidade e experiência de uso para atender as necessidades dos usuários. Com isso agora os desenvolvedores
poderão implementar o que os designers ou os arquitetos de interface proporem, não pensando em usar Flash ou Ajax, mas qualquer nova tecnologia baseada em browser que possa surgir no futuro.
A versão 4 do OpenLaszlo oferece um suporte para multiplos runtimes
Com isso o OpenLazlo versus Flex abre uma grande vantagem, pois agora você pode gerar a saída que desejar SWF ou DHTML+AJAX, porém o Flex foi projetado para gerar saída Flash 9 e assim como no post do blog no qual esse foi baseado, acredito que o Flex continuará apenas com suporte para saída SWF...
Observação de algo que penso: sim sim o Flex possui uma vantagem que para mim é única mas sem isso prefiro muito mais o OpenLaszlo, é o chamado Flex Builder, ferramenta RAD... em outras palavras quando surgir uma ferramenta RAD de mesmo nível que o Flex Builder; bom então deixo um conselho... esqueça o Flex e invista pesado no OpenLaszlo... ou caso queira comece desde agora.
Algumas considerações sobre o Flex [link]
sexta-feira, 9 de fevereiro de 2007
OpenLaszlo: videos YouTube
opa algo legal feito por Don Hopkins foi um exemplo de como pelo OpenLaszlo acessar e assistir os vídeos do YouTube, [link] do post sobre o assunto...
Exemplo de como assistir vídeos do YouTube pelo OpenLaszlo
respectivos códigos fontes desse exemplo:
- youtube.lzx
- youtubeplayer.lzx
- outros fontes para poder compilar
Exemplo de como assistir vídeos do YouTube pelo OpenLaszlo
respectivos códigos fontes desse exemplo:
- youtube.lzx
- youtubeplayer.lzx
- outros fontes para poder compilar
OpenLaszlo: editando .lzx
Como trabalhar para editar o fonte .lzx do OpenLaszlo?
bom não existe apenas o IDE4Laszlo, como muitos o conhecem e agora que o projeto foi arquivado é bom conhecer outras alternativas de edição do fonte...
na documentação do OpenLaszlo dispõem algumas dicas de como trabalhar...
outro plugin do Eclipse que pode ser utilizado é o XMLBuddy, onde na documentação é ensinado como configurar ele para trabalhar com os .lzx
veja o [link] da documentação sobre esse assunto
bom não existe apenas o IDE4Laszlo, como muitos o conhecem e agora que o projeto foi arquivado é bom conhecer outras alternativas de edição do fonte...
na documentação do OpenLaszlo dispõem algumas dicas de como trabalhar...
outro plugin do Eclipse que pode ser utilizado é o XMLBuddy, onde na documentação é ensinado como configurar ele para trabalhar com os .lzx
veja o [link] da documentação sobre esse assunto
OpenLaszlo: Upload
Como algumas vezes já vi um pessoal questionando...
"Como fazer um Upload pelo Openlaszlo...?"
navegando pela internet encontrei um exemplo e código sobre essa funcionalidade, em um outro blog na internet de uma pessoa que também está usando o OpenLaszlo...
Sebastian Wagner Blog
como é informado no blog dele, é necessário no mínimo o Flash 8 para poder utilizar essa funcionalidade, onde no blog ele disponibiliza o exemplo em funcionamento da funcionalidade... porém o upload não irá ocorrer pois essa funcionalidade não está ativa no servidor, com isso gera o erro onHTTPError invoked: 404
ele também disponibiliza um zip com os fontes dessa funcionalidade para [download]
"Como fazer um Upload pelo Openlaszlo...?"
navegando pela internet encontrei um exemplo e código sobre essa funcionalidade, em um outro blog na internet de uma pessoa que também está usando o OpenLaszlo...
Sebastian Wagner Blog
como é informado no blog dele, é necessário no mínimo o Flash 8 para poder utilizar essa funcionalidade, onde no blog ele disponibiliza o exemplo em funcionamento da funcionalidade... porém o upload não irá ocorrer pois essa funcionalidade não está ativa no servidor, com isso gera o erro onHTTPError invoked: 404
ele também disponibiliza um zip com os fontes dessa funcionalidade para [download]
OpenLaszlo: OL4 projeto "Legals"
Essa é a próxima versão do OpenLaszlo, atualmente em Beta 1( digamos que atrasado pelo cronograma ) pelo qual atualmente já deveria estar liberado o Beta 2 da versão 4
digamos que um dos culpados pelo eventual atraso é o IE7, como o novo OL4 agora também disponibiliza a saída para DHTML + AJAX( ou seja, javascript ) e como visto e verificado pela maioria dos desenvolvedores de aplicações, nos deparamos com a desagradavel surpresa do IE7 quando ao seu suporte e execução do javascript, com isso até compatibilizar a saida para o IE7 também acabou acarretando um atraso para a versão final de produção da nova versão do OpenLaszlo...
bom com o OL4 ele passará a suportar uma nova filosofia:
um fonte, qualquer saída

Obs.: segundo anunciado pela OpenLaszlo sobre o OL4 está previsto para final Março desse ano(2007) a liberação da versão final do OL4, outras informações no FAQ do OL4
digamos que um dos culpados pelo eventual atraso é o IE7, como o novo OL4 agora também disponibiliza a saída para DHTML + AJAX( ou seja, javascript ) e como visto e verificado pela maioria dos desenvolvedores de aplicações, nos deparamos com a desagradavel surpresa do IE7 quando ao seu suporte e execução do javascript, com isso até compatibilizar a saida para o IE7 também acabou acarretando um atraso para a versão final de produção da nova versão do OpenLaszlo...
bom com o OL4 ele passará a suportar uma nova filosofia:
Obs.: segundo anunciado pela OpenLaszlo sobre o OL4 está previsto para final Março desse ano(2007) a liberação da versão final do OL4, outras informações no FAQ do OL4
OpenLaszlo: plugin IDE4Laszlo arquivado
inicio desse ano muitas pessoas que foram iniciar o uso do OpenLaszlo ao irem verificar o IDE4Laszlo, plugin do Eclipse para auxiliar no desenvolvimento, se depararam com a notícia de que o projeto foi arquivado pelo Eclipse... mas o que aconteceu?
bom o projeto tem ciclos de desenvolvimento e desde o ano passado a equipe que mantinha o plugin o deixou de lado devido ao cronograma para o OpenLaszlo 4, o qual a equipe da Laszlo Systems está totalmente centrada para o desenvolvimento...
quem quizer saber mais sobre o assunto, acesse esse [link] para maiores informações
bom o projeto tem ciclos de desenvolvimento e desde o ano passado a equipe que mantinha o plugin o deixou de lado devido ao cronograma para o OpenLaszlo 4, o qual a equipe da Laszlo Systems está totalmente centrada para o desenvolvimento...
quem quizer saber mais sobre o assunto, acesse esse [link] para maiores informações
Game: Supreme Commander
a muito tempo atras tinha um jogo de estratégia de PC que eu gostava muito onde as batalhas eram muito legais, boa jogabilidade, boas unidades, um ótimo jogo...
essa semana procurando informações sobre o jogo: Total Annihilation até descobri que existe uma versão brasileira desse jogo atualmente que se encontra na 3ª versão chamado TotalaBR, então procurando videos no YouTube de game play do jogo
acabei vendo um tal de Supreme Commander, onde foi referido como a nova versão daquele estilo de game de estratégia...
uma versão Demo e a Beta estão na internet... a versão demo pode ser encontrada no site Oficial do game e a beta é possível encontra-la em .torrent [link]
Vídeo de abertura do game:
essa semana procurando informações sobre o jogo: Total Annihilation até descobri que existe uma versão brasileira desse jogo atualmente que se encontra na 3ª versão chamado TotalaBR, então procurando videos no YouTube de game play do jogo
acabei vendo um tal de Supreme Commander, onde foi referido como a nova versão daquele estilo de game de estratégia...
uma versão Demo e a Beta estão na internet... a versão demo pode ser encontrada no site Oficial do game e a beta é possível encontra-la em .torrent [link]
terça-feira, 6 de fevereiro de 2007
OpenLaszlo: um leitor de RSS 2.0 simples
um exemplo simples de como criar um leitor de RSS pelo OpenLaszlo:
<canvas>
<dataset name="dset" request="true" src="http://rss.terra.com.br/0,,EI4795,00.xml"/>
<simplelayout axis="y" spacing="5"/>
<view datapath="dset:/rss/channel/item">
<simplelayout axis="x" spacing="5"/>
<text width="250" datapath="title/text()"/>
<text datapath="description/text()"/>
<text datapath="pubDate/text()"/>
</view>
</canvas>
OpenLaszlo: CRUD
Outro recurso muito utilizado em aplicações são as operações CRUD:
C - Criar
R - Recuperar, listar
U - Atualizar
D - Apagar, deletar
como em uma aplicação em OpenLaszlo temos uma aplicação com 2 lados, o client-side que é onde está sendo executado a interface da aplicação, mais especificamente na máquina do usuário e o server-side que é onde está a lógica de negócio da aplicação, ou seja, esta parte da aplicação está em um servidor web na internet, ou na intranet de algum ambiente de rede...
para termos essas funcionalidades CRUD em uma aplicação RIA como o OpenLaszlo precisamos ter: os controles na interface, e os respectivos códigos de execução nos códigos da aplicação no lado do servidor, sendo que no lado do servidor podemos implementar essas utilidades usando acesso ao banco comunicando via SQLs ou utilizando algum framework como o Hiberante para facilitar o desenvolvimento...
no capítulo 35 item 7 da documentação oficial do OpenLaszlo temos um exemplo simples de como construir essa funcionalidade CRUD em uma aplicação web com interface OpenLaszlo, no qual é exemplificado através de um .jsp e de um .lzx que seria a interface em execução na máquina cliente: Updating, Deleting, and Inserting Data
C - Criar
R - Recuperar, listar
U - Atualizar
D - Apagar, deletar
como em uma aplicação em OpenLaszlo temos uma aplicação com 2 lados, o client-side que é onde está sendo executado a interface da aplicação, mais especificamente na máquina do usuário e o server-side que é onde está a lógica de negócio da aplicação, ou seja, esta parte da aplicação está em um servidor web na internet, ou na intranet de algum ambiente de rede...
para termos essas funcionalidades CRUD em uma aplicação RIA como o OpenLaszlo precisamos ter: os controles na interface, e os respectivos códigos de execução nos códigos da aplicação no lado do servidor, sendo que no lado do servidor podemos implementar essas utilidades usando acesso ao banco comunicando via SQLs ou utilizando algum framework como o Hiberante para facilitar o desenvolvimento...
no capítulo 35 item 7 da documentação oficial do OpenLaszlo temos um exemplo simples de como construir essa funcionalidade CRUD em uma aplicação web com interface OpenLaszlo, no qual é exemplificado através de um .jsp e de um .lzx que seria a interface em execução na máquina cliente: Updating, Deleting, and Inserting Data
OpenLaszlo: trabalhando com parâmetros
O OpenLaszlo possibilita uma boa flexibilidade na hora de determinar os parâmetros que deverão ser enviados para o servidor, porém para isso é necessário utilizar um dataset para poder enviar os dados para o servidor... neste dataset para onde será enviado os dados este pode ser um servidor de qualquer tecnologia web, java, como jsf, jsf, ou algum framework java para web, ou ainda um servidor .Net, PHP entre outros servidores, bastando definir o atributo src do dataset para o respectivo endereço URL para onde serão enviados os respectivos atributos...
digamos que no seu fonte OpenLaszlo para facilitar você crie um método para gerenciar o envio dos dados para o servidor, e dentro desse método você utilize a classe LzParam( aconselho o uso dessa classe ) termiamos no fonte .lzx algo como o respectivo código:
com isso nesse formado é possível uma maior flexibilidade e controle dos parâmetros que serão enviados para um respectivo servidor...
digamos que no seu fonte OpenLaszlo para facilitar você crie um método para gerenciar o envio dos dados para o servidor, e dentro desse método você utilize a classe LzParam( aconselho o uso dessa classe ) termiamos no fonte .lzx algo como o respectivo código:
...
<dataset name="ds" querytype="post" request="false" proxied="false" type="http"/>
...
<method name="enviarDados">
<![CDATA[
// instancia um objeto 'LzParam' para envio dos dados por parametro...
var param = new LzParam();
// adiciona como parametro o objeto retirado do dataset temporário...
param.addValue("param1", "valor1", true);
param.addValue("param2", "valor2", true);
// recuperando o dataset de envio de dados para o servidor
var ds = canvas.datasets[ 'ds' ];
// define a ação que irá executar
ds.setSrc( "http://www.dominio.end/app/processa.jsp" );
// seta os parametros a serem enviados para o servidor
ds.setQueryString( param );
// realiza a requisição
ds.doRequest();
]]>
</method>
com isso nesse formado é possível uma maior flexibilidade e controle dos parâmetros que serão enviados para um respectivo servidor...
sábado, 3 de fevereiro de 2007
OpenLaszlo: dataset interno em uma classe
Algo útil quando trabalhamos com definições de classes é utilizar os dataset's internos nas classes com isso ganhamos certos benefícios em termos de organização e manutenção de código...
mas como fazer para utilizar dataset's internos na classe, sendo que quando defino o dataset na classe ao tentar utilizar normalmente deparo com o erro me informando que não encontrou o dataset de respectivo nome informado... como no caso:
nesse formato vai informar que não encontrou o dataset com o respectivo nome informado, então como fazer para utilizar o dataset interno da classe? bom nesse exemplo acima falta apenas um pequeno detalhe para então funcionar:
agora sim esse é o formato correto para indicar que o dataset é interno a classe em questão =]
mas como fazer para utilizar dataset's internos na classe, sendo que quando defino o dataset na classe ao tentar utilizar normalmente deparo com o erro me informando que não encontrou o dataset de respectivo nome informado... como no caso:
...
<class name="MyClass">
<dataset name="dsIn">
<tag>valor</tag>
</dataset>
<text datapath="dsIn:/tag/text()" />
</class>
...nesse formato vai informar que não encontrou o dataset com o respectivo nome informado, então como fazer para utilizar o dataset interno da classe? bom nesse exemplo acima falta apenas um pequeno detalhe para então funcionar:
...
<class name="MyClass">
<dataset name="dsIn">
<tag>valor</tag>
</dataset>
<text datapath="local:classroot.dsIn:/tag/text()" />
</class>
...agora sim esse é o formato correto para indicar que o dataset é interno a classe em questão =]
OpenLaszlo: Sessões HTTP
Em aplicações web normalmente é utilizado a sessão para manter algumas informações da aplicação ou mesmo do usuário logado, mas utilizando uma interface Openlaszlo... como fazer para acessar a sessão da aplicação?
antes que digam que não é possível e que não tem como, sim tem como trabalhar com sessão Http porém o modo de trabalhar é um pouco diferente inicialmente do modo geral que as pessoas estão acostumadas a fazer em aplicações web sem utilizar alguma tecnologia RIA como no caso de uma aplicação web com interface OpenLaszlo...
é preciso lembrar que o acesso a sessão é feito no server-side e não no client-side, lembrando que o client-side é a máquina do usuário que está acessando a aplicação e é ali que está em execução a interface da aplicação, então para acessar a sessão para setar ou recuperar algum valor deve ser feito no server-side, em outras palavras, parte da aplicação que está em execução num servidor web e ali sim realizar as manipulações necessárias de sessão...
no forum oficial do OpenLaszlo esse assunto também foi abordado no respectivo [link] onde também foi disponibilizado um exemplo para o respectivo caso [download do exemplo]
na documentação oficial do OpenLaszlo também possui um capítulo que aborda o respectivo assunto Chapter 38. Cookies and Sessions - [link]
antes que digam que não é possível e que não tem como, sim tem como trabalhar com sessão Http porém o modo de trabalhar é um pouco diferente inicialmente do modo geral que as pessoas estão acostumadas a fazer em aplicações web sem utilizar alguma tecnologia RIA como no caso de uma aplicação web com interface OpenLaszlo...
é preciso lembrar que o acesso a sessão é feito no server-side e não no client-side, lembrando que o client-side é a máquina do usuário que está acessando a aplicação e é ali que está em execução a interface da aplicação, então para acessar a sessão para setar ou recuperar algum valor deve ser feito no server-side, em outras palavras, parte da aplicação que está em execução num servidor web e ali sim realizar as manipulações necessárias de sessão...
no forum oficial do OpenLaszlo esse assunto também foi abordado no respectivo [link] onde também foi disponibilizado um exemplo para o respectivo caso [download do exemplo]
na documentação oficial do OpenLaszlo também possui um capítulo que aborda o respectivo assunto Chapter 38. Cookies and Sessions - [link]
OpenLaszlo: DataGrid + Drag and Drop
Um componente normalmente bem utilizado em aplicações são os Datagrid agora algo interessante, um datagrid onde você possa arrastar os componentes usando o estilo drag and drop, bom se um dia você quiz um componente assim...
alguem também um dia quiz e acabou fazendo e agora está disponível para uso =] mais um componente muito interessante da comunidade japonesa de OpenLaszlo veja um exemplo em funcionamento [link]
autor do componente submeteu um post sobre o assunto no forum oficial do OpenLaszlo no respectivo [link]
alguem também um dia quiz e acabou fazendo e agora está disponível para uso =] mais um componente muito interessante da comunidade japonesa de OpenLaszlo veja um exemplo em funcionamento [link]
autor do componente submeteu um post sobre o assunto no forum oficial do OpenLaszlo no respectivo [link]
Assinar:
Postagens (Atom)