Artigos Técnicos
xDevStudio
A xDevStudio é um aplicativo gratuito que fornece uma ferramenta integrada (IDE) com utilitário para compilação, editor de código fonte, gerenciamento de projetos, help integrado e muita outras funcionalidades. Ela suporta todas as versões dos compiladores Clipper, Harbour e xHarbour e seus scripts podem criar arquivos EXE, LIB e DLL trabalhando em 16 ou 32 bits com as seguintes libs gráficas: FiveWin, MiniGUI, HwGUI, CGI e SQL.
Neste artigo, iremos destacar alguns recursos mais importantes da xDevStudio que o ajudarão a conhecer um pouco mais sobre esta ferramenta.
"Toda grande obra é fruto da obsessão de um sonhador" - Comandante Rolim Adolfo Amaro
O editor de textos embutido na xDevStudio reconhece as palavras reservadas do Clipper e exibe-as em uma coloração diferente para faciliar a leitura do código.
Além disto o seu parser interno reconhece os nomes de funções e procedures do seu fonte e exibe-os em um painel à sua direita na janela principal - com um simples clique duplo sobre o nome de uma função para que o cursor salte diretamente para a implementação da rotina escolhida.
Ao se teclar F9 para compilar o projeto não é necessário salvar obrigatóriamente todos os seus .PRG que estão sendo editados para poder conferir o resultado da linkedição. Se no momento da compilação e execução, algum .PRG ainda não estiver salvo a xDevStudio salvará o source temporariamente e irá compilar e linkar este arquivo no seu .EXE, eliminando a necessidade de dar-se um CTRL+S explícito antes da linkagem.
Desta maneira temos a oportunidade de podermos averiguar como determinada alteração no código-fonte irá se comportar.
Catálogos de Ajuda
A xDevStudio possui diversos catálogos de ajuda (HELPs) integrados dentro da sua estrutura para consulta. Basta selecionar uma palavra e teclar F1 para que ela pesquise dentro de seus manuais sobre algum tópico sobre com aquele termo.
Além deste recurso extremamente útil, ela suporta ainda a pesquisa on-line em base de dados sobre o termo selecionado, permitindo assim ao programador persquisar em grande sites sobre um detereminado assunto ou termo.
Entre os sites de pesquisa atualmente suportados temos: Google, MSDN (Microsoft) e o xHDN!
Dentre os catálogos embutidos na xDevStudio alguns se destacam por serem de extrema importância para consultas:
- Clipper - Manuais em Português e inglês
- C++ - Guia de referência
- FiveWin - Referência completa dos comandos e funções
- MiniGUI - Help da versão experimental.
Biblioteca de Templates
Através do menu EDITAR > INSERIR > TEMPLATE podemos acessar a tela de gerenciamento de templates (primeira imagem acima). O suporte à templates foi adicionado para permitir ao usuário automatizar tarefas repetitivas e podem ser configurados para inserir grandes blocos de texto que necessitem (ou não) de parâmetros.
É possível migrar os templates já existentes de outros editores de código (tal como o Med por exemplo) além do mais, o sistema de templates da xDevStudio foi desenvolvido para suportar algumas características só presentes em nossa ferramenta, tais como:
- Suporte para macros
- Suporte para comandos de movimentação do cursor
- Suporte para criação de valores randômicos para os parâmetros do seu template
Analisando os modelos de templates já inclusos é fácil montar os seus próprios visando agilizar o seu trabalho no dia-a-dia.
Heurística & Análise do seu código-fonte
Outro recurso de destaque da xDevStudio é o algoritmo interno de ser parser que analisa seu código-fonte por completo. Com isto alguns recursos fantásticos se beneficiam das informações coletadas, tais como a opção para Ir para PROCEDURE / FUNCTION. Acessível através do menu LOCALIZAR esta ferramenta permite listar todas as PROCEDURES/FUNCTIONS dentro do seu projeto - sejam elas públicas ou estáticas e ainda suporta quaisquer PSEUDO FUNCTIONS e #DEFINEs que houverem dentro do seu código.
A pesquisa é efetuada digitando-se parte do nome da rotina que se deseja localizar. Automaticamente a xDevStudio filtra todas as rotinas com nomes parecidos e lista-os para o desenvolvedor na tela. Basta um duplo clique e o cursor será posicionado na implementação da rotina escolhida.
Achou fácil? Pois saiba que via teclado existe um atalho muito mais àgil: clique sobre o nome da rotina que deseja localizar usando-se CTRL+BOTÃO ESQUERDO DO MOUSE para saltar diretamente para a implementação da rotina selecionada... simples assim!
Compilação Automatizada
A xDevStudio possui um gerenciador de projetos completo, que compila apenas os arquivos alterados em seu projeto, já inclui as libs e todas as dependencias necessárias para compilação e linkedição do mesmo. Ao compilar seu projeto a xDevStudio, a ferramenta destaca com cores diferentes as linhas que possuem erros identificados durante o processo de compilação/linkedição.
Este recurso visual auxilia em muito a fácil localização de erros no seu código e agiliam em muito o trabalho do desenvolvedor.
Outros tipos de arquivos
A xDevStudio pode abrir outros tipos de arquivos além dos tradicionais arquivos .PRG de texto puro porém, em modo somente leitura. Dentre os tipos de arquivos suportados podemos citar:
- .OBJ: Ao se abrir um arquivo com esta extensão o mesmo será descompilado e seu código em assembler (ASM) será exibido para o usuário.
- .LIB: A estrutura do arquivo .LIB será exibida para o usuário, listando todos os arquivos .OBJ que a compõe a LIB.
- .DBF: Ao se abrir um arquivo .DBF através da xDevStudio ela irá exibir uma série de guias com diversas opções úteis.
No caso de um arquivo DBF alguns recursos muito importantes surgem para facilitar a vida do desenvolvedor tais como a guia denimonada DADOS, onde o usuario poderá conferir os campos contidos no arquivo e seus respectivos valores atuais, na guia ESTRUTURA há trechos de códigos que podem ser copiados para serem adaptados ao seu source para rotinas de inclusão, alteração e consulta, pois eles contem definições de variavels e atribuição de valores com base nos dados do arquivo .DBF aberto. Por fim, é gerado também os comandos para criação da tabela com suas características iniciais caso o arquivo .DBF não exista no HD.
Scripts de Compilação
A xDevStudio possui vários scripts de compilação que fornecem internamente o suporte para que a ferramenta possa compilar e linkar usando-se as várias opções existentes de cada compilador. Dentre os scripts prontos já existentes podemos mencionar:
- Clipper com Blinker usando DBFNTX ou DBFCDX
- Harbour ou xHarbour com Borland C++ usando-se CDX ou NTX, que possibilita a criação de aplicativos .EXE, .DLL e arquivos .LIB
- Suporte para as seguintes LIBs: GTWVT, GTWVW, MiniGUI, HwGUI, FiveWin 16 e 32 bits, GCI e SQL LIB.
- Suporta compactação através do utilitário UPX de modo transparente.
- Script genérico para compilação usando-se um .BAT (para quem usa o xHarbour Comercial ou outra ferramenta não suportada diretamente pela xDevStudio)
A idéia por detrás do suporte aos scripts é simples: você informa para a xDev onde estão instalados os arquivos do seu compilador, linkeditor e de sua LIB gráfica - criando assim o que chamamos de preset de configuração.
Depois quando você criar um novo projeto, basta vincular-lo à um compilador (preset) já previamente cadastrado e evitar assim o enorme transtorno de ter que informar os PATHs para todos os aplicativos necessários para compilar o seu projeto.
Code Completation
Eis um recurso que realmente faz muita diferença: o Code Completion. Este recurso pode ser ativado via teclado com Ctrl-Space e ao pressionar este conjunto de teclas a xDev apresenta um combo com os nomes das funções, procedures, defines, pseudo functions, translates e xtranslates disponíveis em seu .PRG! Ela também pesquisa o projeto aberto (quando o PRG atual fizer parte do projeto) e exibe todas os recursos disponíveis no seu projeto.
A grande diferença e que na minha humilde opnião é a maior sacada deste recurso (presente desde a versão 0.64) deve-se ao fato de que a xDevStudio é capaz de detectar no seu projeto com qual compilador e lib gráfica você está trabalhando no momento. Deste modo se você estiver com um projeto que trabalhe em Clipper/[x]Harbour ela irá lhe mostrar *APENAS* as funções disponíveis nestes compiladores. Porém, entretanto, todavia, se você estiver usando uma lib gráfica tal como FIVEWIN a listagem de funções passará a exibir as funções e constantes disponíveis em sua LIB gráfica (obviamente quando estas informações estiverem disponíveis).
Code Parameters
Outro recurso intimamente ligado ao Code Completion e que é demasiadamente importante e útil é o do Code Parameters. Este recurso mostra, em uma janela de dica ou Tooltip, o tipo de dado dos parâmetros de uma função ou método depois que você digita o nome da função ou método e o parêntese de abertura (esquerdo). Se ele não aparecer automaticamente é só pressionar Crtl+Shift+barra de espaço. Para facilitar, o parâmetro atual aparece em negrito.
Incluir novas funções e constantes para alimentar estes 2 ultimos recursos mencionados é fácil: basta editar os arquivos texto que ficam localizados dentro da pasta API e abrir a xDev novamente para refletir as alterações feitas.
Considerações Finais
Óbviamente estes são apenas alguns dos muitos recursos inclusos na ferramenta. Se desejar conferir todo o potencial deste produto, lembramos que a xDevStudio é um aplicativo gratuito e para obter uma cópia gratuitamente basta visitar a sua página na seção de downloads deste site clicaando aqui. Para fazer um donativo ou contribuição ao produto, utilize a opção PayPal na página principal deste site. Um grande abraço, sucesso à todos e até a próxima!