Famoahana ny fiteny fandaharana Crystal 1.2

Navoaka ny famoahana ny fiteny fandaharana Crystal 1.2, izay miezaka ny manambatra ny fampivoarana ny fiteny Ruby miaraka amin'ny fampiharana avo lenta amin'ny fiteny C ny mpamorona azy. Ny syntax an'ny Crystal dia akaiky, fa tsy mifanaraka tanteraka amin'i Ruby, na dia eo aza ny zava-misy fa ny programa ruby ​​​​dia mandeha tsy misy famerenana. Ny code compiler dia nosoratana tamin'ny Crystal ary zaraina amin'ny alΓ lan'ny lisansa Apache 2.0.

Ny fiteny dia mampiasa fanamarinana karazana static, ampiharina tsy mila mamaritra mazava ny karazana varimbazaha sy ny fomba tohan-kevitra ao amin'ny code. Ny programa kristaly dia natambatra ho rakitra azo tanterahana, miaraka amin'ny fanombanana macro sy famoronana kaody amin'ny fotoana fanangonana. Ao amin'ny programa Crystal, dia azo atao ny mampifandray ireo fatorana voasoratra amin'ny fiteny C. Ny fampifanarahana ny famonoana ny fehezan-dalΓ na dia atao amin'ny fampiasana ny teny fanalahidy "spawn", izay ahafahanao mampandeha asa any aoriana amin'ny fomba asynchronous, tsy manakana ny kofehy lehibe, amin'ny endrika kofehy maivana antsoina hoe fibre (Fibre).

Ny trano famakiam-boky manara-penitra dia manome andiana asa jeneraly marobe, ao anatin'izany ny fitaovana amin'ny fitantanana CSV, YAML, ary JSON, singa amin'ny fananganana server HTTP, ary fanohanana WebSocket. Mandritra ny dingan'ny fampandrosoana dia mety tsara ny mampiasa ny baiko "crystal play", izay mamorona interface web (localhost:8080 amin'ny alΓ lan'ny default) ho an'ny famonoana kaody interactive amin'ny fiteny Crystal.

Fiovana lehibe:

  • Nampiana ny fahafahana manendry zana-kilasy iray amin'ny kilasy iray amin'ny singa iray amin'ny kilasin'ny ray aman-dreny. kilasy Foo(T); kilasy farany Bar(T) < Foo(T); farany x = Foo x = Bar
  • Ny Macros izao dia afaka mampiasa tsipika iray mba tsy hiraharaha ny sanda iray amin'ny loop for. {% for _, v, i in {1 => 2, 3 => 4, 5 => 6} %} p {{v + i}} {% end %}
  • Nampiana "file_exists?" fomba ho an'ny macros. hanamarina ny fisian'ny rakitra.
  • Ny tranomboky mahazatra ankehitriny dia manohana ny isa 128-bit.
  • Added Indexable::Module Mutable(T) miaraka amin'ny fampiharana asa mandroso ho an'ny fanangonana toy ny BitArray sy Deque. ba = BitArray.new(10) # ba = BitArray[0000000000] ba[0] = marina # ba = BitArray[1000000000] ba.rotate!(-1) # ba = BitArray[0100000000]
  • Nampiana XML:: Node#namespace_definition fomba hanesorana ny espace anarana manokana avy amin'ny XML.
  • Ny fomba IO#write_utf8 sy URI.encode dia tsy ampiasaina ary tokony hosoloina IO#write_string sy URI.encode_path.
  • Ny fanohanana ny maritrano 32-bit x86 dia nafindra tany amin'ny ambaratonga faharoa (tsy misy fonosana efa vita intsony). Ny famindrana mankany amin'ny ambaratonga voalohany fanohanana ny maritrano ARM64 dia efa voaomana.
  • Mitohy ny asa miantoka ny fanohanana feno ny sehatra Windows. Fanampiana fanampiny ho an'ny faladia Windows.
  • Nampiana fonosana manerantany ho an'ny macOS, miasa amin'ny fitaovana misy processeur x86 sy amin'ny fitaovana miaraka amin'ny chip Apple M1.

Source: opennet.ru

Add a comment