Cristal é um gerador de código aberto para qualquer linguagem de programação, framework, CMS e até Banco de Dados, permite combinar e unificar configuração e código, tornando-se uma ferramenta perfeita para otimizar tempos de desenvolvimento em qualquer projeto.
Sua filosofia é Uma entrada - qualquer saída, o que significa uma única entrada - qualquer saída, e isso é Cristal trata como dados de entrada coisas tão simples como um JSON, XML o incluso YAML dando-nos assim a possibilidade de usar qualquer um deles para gerar código para ambos PHP, Python, Java, Rails, Django, Ruby Y Node.js por mencionar alguns.
Já que sabemos o que podemos fazer com CristalVamos ver como o instalamos em nosso ambiente e colocamos esta poderosa ferramenta em operação.
Instalando Crystal
Para instalar cristal precisamos ter em nosso ambiente Node.js e seu gerenciador de pacotes NPM, uma vez que tenhamos verificado esses requisitos, vamos executar o seguinte comando para instalar Cristal:
npm install crystal-cli -gAssim que a nossa instalação terminar, executamos o comando cristal -v para verificar a versão do mesmo e verificar se tudo correu bem.
PROLONGAR
Inicializando Crystal
Assim que tivermos nosso gerador de código instalado, vamos inicializar um novo projeto do tipo Cristal. Para isso vamos criar um novo diretório e dentro dele vamos executar o seguinte comando:
init de cristalUma vez executado o comando, o Crystal nos pedirá para adicionar alguns dados ao arquivo de configuração, como nome, descrição, autor, entre outros.
PROLONGAR
Assim que preenchermos essas informações, esse comando inicializará nosso projeto e gerará no caminho.cristal / nosso arquivo de configuração config.yml que deve ser parecido com este:
nome: first_steps_crystal descrição: Tutorial mostrando o uso de Crystal autor: nome: Jonathan Acosta e-mail: [email protected] url: www.solvetic.com copyright: '2015'Este é um arquivo com notação YAML, que mantém uma certa semelhança com JSON em termos de estrutura e facilidade de leitura dos dados nele. Já tendo nosso projeto preparado para aproveitar os benefícios do Cristal Vamos continuar gerando nosso primeiro código.
Gerando nosso código
Para gerar código, Cristal usa certos elementos que permitem que essa tarefa seja realizada, um desses elementos é o Especificações ou especificações e são aquelas que permitem definir os dados de entrada e, assim, gerar uma saída.
Tudo o que queremos definir para ser incluído em nossa geração deve estar sob nosso elemento saídas, onde devemos especificar o gerador e as especificações. O que é responsável pelo gerador é indicar que ele deve ser gerado, por exemplo um PHP, Rubi, Um pacote de PIP, um arquivo Grunhido ou mesmo um arquivo leia-me, que será o primeiro exemplo que faremos.
além do mais EspecificaçõesÉ importante importar os módulos, que são os que terão as funcionalidades de cada gerador, especificação, etc. Para isso, devemos incluir esta linha em nosso arquivo config.yml:
importações: cristal / leia-me: ~ 0.2.2Desta forma é muito mais fácil acompanhar os módulos que queremos incluir em nosso projeto, uma vez que adicionamos esta linha, só temos que atualizar nosso projeto com o seguinte comando:
atualização de cristalEste comando irá atualizar nosso projeto e instalar os módulos que especificamos no importações. Feito isso, podemos gerar nossas saídas, para isso adicionaremos as especificações e o gerador da seguinte forma:
saídas: - generator: readme.ReadmeGenerator spec: name: Readme version: 1.2.3 description: Este é um teste de um arquivo ReadmeJá com nosso arquivo config.yml concluído, só temos que executar o comando Construir para gerar nosso código, neste caso nosso arquivo Leia-me.
Vamos ver como nosso arquivo se parece Leia-me gerado com Cristal.
Com isso tivemos nossa primeira abordagem com essa poderosa ferramenta, que em questão de segundos pode gerar código para as linguagens que desejamos, incluindo frameworks e bancos de dados, unificando conhecimento e esforço e reduzindo consideravelmente o tempo de desenvolvimento de nossos projetos.