Crystal yra atvirojo kodo generatorius, skirtas bet kuriai programavimo kalbai, sistemai, TVS ir net duomenų bazei, jis leidžia derinti ir suvienodinti konfigūraciją ir kodą, todėl tai yra puikus įrankis, leidžiantis optimizuoti bet kurio projekto kūrimo laiką.
Jo filosofija yra Vienas įėjimas - bet koks išėjimas, o tai reiškia vieną įvestį - bet kurią išvestį, ir tai yra Crystal tvarko kaip įvesties duomenis tokius paprastus dalykus kaip a JSON, XML ar net YAML taip suteikdami mums galimybę naudoti bet kurį iš jų, kad sukurtume kodą abiems PHP, „Python“, „Java“, „Rails“, „Django“, „Ruby“ Y Node.js Išvardyti kelis.
Kadangi mes žinome, ką galime padaryti CrystalPažiūrėkime, kaip mes jį įdiegsime savo aplinkoje ir pradėsime naudoti šį galingą įrankį.
„Crystal“ diegimas
Į įdiegti „Crystal“ mes turime turėti savo aplinkoje Node.js ir jo paketų tvarkytuvė NPM, patikrinę šiuos reikalavimus, norime įdiegti šią komandą Crystal:
npm įdiegti crystal -cli -gKai diegimas bus baigtas, vykdysime komandą kristalas -v patikrinti tos pačios versiją ir patikrinti, ar viskas gerai.
DIDELIS
„Crystal“ inicijavimas
Įdiegę kodų generatorių, inicijuosime naujo tipo projektą Crystal. Tam mes sukursime naują katalogą ir jame vykdysime šią komandą:
krištolo iniciatyvaKai įvykdysime komandą, „Crystal“ paprašys mūsų pridėti tam tikrus konfigūracijos failo duomenis, pvz., Pavadinimą, aprašymą, autorių.
DIDELIS
Kai užpildysime šią informaciją, ši komanda inicijuos mūsų projektą ir sukurs kelią.kristalas / mūsų konfigūracijos failą config.yml kuris turėtų atrodyti taip:
vardas: first_steps_crystal aprašymas: Mokomoji medžiaga, rodanti „Crystal“ naudojimą Autorius: vardas: Jonathan Acosta el. paštas: [email protected] url: www.solvetic.com copyright: '2015'Tai failas su užrašais YAML, kuris išlaiko tam tikrą panašumą į JSON struktūrą ir jame esančių duomenų skaitymo paprastumą. Mūsų projektas jau yra paruoštas pasinaudoti Crystal Pereikime prie pirmojo kodo kūrimo.
Kuriame mūsų kodą
Norėdami sugeneruoti kodą, Crystal naudoja tam tikrus elementus, leidžiančius atlikti šią užduotį, vienas iš šių elementų yra Specifikacijos arba specifikacijos ir yra tie, kurie leidžia apibrėžti įvesties duomenis ir taip generuoti išvestį.
Viskas, ką norime apibrėžti, kad būtų įtraukti į mūsų kartą, turi būti mūsų elementas išėjimai, kur turime nurodyti ir generatorių, ir specifikacijas. Už generatorių atsako nurodymas, kad jis turėtų būti sukurtas, pavyzdžiui, a PHP, Rubinas, Pakuotė PIP, failas Gruntas ar net „readme“ failą, kuris bus pirmasis pavyzdys.
Be to SpecifikacijosSvarbu importuoti modulius, kurie turės kiekvieno generatoriaus funkcijas, specifikacijas ir kt. Norėdami tai padaryti, turime įtraukti šią eilutę į failą config.yml:
importas: krištolas / skaitymas: ~ 0.2.2Tokiu būdu daug lengviau sekti modulius, kuriuos norime įtraukti į savo projektą, pridėję šią eilutę, tiesiog turime atnaujinti savo projektą naudodami šią komandą:
kristalų atnaujinimasŠi komanda atnaujins mūsų projektą ir įdiegs modulius, kuriuos nurodėme importas. Kai tai bus padaryta, galime generuoti savo išvestis, tam pridėsime specifikacijas ir generatorių taip:
išėjimai: - generatorius: readme.ReadmeGenerator specifikacijos: pavadinimas: Readme versija: 1.2.3 aprašymas: Tai Readme failo testasJau su mūsų failu config.yml Baigę turime tik įvykdyti komandą statyti sugeneruoti mūsų kodą, šiuo atveju - mūsų failą Skaityk mane.
Pažiūrėkime, kaip atrodo mūsų failas Skaityk mane sukurtas su Crystal.
Taip mes turėjome pirmąjį požiūrį su šiuo galingu įrankiu, kuris per kelias sekundes gali sukurti norimų kalbų kodą, įskaitant sistemas ir duomenų bazes, sujungdamas žinias ir pastangas bei žymiai sutrumpindamas mūsų projektų kūrimo laiką.