2QRYR&ODULRQ1(73DUWH, 3RU-XOLR&pVDU3HGURVR Gosto de escrever sobre FRLVDV QRYDV, sobre QRYDV WHFQRORJLDV, enfrentar desafios e pesquisas sobre o assunto. Afinal, de velho, basta eu! Como assinante da Clarion Magazine, acompanho todos os artigos publicados e procuro trazer aos meus amigos desenvolvedores aquilo que julgo interessante, sempre que o artigo for disponibilizado livremente na revista. Nas linhas que se seguem está uma compilação (para usar um termo comum aos desenvolvedores) do artigo publicado em inglês no dia 17 de novembro de 2007. No sábado, 17 de novembro de 2007, a versão beta do Clarion.NET foi liberada para os participantes do programa de subscrição da Soft Velocity. Assinale esta data no seu calendário, porque ela marca o início de uma nova era. Inicialmente, alguns cuidados devem ser tomados com relação à versão beta: 3ULPHLUR: É uma versão beta e algumas coisas podem não funcionar como deveriam. 6HJXQGR: Esta versão não possui um *HUDGRU GH $SOLFDo}HV ainda, mas você pode desenvolver grandes aplicações Clarion Net, através de um assistente disponibilizado na versão beta, a partir do Clarion 6 e baseado nos dados do seu Dicionário de Dados. Mais um template. 7HUFHLUR Algumas coisas podem ser modificadas até a versão final, particularmente o assistente de geração de aplicações. Ou seja, como é uma antecipação da distribuição, está sujeita a muitas modificações e alguns erros não intencionais. Feitos estes alertas, vamos ao que interessa, explicar um pouco sobre o Clarion.Net. Como a maioria dos desenvolvedores Clarion, já faz muito tempo que aguardamos por esse produto, e durante este tempo, desenvolvemos algumas coisas no Visual Studio, 2005, passando rapidamente pelo SharpDevelop. Isto, agora vejo, foi uma idéia muito boa, pois sabemos exatamente o que esperar do Clarion.Net Antecipamos o conhecimento sobre o mundo.net e o que o Clarion irá fazer neste mundo.net (desculpem o trocadilho), mas O mundo é dos Nets. Ao abrir a nova IDE podemos ver o que poderemos fazer daqui pra frente. Aplicações Windows Forms Aplicações ASP.Net (somente na versão Enterprise) Aplicações para dispositivos móveis (Pocket Pc, Celulares, Tablet PC etc...), somente na versão Enterprise Aplicações C# Aplicações VB.Net Como foi mencionado anteriormente, o Gerador de Aplicações ainda não está pronto. E pode ser que tão logo não tenhamos um template que gerará código C# ou VB.Net. Estas linguagens são uma cortesia da IDE do Sharp Develop, no qual é baseado o Clarion.Net. Por isso conhecer este ambiente pode ser muito interessante para quem deseja trabalhar firme com o Clarion.Net.
Pense a respeito disso! Estamos falando sobre aplicações Windows usando os padrões da plataforma ASP.Net. Aplicações web com o IIS. Aplicativos para dispositivos móveis, enfim acesso completo aos recursos proporcionados pela plataforma.net. Pense sobre coisas comuns no desenvolvimento.net (quem já trabalhou com VS ou SharpDevelop), profilers, ofuscadores de código, unit testers, refactor, etc. A nova ferramenta e o novo desenvolvedor Clarion, vai ter que lidar com tudo isso. É uma nova forma de programar. Vamos reaprender. Nossas antigas experiências com Cobol, Clipper, Dataflex, Basic irão ajudar? Talvez a parte lógica, mas o Clarion.Net é um divisor de águas na forma de programar, principalmente pelo uso massivo do Net framework, uma forma nova de desenvolver rotinas. Todos os addons que o Net Framework disponibiliza constituem um mundo novo e é claro, um novo mercado para desenvolvimento de livrarias, componentes, templates, controles. Para os desenvolvedores Clarion que criam templates, é um novo mercado. Pensamos aqui na Pedroso Informática na nova versão de ferramentas como o Dot Matrix e do Dot Fiscal, que precisarão com certeza, incorporar as novas tecnologias. Tudo isso vai demandar tempo e pesquisa. Aprendizado mesmo! Entretanto, o que vimos até agora, nos enche de entusiasmo. $,'(GR&ODULRQ1HW Na área de FAQ do novo site da Soft Velocity há um esclarecimento a respeito de Clarion# e Clarion.Net, e como alguns já puderam perceber em nossas vídeo aulas sobre o Clarion 7, ambos os produtos utilizam a mesma
IDE, a qual é baseada na IDE do SharpDevelop, para a qual a Soft Velocity obteve uma licença para uso comercial. Não vamos entrar em detalhes sobre a nova IDE, recomendamos as vídeo aulas da Pedroso Informática, e para quem tem intimidade com a língua inglesa, os artigos e vídeos publicados no blog da Soft Velocity. Entretanto, gostaríamos de destacar algumas poucas e significativas diferenças na versão.net. A versão beta, liberada recentemente, inclui suporte para codificação manual para os três tipos de aplicações geradas pelo ambiente: Windows Forms, Web Forms (ASP.Net) e Compact Framework (dispositivos móveis). Observe na figura acima, os tipos de aplicações que podem ser gerados com o Clarion.Net. O padrão Windows Forms inclui: &ODVV /LEUDU\ cria uma livraria de classes, sem pontos de entrada para executáveis, recurso ideal para criar dlls do tipo WinAPI. $SOLFDo}HV&RQVROH Cria aplicações que escrevem para uma janela de comandos (como no MSDOS). Você pode interagir com uma aplicação de console, somente via teclado. :LQGRZV8VHU&RQWURO/LEUDU\ possibilita que você crie um controle do tipo janela próprio, derivado da System Windows Forms User Control. $SOLFDo}HV :LQGRZV ou Windows Applications, com pontos de inicialização para a grande maioria das aplicações Windows. Cria um executável do tipo Aplicação.Net.
Quem trabalha com o Visual Stúdio ou SharpDevelop, já pode ter uma idéia do que se pode fazer com essa nova IDE. Para o ASP.Net existem duas opções: Aplicações Web (baseadas em Web forms) e WebServices, o que realmente vem de encontro aos anseios da comunidade Clarion, facilitando muito o desenvolvimento de aplicativos que interagem com WebServices, cada vez mais utilizados no Brasil, como é o caso das Notas Fiscais Eletrônicas, Conhecimentos Eletrônicos, Processos Eletrônicos, etc... A versão beta vem com um exemplo simples que inclui um arquivo default.aspx e um arquivo global.asax, ambos com arquivos Clarion onde encontramos o code-behind (veja a documentação a respeito na ajuda do Visual Stúdio, por exemplo). Além disso, a aplicação é suprida com uma folha de estilos. A página web gerada, simplesmente mostra um Hello from Clarion. A aplicação de exemplo sobre services apresenta basicamente um framework para web services. A livraria.net suporta tanto os protocolos HTTP como SOAP. O serviço gera uma página web de teste a qual oferece algumas informações úteis sobre o formato de arquivos XML usados quando as chamadas são feitas usando os protocolos SOAP 1.1 e 1.2. Foram incluídas 3 funções simples: uma para somar dois números, uma para mostra um Hello e uma para mostrar um Hello nome, onde você passa o nome como parâmetro. Você pode testar estas funções com a página disponibilizada, usando o protocolo HTTP, o qual retornará o resultado em uma página XML simples, semelhante a:
<?xml version="1.0" encoding="utf-8"?> <string xmlns="http://tempuri.org/">hello Mario</string> Você precisará de um cliente baseado nos protocolos SOAP 1.1 e SOAP 1.2 para fazer os testes. Embora não haja um exemplo de cliente SOAP nos exemplos da versão beta, construir um cliente usando o SharpDevelop ou o Clarion.Net, é muito fácil. Nas vídeo aulas que estamos preparando sobre o assunto estaremos mostrando como é fácil fazer isto, tanto em C# como em Clarion#; A propósito, de acordo com a SoftVelocity, Clarion.Net é a IDE e Clarion# é a linguagem. A figura acima mostra a janela padrão para aplicativos móveis, baseados no Compact Framework. Na versão beta existem dois padrões: Windows CE e Pocket PC..Neste ponto não se nota nenhuma diferença no código criado para um ou para outro, mas certamente em algum momento ele muda. A versão beta é acompanhada com alguns projetos que demonstram o uso da tecnologia.net com Clarion, incluindo: $'21HW([ uma aplicação console que conecta a um data source ADO.NET; %ORE%LQDU\7R,PDJH Lê uma imagem contida em um campo BLOB TopSpeed e mostra esta imagem um controle do tipo PictureBox do.net. &)'HPR uma app Compact Framework que utiliza arquivos XML para armazenar dados.
'DWD%LQG)LOH5HFRUGV exemplo de databindings usando um arquivo TPS e o.net 2.0 BindingSource mais o controle BindingNavigator. Também mostra como fazer o binding de um controle de texto para um campo de uma estrutura record. Isso soa diferente para o desenvolvedor Clarion que não conhece o Visual Studio ou o SharpDevelop. Por isso recomendamos conhecer um pouco sobre como se programa para o ambiente.net. Na url http://www.apress.com/book/view/1893115992 você pode baixar um livro, gratuítamente, sobre o assunto, em inglês, é claro. A Pedroso Informática, estará disponibilizando algumas vídeo aulas e outros materiais sobre o assunto. 'DWD%LQG4XHXH demonstra um binding de uma queue para um controle do tipo datagrid, entre outras coisas. 'RFNLQJ:LQGRZV sabe aquelas janelas que abrem quando o foco passa para elas, e fecha quando o foco volta para outra janela? Este exemplo ensina como o seu aplicativo Clarion pode fazer uso delas. 'UDJDQG'URS,PDJH demo de uso da tecnologia clicar-arrastar-soltar com imagens. 'UDJDQG'URS7H[W demonstração da tecnologia que permite arrastar textos entre listas. )RU(DFK4XHXH aplicação console mostrando como usar a técnica FOREACH com uma queue. *ODVV%XWWRQV demonstração do uso desse novo tipo de botão. Veja a figura abaixo. /LVW&RQWURO7RWDOOLQJ7UHH manipula os cabeçalhos das colunas e executa totalizações dinâmicas em uma lista. 0','JY demo de arquivos TYPEd, onde cada instância do arquivo tem o seu próprio buffer de dados.
0L[HG/DQJXDJHV interessante exemplo que mostra como chamar códigos C# em Clarion# e como chamar códigos Clarion# em C#, usando dois projetos em uma única solução. 0\)LUVW:HE6HUYLFH execução de um web service básico. 0\)LUVW:HE6LWH uma aplicação simples do tipo WebForm/AspNet. 1HW5HPRWLQJ demonstração de uma aplicação.net de comunicação. 3HRSOH O aplicativo People, do Clarion 6 foi portado para.net. 6FUHHQ&DSWXUH Demonstração da classe System.Drawing para capturar telas. Todos estes projetos constituem objetos de estudo, e visam facilitar o aprendizado da linguagem. Oportunamente estaremos voltando ao assunto, complementando este artigo com outras novidades do Clarion.Net. Julio César Pedroso é analista/desenvolvedor e trabalha atualmente na empresa Lion Informática Ltda. É autor de vários trabalhos sobre Clarion e atualmente produz diversas vídeo aulas sobre Clarion. Programa em Clarion, Windev, e C# (usando Visual Studio 2005). Maiores informações em www.newsclarionbrasil.com.br