Slide 1

Slide 1 text

"OESPJE4UVEJPͷ
 ςϯϓϨʔτΛ೷͍ͯΈΑ͏ LJVDIJLFJTVLF
 4IJCVZBBQL

Slide 2

Slide 2 text

໦಺ܒี w ৬ۀɿ"OESPJEΤϯδχΞ݉ҭࣇύύ w झຯͰ࡞ͬͨΞϓϦɿʮΒ͘ͰΜʯ w Ϟοτʔɿ໌೔ͷࣗ෼ʹ༏͍͠ίʔυΛॻ͘ w 4/4
 5XJUUFS!GFJ@LPNF
 (JUIVC!LJVDIJLFJTVLF
 2JJUB!L@LFJTVLF

Slide 3

Slide 3 text

࠷ۙͷΞΫςΟϏςΟ IUUQTXXXZPVUVCFDPNXBUDI WU(#W:M2.+UT

Slide 4

Slide 4 text

$MFBO"SDIJUFDUVSF
 5FNQMBUFGPS,PUMJO w %BHHFS w 3Y+BWB w 3FBMN w $POTUSBJOU-BZPVU w 3FUSPpU w 4XBHHFS w BOESPJELUY w %BUB#JOEJOH w 7JFX.PEFM IUUQTHJUIVCDPNLJVDIJLFJTVLF"OESPJE4UVEJP$MFBO"SDIJUFDUVSFUFNQMBUF GPS,PUMJO

Slide 5

Slide 5 text

%SPJE,BJHJͰग़͖ͯͨ ΪϞϯ

Slide 6

Slide 6 text

ςϯϓϨʔτͬͯ
 Ͳ͏΍ͬͯ࡞Δͷʁ

Slide 7

Slide 7 text

ςϯϓϨʔτͷத਎Λ ೷͍ͯΈΑ͏

Slide 8

Slide 8 text

ͷલʹɾɾɾ

Slide 9

Slide 9 text

ςϯϓϨʔτ࡞ΕΔͱ Կ͕خ͍͠ͷʁ

Slide 10

Slide 10 text

ςϯϓϨʔτ࡞ΕΔͱʜ w ৽͍͠ը໘Λ࡞Δࡍͷ਽ܗΛࣗ෼޷Έʹ࡞ΕΔ
 ˠඞཁे෼ͳ"DUJWJUZ΍MBZPVUϑΝΠϧ͕Ͱ͖Δ w ΞʔΩςΫνϟΛ࠾༻͢Δࡍͷ਽ܗΛ࡞ΕΔ
 ˠϓϩδΣΫτ಺Ͱ࣮૷ͷΏΒ͗Λ཈ࢭ͢Δ
 ˠఆܕจతʹ࣮૷͢ΔΫϥεΛࣗಈͰ࡞੒͢Δ
 %BHHFSͷ.PEVMF $PNQPOFOUΫϥεͳͲ w ৽نϓϩδΣΫτ࡞੒࣌ͷEFQFOEFODZͷॳظઃఆΛ
 ࣗ༝ʹઃఆͰ͖Δ
 ˠʮϥΠϒϥϦԿ͕͍ΔΜ͚ͩͬʜʯ͔Βղ์͞ΕΔ

Slide 11

Slide 11 text

վΊͯɺςϯϓϨʔτͷ த਎Λ೷͍ͯΈΑ͏

Slide 12

Slide 12 text

ͦ΋ͦ΋ςϯϓϨʔτͬͯʁ

Slide 13

Slide 13 text

Ͳ͜ʹ͋Δͷʁ w .BD
 "QQMJDBUJPOT"OESPJE4UVEJPBQQ$POUFOUT QMVHJOTBOESPJEMJCUFNQMBUFTBDUJWJUJFT w 8JOEPXT
 "/%30*%@456%*0@'0-%&3 aQMVHJOTaBOESPJEaMJCaUFNQMBUFTaBDUJWJUJFTa

Slide 14

Slide 14 text

ϑΝΠϧߏ੒ͲΜͳײ͡ʁ BaseActivity + globals.xml.ftl + recipe_fragmentxml.ftl + recipe.xml.ftl + template_basic_activity_fragment.png + template_basic_activity.png + template.xml + root + res | + layout | + activity_fragment_container.xml.ftl | + fragment_simple.xml.ftl + src + app_package + SimpleActivity.java.ftl + SimpleActivity.kt.ftl + SimpleActivityFragment.java.ftl + SimpleActivityFragment.kt.ftl

Slide 15

Slide 15 text

UFNQMBUFYNM

Slide 16

Slide 16 text

UFNQMBUFYNM w ςϯϓϨʔτશମͰ࢖͑ΔύϥϝʔλΛઃఆͰ͖Δ w 4USJOH #PPMFBO &OVN w ςϯϓϨʔτͷΠϝʔδը૾ΛઃఆͰ͖Δ w ύϥϝʔλΛݩʹSFDJQFYNMGUMΛ࣮ߦ͢Δ

Slide 17

Slide 17 text

SFDJQFYNMGUM 
 <#if generateKotlin> <#else> #if> 
 
 
 


Slide 18

Slide 18 text

SFDJQFYNMGUM w 'SFF.BLFSͰॻ͔Ε͍ͯΔ ֦ுࢠ͕GUMͷϑΝΠϧ 
 IUUQTGSFFNBSLFSBQBDIFPSH w ϑΝΠϧͷੜ੒ Ϛʔδ 0QFOΛߦ͑Δ w ϑΥϧμͷੜ੒Λߦ͑Δ w EFQFOEFODZͷઃఆΛߦ͑Δ

Slide 19

Slide 19 text

4JNQMF"DUJWJUZLUGUM package ${escapeKotlinIdentifiers(packageName)} import android.os.Bundle <#if hasAppBar> import android.support.design.widget.Snackbar import android.support.v7.app.AppCompatActivity <#else> import ${superClassFqcn} #if> import kotlinx.android.synthetic.main.${layoutName}.* class ${activityClass} : ${superClass}() { override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) setContentView(R.layout.${layoutName}) <#if hasAppBar> setSupportActionBar(toolbar) fab.setOnClickListener { view -> Snackbar.make(view, "Replace with your own action", Snackbar.LENGTH_LONG).setAction("Action", null).show() } #if>

Slide 20

Slide 20 text

4JNQMF"DUJWJUZLUGUM w SPPUҎԼʹ਽ܗͱͳΔϑΝΠϧ܈͕഑ஔ͞Ε͍ͯΔ w SPPUTSDdΫϥεܥͷϑΝΠϧɻ w SPPUSFTdϦιʔεܥͷϑΝΠϧ w SPPU্هҎ֎ͷϑΝΠϧ "OESPJE.BOJGFTU CVJMEHSBEMF

Slide 21

Slide 21 text

·ͱΊ w ςϯϓϨʔτΛࣗ࡞Ͱ͖Δͱෳ਺ͷΫϥεΛಉ࣌ʹ࡞੒ͱ͔ɺ ΞʔΩςΫνϟʹଇͬͨΫϥεઃܭΛ࡞ͬͨΓͱ͔Ͱ͖ΔΑʂ w UFNQMBUFYNMͰ͸ςϯϓϨʔτ࡞੒ʹඞཁͳύϥϝʔλΛ
 ઃఆͰ͖ΔΑʂ w SFDJQFYNMGUMͰ͸ϑΝΠϧ࡞੒ͷΞϨίϨΛઃఆͰ͖ΔΑʂ w SPPUҎԼʹੜ੒͢Δ਽ܗΛ഑ஔ͢ΔΑʂ

Slide 22

Slide 22 text

ৄ͘͠͸8FCͰʂ
 IUUQTHPPHM#[R&3