બેઝલ 1.0 એસેમ્બલી સિસ્ટમનું પ્રકાશન

દ્રારા રજુ કરેલ ઓપન એસેમ્બલી ટૂલ્સનું પ્રકાશન બેઝલ 1.0, развиваемого инженерами из Google и используемого для сборки большинства внутренних проектов данной компании. Выпуск 1.0 ознаменовал переход к использованию семантического версионирования релизов и также примечателен внесением большого числа изменений, нарушающих обратную совместимость. Код проекта દ્વારા વિતરિત Apache 2.0 હેઠળ લાઇસન્સ.

Bazel обеспечивает сборку проекта, запуская необходимые компиляторы и тесты. Сборочная система изначально спроектирована для оптимальной сборки проектов Google, в том числе сборки очень больших проектов и проектов, содержащих код на нескольких языках программирования, требующих расширенного тестирования и собираемых для нескольких платформ. Поддерживается сборка и тестирование кода на Java, C++, Objective-C, Python, Rust, Go и многих других языках, а также сборка мобильных приложений для Android и iOS. Поддерживается использование единых сборочных файлов для разных платформ и архитектур, например, один файл сборки без изменений может применяться как для серверной системы, так и для мобильного устройства.

બેઝલના વિશિષ્ટ લક્ષણોમાં એસેમ્બલી પ્રક્રિયાની ઉચ્ચ ઝડપ, વિશ્વસનીયતા અને પુનરાવર્તિતતા છે. ઉચ્ચ બિલ્ડ સ્પીડ હાંસલ કરવા માટે, બેઝલ બિલ્ડ પ્રક્રિયા માટે સક્રિયપણે કેશીંગ અને સમાંતર તકનીકોનો ઉપયોગ કરે છે. BUILD ફાઇલોએ તમામ નિર્ભરતાઓને સંપૂર્ણ રીતે વ્યાખ્યાયિત કરવી આવશ્યક છે, જેના આધારે ફેરફારો કર્યા પછી ઘટકોને પુનઃબીલ્ડ કરવા માટે નિર્ણયો લેવામાં આવે છે (ફક્ત બદલાયેલી ફાઇલો ફરીથી બનાવવામાં આવે છે) અને એસેમ્બલી પ્રક્રિયાને સમાંતર બનાવે છે. ટૂલિંગ પણ પુનરાવર્તિત એસેમ્બલીની ખાતરી કરે છે, એટલે કે. વિકાસકર્તાના મશીન પર પ્રોજેક્ટ બનાવવાનું પરિણામ તૃતીય-પક્ષ સિસ્ટમ્સ પરના બિલ્ડ સાથે સંપૂર્ણપણે સમાન હશે, જેમ કે સતત એકીકરણ સર્વર્સ.

મેક અને નીન્જાથી વિપરીત, બેઝલ એસેમ્બલી નિયમો બનાવવા માટે ઉચ્ચ-સ્તરના અભિગમનો ઉપયોગ કરે છે, જેમાં, બાંધવામાં આવી રહેલી ફાઇલોને આદેશોના બંધનને વ્યાખ્યાયિત કરવાને બદલે, વધુ અમૂર્ત તૈયાર બ્લોક્સનો ઉપયોગ કરવામાં આવે છે, જેમ કે "એક્ઝિક્યુટેબલ ફાઇલનું નિર્માણ C++", "C++ માં લાઇબ્રેરી બનાવવી" અથવા "C++ માટે ટેસ્ટ ચલાવવી", તેમજ લક્ષ્ય અને બિલ્ડ પ્લેટફોર્મ ઓળખવા. બિલ્ડ ટેક્સ્ટ ફાઇલમાં, પ્રોજેક્ટ ઘટકોને વ્યક્તિગત ફાઇલો અને કમ્પાઇલર કૉલ કમાન્ડના સ્તરે વિગતો આપ્યા વિના, પુસ્તકાલયો, એક્ઝિક્યુટેબલ ફાઇલો અને પરીક્ષણોના સમૂહ તરીકે વર્ણવવામાં આવે છે. વધારાની કાર્યક્ષમતા એક્સ્ટેંશનને કનેક્ટ કરવા માટેની પદ્ધતિ દ્વારા લાગુ કરવામાં આવે છે.

સોર્સ: opennet.ru

એક ટિપ્પણી ઉમેરો