Upgrade to Pro — share decks privately, control downloads, hide ads and more …

buck, okbuck そして okbazel

Ryosuke Horie
March 23, 2017
690

buck, okbuck そして okbazel

Ryosuke Horie

March 23, 2017
Tweet

More Decks by Ryosuke Horie

Transcript

  1. About Me • Ryosuke Horie @Horie1024 • VASILY,Inc. AndroidΤϯδχΞ •

    ࡢ೥11݄ʹޒ൓ా΁ • !ͱࣗಈԽ͕޷͖ • ࠷ۙࢠڙ͕ੜ·Ε·ͨ͠" 2
  2. AndroidͷϏϧυπʔϧ • 2017/3/23ݱࡏ Android StudioͰͷ։ൃ͕Ұൠత • Android Gradle Plugin •

    Android StudioͷϏϧυγεςϜ͸Gradleϕʔε • Ϗϧυπʔϧͱͯ͠Gradle͕ඪ४ 4
  3. ઃఆͷௐ੔ • ϓϩδΣΫτʹ߹Θͤͯνϡʔχϯά • How to decrease your Gradle build

    time by 65%? • 10 Tips to Improve Your Gradle Build Time 7
  4. Buck features • Speed up your builds • Add reproducibility

    to your builds • Get correct incremental builds • Understand your dependencies • Integrate with your IDE 13
  5. Bazel android_library rule sample android_library( name = "activities", srcs =

    glob(["src/activities/*.java"]), custom_package = "com.google.bazel.example", manifest = "src/example/AndroidManifest.xml", resource_files = glob(["src/example/res/**"]), ) 15
  6. Buck android_library rule sample android_library( name = 'lib', srcs =

    glob(['*.java']), deps = [ '//android/resources:res', '//android/cxx:jni', ], visibility = [ '//android:demo-app', ], ) 16
  7. okbuck tasks • buckWrapper - Create buck wrapper • okbuck

    - Generate BUCK files • okbuckClean - Delete configuration files generated by OkBuck • setupOkbuck - Setup okbuck cache and dependencies 21
  8. okbazel • okbuckͷrepositoryʹPull Request͕ग़͍ͯΔ • Experimental okbazel support #251 •

    PRग़ͯ͠Δͷ͸BazelͷதͷਓΒ͍͠ • Ϛʔδ͸͞Ε͍ͯͳ͍ 27
  9. okbazelͷ੍໿ • Bazelͷ੍໿Λͦͷ··ड͚Δ • DataBindingαϙʔτ͸PR͕ग़͍ͯΔ • Add Android data binding

    support • Kotlinαϙʔτ͸ݱঢ়Ͳ͏ͳΔ͔Θ͔Βͳ͍ • Google͕։ൃ͍ͯ͠Δͷ͸େ͖͍ 28