Siidaynta luuqada barmaamijka Crystal 1.5

Siideynta luuqadda barnaamijka Crystal 1.5 ayaa la daabacay, kuwaas oo horumariyayaashu ay isku dayayaan in ay isku daraan ku habboonaanta horumarinta luqadda Ruby iyo waxqabadka sare ee codsiga ee luqadda C. Ereyga Crystal wuxuu ku dhow yahay, laakiin aan si buuxda ula socon Ruby, inkasta oo barnaamijyada Ruby qaarkood ay shaqeeyaan iyada oo aan wax laga beddelin. Koodhka isku-darka wuxuu ku qoran yahay Crystal waxaana lagu qaybiyaa shatiga Apache 2.0.

Luuqadu waxay isticmaashaa hubinta nooca taagan, oo la fuliyay iyada oo aan loo baahnayn in si cad loo qeexo noocyada doorsoomayaasha iyo habka doodaha ee koodka. Barnaamijyada Crystal waxa lagu ururiyay faylal la fulin karo, oo macros la qiimeeyay iyo kood la sameeyay wakhtiga la ururiyay. Barnaamijyada Crystal, waxaa suurtagal ah in lagu xiro xirmooyinka ku qoran C. Isbarbardhigga fulinta koodka waxaa lagu fuliyaa iyadoo la adeegsanayo ereyga muhiimka ah ee "spawn", kaas oo kuu oggolaanaya inaad si aan toos ahayn u socodsiiso hawsha asalka ah, iyada oo aan la xannibin dunta ugu weyn, oo ah qaab dun fudud oo loo yaqaan 'fibers'.

Maktabadda caadiga ah waxay bixisaa hawlo badan oo caadi ah, oo ay ku jiraan qalabka lagu farsameeyo CSV, YAML, iyo JSON, qaybaha abuurista server-yada HTTP, iyo taageerada WebSocket. Inta lagu jiro habka horumarinta, way ku habboon tahay in la isticmaalo amarka "crystal play", kaas oo soo saara interface web (localhost: 8080 by default) ee fulinta isdhexgalka ee code ee luqadda Crystal.

Isbeddellada ugu waaweyn:

  • Isku-dubariduhu waxa uu ku daray hubinta isku xidhka magacyada doodaha ee hirgelinta habka aan la taaban karin iyo qeexiddiisa. Haddii uu jiro magac isku mid ah, digniin ayaa hadda la soo saaray: fasalka abstract FooAbstract abstract def foo(lambar : Int32): Nil end class Foo < FooAbstract def foo(name: Int32) : Nil p name end 6 | def foo(magaca: Int32): Nil ^β€” Digniin: halbeegga booska 'magaca' waxay u dhigantaa halbeegga 'lambarka' habka la jabiyay
  • Marka loo qaybinayo dood hab aan la qorin qiimaha doorsoomaha, dooddu hadda waxay ku xaddidan tahay nooca doorsoomiyahaas. fasalka Foo @x : Int64 def initialize(x) @x = x # parameter x waa la qori doonaa @x dhamaadka
  • Waxay kuu ogolaanaysaa inaad ku darto sharraxaad cabbirrada hababka ama macros. def foo (@[MaybeUnused] x); dhamaadka # OK
  • Taageero lagu daray isticmaalka joogtada ah sida tusmooyinka iyo magacyada tuples. KEY = "s" foo = {s: "String", n: 0} wuxuu dhigayaa foo[KEY].
  • Hababka cusub ee #tirtirka? ayaa lagu daray File API si loo tirtiro faylasha iyo hagayaasha iyo Dir#Delete?, kuwaas oo been abuur ku soo noqda haddii faylka ama tusaha la waayo.
  • Ilaalinta habka File.tempfile waa la xoojiyay, taas oo hadda aan u oggolaan in jilayaasha aan jirin ee xariiqyada sameeya magaca faylka.
  • Doorsoome deegaan oo lagu daray NO_COLOR, kaas oo curyaaminaya midabka soo saarista iyo turjubaanka.
  • Shaqada qaabka turjubaanka si weyn ayaa loo hagaajiyay.

Source: opennet.ru

Add a comment