Centura

Autor: Sérgio Luiz F. da Rosa

INTRODUÇÃO

Centura é o nome da nova ferramenta RAD da Centura Software Corporation, antigamente conhecida como Gupta. Dito em poucas palavras, ele pode ser entendido como sendo o SQLWindows para 32 bits, embora haja muito mais nele do que uma simples mudança de 16 para 32 bits.

Uma pergunta que surge com frequência, é o porque deste nome, se o produto é na verdade uma evolução do SQLWindows. Na verdade a Gupta Corp. trocou o seu nome para Centura Software Corp. na época do lançamento do SQLWindows 5.0.2, no segundo trimestre de 1996, e o lançamento do Centura, com toda uma nova orientação estratégica para o produto, deve ter parecido uma boa razão para se trocar o nome da ferramenta também. E enfatizamos novamente que não se trata de uma simples troca de nome, já que o SQLWindows continua sendo comercializado e existem planos de lançamento de uma versão 6 para o produto, cujo nome código seria Ciclone.

O Centura é na verdade uma família de produtos que inclui:

  • Centura Developer Extensions Kit (CDK) que permite ao programador customizar o ambiente de desenvolvimento criando ferramentas add-on e QuickObjects.
  • Centura Ranger, um software que permite fazer replicação de dados para o SQLBase 6.1
  • Centura Team Developer, a ferramenta RAD propriamente dita

Neste artigo, concentrar-nos-emos no Centura Team Developer, e ao final faremos uma breve descrição do que outros produtos da linha Centura se propõem a fazer.

CENTURA TEAM DEVELOPER

O Centura Team Developer (CTD) é ele próprio composto de vários componentes:

  • Centura Builder - A ferramenta de programação propriamente dita, com seu ambiente integrado de desenvolvimento.
  • Team Object Manager - Aplicativo para gerenciar o desenvolvimento de projetos em equipe. Substitui o Team Windows do SQLWindows.
  • Database Explorer - Ferramenta para consulta a bases de dados que vem integrada ao Centura Builder.
  • Object Compiler - Converte o código SAL do Centura para C.

Vamos olhar mais de perto cada um desses componentes:

Centura Builder

Neste novo ambiente de desenvolvimento o ponto mais notável para quem está acostumado com o SQLWindows é a mudança na interface. O ambiente ficou com a aparência do Explorer do Windows 95, tendo um painel esquerdo onde os componentes da aplicação aparecem em uma estrutura de árvore hierárquica, como se fossem folders, e um painel direito onde o conteúdo desses componentes pode ser visualizado, alterado ou criado. Outras mudanças importantes na aparência são as barras de ferramentas configuráveis, e que podem também ser deixadas "flutuantes" na área de trabalho. O assistente de código também tem a sua localização configurável.

As outras mudanças na ferramenta são menos visíveis. Os QuickObjects foram reescritos e a documentação afirma que seu desempenho foi grandemente melhorado, e em adição a isso, foram criados alguns novos, como por exemplo controles do tipo "tab". Mas os novos QuickObjects que despertarão mais interesse são os controles voltados para a Internet. Existem agora controles para FTP, HTTP e HTML, o que permite, por exemplo, que o desenvolvedor integre sua aplicação com sites FTP, ou mesmo crie um form que seja um browser Web.

Quanto à linguagem utilizada, o Centura utiliza a SAL, que é a mesma linguagem utilizada pelo SQLWindows. A Centura afirma que nada foi mudado na linguagem e que a compatibilidade com o SQLWindows é total. Em testes informais realizados na Celepar, isto pode ser comprovado: aplicações escritas em SQLWindows foram abertas e recompiladas dentro do Centura e rodaram normalmente sem necessidade de nenhuma alteração.

Uma nova característica é o Browser de Classes, que permite a fácil visualização da estrutura de classes em projetos que utilizem orientação a objetos.

Outra característica importante é que aplicações desenvolvidas em Centura sobre sistemas operacionais 32 bits (Windows 95 e Windows NT), poderão ser executadas em sistemas operacionais de 16 bits (Windows 3.1 e Windows for Workgroups 3.11). Isto somente não poderá ser feito se a aplicação utilizar 3-tier com Tuxedo ou CICS, e QuickObjects para email e acesso a web.

Segundo a documentação existente sobre o produto, além dos QuickObjects, os routers de acesso a bancos de dados também foram todos reescritos, visando a melhoria do desempenho. Nos testes que fizemos com a ferramenta não foi possível sentir melhores tempos de resposta nas aplicações que acessam dados, mas deve ser dito que não foram testes feitos com essa intenção, e que as condições do nosso ambiente tornam muito difícil uma avaliação controlada desse item em particular.

Team Object Manager

Para gerenciar o trabalho de equipes em projetos de maior porte, o Team Object Manager (TOM) substitui o Team Windows. O TOM é baseado no conceito de repositório compartilhado de objetos, no qual ficam armazenados os componentes de um projeto. É uma ferramenta poderosa que tem entre as suas principais caraterísticas o gerenciamento do código fonte (através dos processos de check in e check out no repositório), controle de versões, gerenciamento do ciclo de vida do projeto (via configuração dos níveis de promoção dos componentes), controle de padrões de codificação, compartilhamento de arquivos entre projetos e controle de segurança configurável a nível de projeto e de arquivo.

Os SGBD’s atualmente suportados para servirem de repositório para o TOM são: SQLBase, Oracle, MS SQLServer e Sybase.

Database Explorer

Integrada ao Centura Builder existe uma ferramenta que permite ao desenvolvedor acesso aos dados existentes em uma base sem a necessidade de sair do ambiente de programação. O Database Explorer permite visualizar dados, índices, estrutura de tabelas e também gerenciar stored procedures remotamente.

Object Compiler

Essa é uma caracteristica nova do Centura. É possível converter código escrito em SAL para a linguagem C, que então pode ser compilado usando o MS Visual C++ ou Borland C++ 4.0 para gerar DLL’s. Esse procedimento aumenta grandemente o desempenho da aplicação.

Outra opção do Object Compiler é a crição de Dynalibs, que são módulos de código pré-complicado que podem ser acesssados por outras aplicações em tempo de execução. As Dynalibs são de um formato proprietário Centura e não oferecem os mesmos ganhos de desempenho que as DLL’s, mas permitem maior modularidade na programação e não exigem um compilador C separado.

OUTROS PRODUTOS DA FAMÍLIA CENTURA

Ranger

Descrito sucintamente, o Ranger é um software cliente que permite a replicação descentralizada de bases de dados SQLBase 6.1. Ele permite que dados de uma base sejam replicados total ou parcialmente em outros servidores, que podem ou não estar em outras redes, ou mesmo em sistemas móveis. Ele implementa replicação two-way, e sua interface drag-and-drop torna muito simples a criação de esquemas de replicação. O Ranger faz parte do Centura Team Developer, mas pode ser comprado separadamente também.

Centura Developer Extensions Kit (CDK)

É o produto que permite acesso à API do próprio Centura, tornando possível a criação de QuickObjects, configuração do ambiente de desenvolvimento, ou a criação de ferramentas add-on para o ambiente. É de distribuição gratuita, a partir do site Web da Centura.

CONCLUSÃO

Além das características e produtos citados acima, podemos citar outros que não puderam ser testadas como o Centura Web Developer, para a criação de aplicações Web, e o ForeSite, que se propõe a integrar aplicações escritas em SQLWindows, Centura, Visual Basic, C++, Cobol ou Power Builder com a Internet. Entre as capacidades desse produto estaria, por exemplo, a de fazer com que uma aplicação SQLWindows que tivesse apenas controles visuais compatíveis com HTML, pudesse ser automaticamente acessada por browsers Web.

No conjunto, o Centura mostra-se como uma ferramenta sólida, principalmente no seu ambiente de desenvolvimento, que é bem projetado e produtivo, e também em suas facilidades no acesso a bancos de dados. O produto também vem crescendo na questão de migração e integração de aplicações para a Internet. Em suma, é uma ferramenta a ser seriamente avaliada por quem pretenda desenvolver aplicações que envolvam dados corporativos.