0 Compartilhamentos 466 Views

Judoscript: Linguagem interpretada pelo java

23 de abril de 2008

Este artigo descreve a linguagem de programação de scripts [lurl=http://www.judoscript.com]Judoscript[/url], uma linguagem interpretada que roda sobre a JVM (Java Virtual Machine).
Judoscript é uma linguagem de script poderosa, fácil, eficiente, elegante e moderna, projetada e implementada em Java puro.

Judoscript nasceu da necessidade de usar diretamente os recursos da plataforma Java de modo mais fácil e intuitivo. Seu propósito é ser uma linguagem de script mais simples e fácil de usar. As principais vantagens em usar uma outra linguagem sobre a JVM (além do Java, é claro), é ganhar em produtividade e poder de abstração.

A produtividade decorre da facilidade e poder de expressão próprios das linguagens de script e a abstração decorre de comandos, funções e bibliotecas pré-definidas implementadas nesta linguagem, permitindo escrever um código muito menor para as mesmas tarefas do que o código original em Java puro. O desempenho, no entanto, será em geral menor do que o mesmo código implementado em Java puro. Deve-se portanto pesar os prós e contras do uso dessas linguagens e utilizá-las para tarefas próprias de linguagens de script, como administração de sistemas, robôs para efetuar tarefas automáticas de administração e coleta de informações e frameworks de testes de aplicações, para citar alguns exemplos.

A linguagem sustenta-se em três pilares básicos, um “parser” ou “script-engine” poderoso, acesso ilimitado aos recursos da plataforma Java e características “WYSIWYG” (“What-You-See-Is-What-You-Get”, própria de linguagens 4-GL, onde os comandos são facilmente entendidos por humanos – “legíveis”).

Judoscript combina simplicidade e poder de expressão em um ambiente homogêneo que se destina à qualquer uso prático, como por exemplo combinar dados de diferentes fontes e formatos (para processamento e relatórios), ou implementar um ambiente de testes para a plataforma Java. Judoscript também é projetado para ser uma linguagem de scripts divertida e fácil para programação gráfica e multimídia e por isso seu desenvolvimento está sendo orientado para áreas como música, gerenciamento e manipulação de arquivos de som e java 2D/3D. Uma IDE baseada em JavaBeans para facilitar ainda mais o desenvolvimento de scripts também está sendo desenvolvida.

A linguagem segue a licensa LGPL, o que significa que tem o código fonte aberto e pode ser utilizada livremente tanto para fins pessoais ou comerciais. A filosofia da linguagem é seguir as últimas tendências da plataforma Java (por isso exige um sdk atualizado) e assim pretende se integrar de maneira fácil a qualquer projeto atual desenvolvido em Java. O princípio é simples: se algo é útil e está disponível, Judoscript o tornará mais fácil de usar.

Hoje, Java é muito mais do que uma linguagem de programação. A riqueza de sua API e os inúmeros projetos (muitos deles Open Source) tornam a linguagem repleta de funcionalidades que abrangem desde computação básica até a mais complexa necessidade de uma organização. Java tornou-se rapidamente um vasto e crescente campo de recursos prontamente disponíveis em múltiplas (senão todas) as plataformas.

Escrever código em Java de modo natural e fluente, no entanto, requer um conhecimento avançado da linguagem.

Frequentemente precisamos ajustar algo em nossos projetos, como efetuar alguma operação em todos os fontes em uma certa árvore de diretórios (package), ou limpar cestas de compras de um banco de dados de testes, ou ler um documento XML para criar um relatório em PDF.

Para tarefas que exigem ação rápida, é muito trabalhoso escrever código Java bem projetado. Ao invés, escrevemos scripts em Judoscript para tarefas repetitivas, os quais podem rodar manual ou automaticamente. Tais scripts podem ser atualizados com frequência e mais facilidade, e a performance não é um ponto crítico. O processo de escrever um script (editar e rodar) pode fazer muita diferença na produtividade porque um simples comando do script “abstrai” ou representa muitos comandos na linguagem Java.

Imagine que você necessita criar um ZIP com alguns arquivos usando Java, mas você nunca usou o package java.util.zip. A documentação Java lista muitas classes e você precisa entender seus significados e relacionamentos antes de usá-las. É preciso um bom mecanismo de script que permita usar de maneira fácil os muitos recursos da plataforma Java, standard ou open source, com o máximo de praticidade, flexibilidade e extensibilidade. Você verá pelos exemplos abaixo que Judoscript é uma linguagem 3-GL/4-GL que visa efetivamente satisfazer estas necessidades.

Para instalar o Judoscript, basta extrair o pacote de instalação e incluir o arquivo judo.jar no classpath.
O script a seguir faz o backup dos meus programas em um arquivo zip estruturado em diretórios com o nome indicando a data e hora da gravação.

O script a seguir criptografa um arquivo usando a API JCE

decriptografa:

O script a seguir é um mini robot que se executado com uma conexão disponível, busca e mostra a grade de programação do dia do canal AXN

Resultado do script para o dia 15/11/2002:

O script a seguir imprime todas as descrições da tabela produtos em uma base MySQL

Assim como Jython, Judoscript também funciona como um interpretador de comandos:

O interpretador pode ser chamado com java vjudo, o que inicia um ambiente visual de trabalho para editar e rodar scripts.

Linguagens de script trouxeram muitos benefícios para o desenvolvimento de software, entre eles:

  • Aumento no nível da linguagem, ou seja, possibilita o uso de comandos e expressões mais próximos da fala humana e mais distantes do código de máquina em baixo nível;
  • Aumenta a eficiência, rapidez e praticidade do programador no desenvolvimento de código (porém sacrifica o desempenho da execução do código);
  • Fornece um ambiente eficaz para reutilização de código e desenvolvimento de software reutilizável;
  • Sintaxe clara, facilidade de aprendizagem e uso imediato sem a necessidade do ciclo de desenvolvimento/compilação

    Linguagems de script implementadas para rodar sobre a JVM trazem estes benefícios para a plataforma Java, de forma ainda mais poderosa, elegante e sofisticada, já que podem se aproveitar da riquíssima API oferecida pela linguagem Java.

    Abraços e um código mais produtivo!.

    Carregando...

Você pode se interessar

Por que eu decidi não migrar para o Windows 11 agora
Artigos
114 visualizações
Artigos
114 visualizações

Por que eu decidi não migrar para o Windows 11 agora

Carlos L. A. da Silva - 19 de outubro de 2021

O novo sistema operacional da Microsoft está entre nós, mas talvez não seja uma boa ideia pular de cabeça.

Enumerando e analisando mais de 40 implementações de JavaScript (que não são V8)
Artigos
243 visualizações
Artigos
243 visualizações

Enumerando e analisando mais de 40 implementações de JavaScript (que não são V8)

Carlos L. A. da Silva - 6 de outubro de 2021

V8 é o interpretador JavaScript, também chamado de máquina virtual Javascript, desenvolvido pela Google e utilizado em seu navegador Google Chrome. Com o peso de seus criadores e a quase onipresença do navegador, foi apenas uma questão de tempo para essa implementação do JavaScritp se tornar dominante no mercado. Entretanto, um bom desenvolvedor sabe que […]

Sir Clive Sinclair, o homem adiantado no tempo
Artigos
426 visualizações
Artigos
426 visualizações

Sir Clive Sinclair, o homem adiantado no tempo

Carlos L. A. da Silva - 18 de setembro de 2021

O inglês Clive Marles Sinclair nasceu de uma família de engenheiros. Seu avô foi engenheiro, assim como o seu pai. Com um talento natural pela Matemática e um forte interesse em eletrônica, ele se tornaria uma página importante da popularização da computação em diversas partes do mundo, construindo um legado que se perpetuará por anos […]

Deixe um Comentário

Your email address will not be published.

Mais publicações

A cibersegurança por trás das vacinas
Artigos
526 visualizações
526 visualizações

A cibersegurança por trás das vacinas

Carlos L. A. da Silva - 7 de setembro de 2021
Top 25 comandos do Git
Artigos
666 visualizações
666 visualizações

Top 25 comandos do Git

Carlos L. A. da Silva - 28 de agosto de 2021
Dez anos de Kotlin: origens e futuro
Artigos
720 visualizações
720 visualizações

Dez anos de Kotlin: origens e futuro

Carlos L. A. da Silva - 20 de agosto de 2021