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

buck, okbuck そして okbazel

Avatar for Ryosuke Horie Ryosuke Horie
March 23, 2017
720

buck, okbuck そして okbazel

Avatar for Ryosuke Horie

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