본문 바로가기
Android/개념 및 정보

Bazel이란 무엇인가

by Taehyung Kim, dev 2020. 7. 14.
728x90

Bazel을 안드로이드에 사용해보자

 

먼저 Bazel을 알아보기 위해 아래 링크를 참고하여 정리해봤다.

https://docs.bazel.build/versions/master/bazel-overview.html

 

Bazel overview

Bazel overview What is Bazel? Bazel is an open-source build and test tool similar to Make, Maven, and Gradle. It uses a human-readable, high-level build language. Bazel supports projects in multiple languages and builds outputs for multiple platforms. Baze

docs.bazel.build

 

 

Bazel이란 무엇인가? - What is Bazel?

  • 바젤은 Make, Maven, Gradle과 유사한 오픈소스 빌드 및 테스트 툴이다.
  • 사람이 읽을 수 있는 고급 빌드 언어를 사용한다.
  • 바젤은 다국어로 프로젝트를 지원하고 다중 플랫폼용 출력을 구축한다.
  • Bazel은 여러 리포지토리에 걸쳐 대규모 코드베이스를 지원하며, 많은 수의 사용자를 지원한다.

Bazel의 장점 - Why should I use Bazel?

  • High-level build language
    • Bazel은 추상적이고 사람이 읽을 수 있는 언어를 사용하여 프로젝트의 빌드 속성을 높은 의미 수준에서 설명한다.
    • Bazel은 libraries, binaries, scrippts, data sets의 개념으로 작동하여 compilers와 linkers와 같은 도구에 개별 호출의 복잡함으로부터 막아준다.
  • Bazel is fast and reliable
    • Bazel은 이전에 수행된 모든 작업을 캐시하고 파일 내용과 빌드 명령 모두에 대한 변경 사항을 추적한다.
    • 어떤 것이 언제 rebuilt되어야 하는지 알고 rebuilt한다.
  • Bazel is multi-platform
    • Bazel은 Linux, MacOS, Windows에서 가능하다.
    • Bazel은 동일한 프로젝트에서 Desktop, Server, Mobile 등 여러 플랫폼용 바이너리와 배포 가능한 패키지를 구축할 수 있다.
  • Bazel scales
    • Bazeldms 100k 이상의 소스 파일로 빌드를 처리하면서 민첩성을 유지한다.
  • Bazel is extensible
    • 많은 언어가 지원되며, 다른 어떤 언어나 framework을 지원하도록 Bazel을 확장할 수 있다.

 

Bazel을 사용해 구글의 MediaPipe를 적용시킬 예정이다.

 

 

※ 자료에 문제가 있으면 수정 혹은 삭제 조치 하겠습니다.

728x90

댓글