Bazel 1.0 တည်ဆောက်မှုစနစ်၏ဖြန့်ချိမှု

မိတ်ဆက်ပေးသည်။ open assembly tools များ ထုတ်ပေးခြင်း။ Bazel 1.0Google မှ အင်ဂျင်နီယာများ ဖန်တီးပြီး ကုမ္ပဏီတွင်း ပရောဂျက်အများစုကို စုစည်းရန် အသုံးပြုသည်။ Release 1.0 သည် semantic release versioning သို့ ကူးပြောင်းခြင်းကို အမှတ်အသားပြုပြီး နောက်ပြန်လိုက်ဖက်မှုကို ချိုးဖျက်သည့် အပြောင်းအလဲများစွာကို မိတ်ဆက်ပေးသည့်အတွက်လည်း မှတ်သားဖွယ်ကောင်းပါသည်။ ပရောဂျက်ကုဒ် ဖြန့်ဝေသည် Apache 2.0 အောက်တွင် လိုင်စင်ရထားသည်။

Bazel သည် လိုအပ်သော compilers များနှင့် စမ်းသပ်မှုများ လုပ်ဆောင်ခြင်းဖြင့် project ကို တည်ဆောက်ပါသည်။ တည်ဆောက်မှုစနစ်သည် အလွန်ကြီးမားသော ပရောဂျက်များနှင့် ပရိုဂရမ်းမင်းဘာသာစကားများစွာဖြင့် ကုဒ်ပါရှိသော ပရောဂျက်များအပါအဝင် Google ပရောဂျက်များကို အကောင်းဆုံးဖြစ်အောင် တည်ဆောက်ရန် အခြေခံမှ ဒီဇိုင်းထုတ်ထားပြီး ပလပ်ဖောင်းများစွာအတွက် တည်ဆောက်ထားသည်။ ၎င်းသည် Java၊ C++၊ Objective-C၊ Python၊ Rust၊ Go နှင့် အခြားဘာသာစကားများစွာဖြင့် တည်ဆောက်ခြင်းနှင့် စမ်းသပ်ခြင်းကုဒ်ကို ပံ့ပိုးပေးသည့်အပြင် Android နှင့် iOS အတွက် မိုဘိုင်းအက်ပလီကေးရှင်းများ တည်ဆောက်ခြင်းကိုလည်း ပံ့ပိုးပေးပါသည်။ မတူညီသော ပလပ်ဖောင်းများနှင့် ဗိသုကာလက်ရာများအတွက် တစ်ခုတည်းသော စည်းဝေးပွဲဖိုင်များကို အသုံးပြုခြင်းကို ပံ့ပိုးထားပြီး၊ ဥပမာ၊ အပြောင်းအလဲမရှိသော စည်းဝေးပွဲဖိုင်တစ်ခုကို ဆာဗာစနစ်နှင့် မိုဘိုင်းစက်ပစ္စည်းနှစ်ခုလုံးအတွက် အသုံးပြုနိုင်သည်။

Bazel ၏ထူးခြားသောအင်္ဂါရပ်များထဲတွင်တပ်ဆင်ခြင်းလုပ်ငန်းစဉ်၏မြင့်မားသောအမြန်နှုန်း၊ ယုံကြည်စိတ်ချရမှုနှင့်ထပ်တလဲလဲဖြစ်နိုင်သည်။ မြင့်မားသောတည်ဆောက်မှုအမြန်နှုန်းရရှိရန် Bazel သည် တည်ဆောက်မှုလုပ်ငန်းစဉ်အတွက် ကက်ရှ်နှင့် အပြိုင်နည်းပညာများကို တက်ကြွစွာအသုံးပြုသည်။ BUILD ဖိုင်များသည် အပြောင်းအလဲများပြုလုပ်ပြီးနောက် အစိတ်အပိုင်းများကို ပြန်လည်တည်ဆောက်ရန် ဆုံးဖြတ်ချက်များချထားသည့် အခြေခံအားဖြင့် မှီခိုမှုအားလုံးကို အပြည့်အဝသတ်မှတ်ရပါမည်။ ကိရိယာတန်ဆာပလာသည် ထပ်ခါတလဲလဲ တပ်ဆင်မှုကိုလည်း သေချာစေသည်၊ ဆိုလိုသည်မှာ၊ ဆော့ဖ်ဝဲရေးသားသူ၏စက်ပေါ်တွင် ပရောဂျက်တစ်ခုတည်ဆောက်ခြင်း၏ရလဒ်သည် စဉ်ဆက်မပြတ်ပေါင်းစည်းထားသောဆာဗာများကဲ့သို့သော ပြင်ပအဖွဲ့အစည်းစနစ်များတည်ဆောက်ခြင်းနှင့် လုံးဝတူညီမည်ဖြစ်သည်။

Make နှင့် Ninja နှင့်မတူဘဲ၊ Bazel သည် စုစည်းမှုစည်းမျဉ်းများတည်ဆောက်ခြင်းအတွက် မြင့်မားသောအဆင့်ချဉ်းကပ်နည်းကိုအသုံးပြုသည်၊ ၎င်းတွင်တည်ဆောက်ထားသောဖိုင်များနှင့် command များပေါင်းစပ်ခြင်းကိုသတ်မှတ်မည့်အစား "executable file ကိုတည်ဆောက်ခြင်းကဲ့သို့သော abstract ready-made blocks များကိုအသုံးပြုသည်" C++”၊ “C++ တွင် စာကြည့်တိုက်တစ်ခု တည်ဆောက်ခြင်း” သို့မဟုတ် “C++ အတွက် စမ်းသပ်မှုတစ်ခု လုပ်ဆောင်နေသည်” အပြင် ပစ်မှတ်နှင့် တည်ဆောက်သည့် ပလက်ဖောင်းများကို ဖော်ထုတ်ခြင်း။ BUILD စာသားဖိုင်တွင်၊ ပရောဂျက်အစိတ်အပိုင်းများကို ဖိုင်တစ်ခုချင်းစီအဆင့်နှင့် စုစည်းမှုခေါ်ဆိုမှုဆိုင်ရာ ညွှန်ကြားချက်များအဆင့်တွင် အသေးစိတ်မဖော်ပြဘဲ စာကြည့်တိုက်များ၊ executable ဖိုင်များနှင့် စမ်းသပ်မှုများအစုအဝေးအဖြစ် ဖော်ပြထားပါသည်။ တိုးချဲ့မှုများကို ချိတ်ဆက်ရန်အတွက် အပိုလုပ်ဆောင်ချက်ကို လုပ်ဆောင်ပါသည်။

source: opennet.ru

မှတ်ချက် Add