Lëshimi i sistemit të ndërlikimit Bazel 1.0

Të paraqitura lëshimi i mjetit të hapur për ndërtim Bazel 1.0, i zhvilluar nga inxhinierët e Google dhe i përdorur për ndërtimin e shumicës së projekteve të brendshme të kësaj kompanie. Lëshimi 1.0 shënoi kalimin në përdorimin e versionimin semantik të lëshimeve dhe është gjithashtu i njohur për futjen e një numri të madh ndryshimesh që shkelin përputhshmërinë mbrapa. Kodi i projektit distribuohet nën licencën Apache 2.0.

Bazel siguron ndërtimin e projektit duke ekzekutuar compilatorët dhe testet e nevojshme. Sistemi i ndërtimit është projektuar fillimisht për ndërtimin optimal të projekteve të Google, përfshirë ndërtimin e projekteve shumë të mëdha dhe projekteve që përmbajnë kod në disa gjuhë programimi, duke kërkuar testim të zgjeruar dhe të ndërtuara për disa platforma. Përkrah ndërtimin dhe testimin e kodit në Java, C++, Objective-C, Python, Rust, Go dhe shumë gjuhë të tjera, si dhe ndërtimin e aplikacioneve mobile për Android dhe iOS. Përkrah përdorimin e skedarëve të njëjtë të ndërtimit për platforma dhe arkitekturë të ndryshme, për shembull, një skedar ndërtimi pa ndryshime mund të përdoret si për një sistem serveri ashtu edhe për një pajisje mobile.

Disa nga karakteristikat dalluese të Bazel janë shpejtësia e lartë, besueshmëria dhe përsëritshmëria e procesit të ndërtimit. Për të arritur një shpejtësi të lartë ndërtimi, Bazel zbatuan aktivisht teknikat e caching-ut dhe paralelizimit të procesit të ndërtimit. Në skedarët BUILD, të gjitha varësitë janë të përcaktuara plotësisht, mbi të cilat merren vendime për rindërtimin e komponenteve pas ndryshimeve (përfshihen vetëm skedarët e ndryshuar) dhe paralelizimi i procesit të ndërtimit. Veglat gjithashtu garantuajnë përsëritshmërinë e ndërtimit, dmth. rezultati i ndërtimit të projektit në makinën e zhvilluesit do të forcohet plotësisht me ndërtimin në sisteme të jashtme, të tilla si serverët e integrimit të vazhdueshëm.

Ndryshe nga Make dhe Ninja, Bazel përdor një qasje më të lartë në ndërtimin e rregullave të ndërtimit, ku në vend të përcaktimit të lidhjeve të komandave me skedarët që ndërtohen, aplikohet blloqe më abstrakte të gatshme, si "ndërtimi i një skedari ekzekutiv në C++", "ndërtimi i një biblioteke në C++" ose "ekzekutimi i një testi për C++", si dhe përcaktimi i platformave të objektivave dhe ndërtimit. Në skedarin tekstual BUILD, komponentët e projektit përshkruhen si një grup bibliotekash, skedarësh ekzekutivë dhe teste, pa detaje në nivelin e skedarëve individualë dhe komandave të thirrjes së kompajlerit. Funksionalitete të tjera realizohen nëpërmjet mekanizmit të lidhjes së shtesave.

Burimi: opennet.ru

Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« đŸ”„ Bli njĂ« hosting tĂ« besueshĂ«m pĂ«r faqet me mbrojtje DDoS, VPS VDS serverĂ« | ProHoster