Sorbet, Ruby үшін статикалық типті тексеру жүйесі ашық бастапқы код болып табылады.

Онлайн төлемдерге арналған платформаларды әзірлеуге маманданған Stripe компаниясы, ашылды жобаның бастапқы кодтары Сорбет, оның ішінде Ruby тілі үшін статикалық типті тексеру жүйесі дайындалды. Код C++ тілінде жазылған және таралады Apache 2.0 бойынша лицензияланған.

Кодтағы түрлер туралы ақпарат динамикалық түрде есептелуі мүмкін және қарапайым түрінде де көрсетілуі мүмкін аннотациялар, оны sig әдісі арқылы кодта көрсетуге болады (мысалы, “sig {params(x: Integer).returns(String)}”) немесе rbi кеңейтімі бар бөлек файлдарға орналастырылады. Қол жетімді алдын ала ретінде статикалық кодты талдау орындамай-ақ және оның орындалуын тексеру (қосылады кодқа ""сорбет-орындау уақытын" талап ету" қосу арқылы.

Мүмкіндік берілген біртіндеп аудару Сорбетті пайдалану жобалары - код аннотацияланған терілген блоктарды да, тексерумен қамтылмаған типтелмеген аумақтарды да біріктіре алады. Сондай-ақ мүмкіндіктер өте жоғары өнімділікті және миллиондаған код жолдарын қамтитын код негіздерін масштабтау мүмкіндігін қамтиды.

Жоба статикалық типті тексеруге арналған ядроны қамтиды,
Sorbet көмегімен жаңа жобаларды жасауға арналған құралдар жинағы, бар жобаларды Sorbet пайдалану үшін кезең-кезеңімен тасымалдауға арналған құралдар жинағы, түрлер туралы аннотациялар жазуға арналған домендік тілмен жұмыс уақыты. репозиторий түрлі Ruby асыл тастар пакеттері үшін дайын түр анықтамаларымен.

Бастапқыда Sorbet төлем және аналитикалық жүйелері Ruby тілінде жазылған Stripe компаниясының ішкі жобаларын тексеру үшін әзірленді және бір жарым жылдан кейін әзірленіп, жүзеге асырылғаннан кейін ашық бастапқы код санатына ауыстырылды. Кодты ашпас бұрын бета тестілеу жүргізілді, оған 30-дан астам компания қатысты. Қазіргі даму кезеңінде Sorbet Ruby-дегі көптеген стандартты жобаларды іске қосуды қолдайды, бірақ кейбір сәйкессіздіктер болуы мүмкін.

Ақпарат көзі: opennet.ru

пікір қалдыру