Ruby සඳහා ස්ථිතික ආකාරයේ පිරික්සුම් පද්ධතියක් වන Sorbet විවෘත මූලාශ්‍ර වේ.

ස්ට්‍රයිප් සමාගම, මාර්ගගත ගෙවීම් සඳහා වේදිකා සංවර්ධනය පිළිබඳ විශේෂීකරණය, විවෘත කළා ව්යාපෘති මූලාශ්ර කේත සෝර්බෙට්, Ruby භාෂාව සඳහා ස්ථිතික ආකාරයේ පිරික්සුම් පද්ධතියක් සකස් කරන ලදී. කේතය C++ සහ ලියා ඇත විසින් බෙදා හරිනු ලැබේ Apache 2.0 යටතේ බලපත්‍ර ලබා ඇත.

කේතයේ වර්ග පිළිබඳ තොරතුරු ගතිකව ගණනය කළ හැකි අතර, සරල ආකාරයෙන්ද සඳහන් කළ හැක විවරණ, sig ක්‍රමය භාවිතයෙන් කේතයේ සඳහන් කළ හැකි (උදාහරණයක් ලෙස, "sig {params(x: Integer).returns(String)}") හෝ rbi දිගුව සමඟ වෙනම ගොනු වල තැන්පත් කළ හැක. පවතින මූලික වශයෙන් ස්ථිතික කේත විශ්ලේෂණය එය ක්‍රියාත්මක නොකර, එය ක්‍රියාත්මක වන ආකාරය පරීක්ෂා කිරීම (ක්‍රියාත්මක වේ කේතයට "require 'sorbet-runtime'" එකතු කිරීමෙන්.

හැකියාව ලබා දී ඇත ක්රමානුකූල පරිවර්තනය Sorbet භාවිතා කිරීමට ව්‍යාපෘති - කේතයට විවරණය කළ ටයිප් කළ කොටස් සහ සත්‍යාපනයෙන් ආවරණය නොවන ටයිප් නොකළ ප්‍රදේශ යන දෙකම ඒකාබද්ධ කළ හැකිය. විශේෂාංග අතර ඉතා ඉහළ කාර්ය සාධනයක් සහ මිලියන ගණනක කේත රේඛා අඩංගු කේත පදනම් සඳහා පරිමාණය කිරීමේ හැකියාවද ඇතුළත් වේ.

ව්‍යාපෘතියට ස්ථිතික වර්ගය පරීක්ෂා කිරීම සඳහා කර්නලයක් ඇතුළත් වේ,
Sorbet භාවිතයෙන් නව ව්‍යාපෘති නිර්මාණය කිරීම සඳහා මෙවලම් කට්ටලයක්, Sorbet භාවිතා කිරීම සඳහා පවතින ව්‍යාපෘති පියවරෙන් පියවර මාරු කිරීම සඳහා මෙවලම් කට්ටලයක්, වර්ග පිළිබඳ විවරණ ලිවීම සඳහා වසම් විශේෂිත භාෂාවක් සහිත ධාවන කාලය සහ ගබඩාව විවිධ Ruby මැණික් පැකේජ සඳහා සූදානම් කළ ආකාරයේ නිර්වචන සමඟ.

මුලදී, Sorbet ස්ට්‍රයිප් සමාගමේ අභ්‍යන්තර ව්‍යාපෘති පරීක්ෂා කිරීම සඳහා සංවර්ධනය කරන ලද අතර, බොහෝ ගෙවීම් සහ විශ්ලේෂණ පද්ධති රූබි භාෂාවෙන් ලියා ඇති අතර, සංවර්ධනය හා ක්‍රියාත්මක කිරීමෙන් වසර එකහමාරකට පසු විවෘත මූලාශ්‍ර කාණ්ඩයට මාරු කරන ලදී. කේතය විවෘත කිරීමට පෙර, බීටා පරීක්ෂණය සිදු කරන ලද අතර, එයට සමාගම් 30 කට වඩා සහභාගී විය. සංවර්ධනයේ වත්මන් අවධියේදී, Ruby හි ​​බොහෝ සම්මත ව්යාපෘති දියත් කිරීමට Sorbet සහාය දක්වයි, නමුත් සමහර නොගැලපීම් තිබිය හැක.

මූලාශ්රය: opennet.ru

අදහස් එක් කරන්න