Pro Yearly is on sale from $80 to $50! »

全て S になる -RxJava と LWS を持ち込む楽しさ-

全て S になる -RxJava と LWS を持ち込む楽しさ-

DroidKaigi 2017 day 1, 17:10 JST

Dd17014e380450cfed5d55ff20fa3dfd?s=128

Ryutaro Miyashita

March 09, 2017
Tweet

Transcript

  1. ⰋגS חז׷ 3Y+BWBה-84׾䭯׍鴥׬嚂׃ׁ   

  2. SZVHPP㹧♴畆㣐龤 $IBU8PSL،فٔ؛٦ءّٝꟚ涪鿇ٔ٦ت٦

  3. ⰋגS חז׷

  4. ⰋגStream חז׷

  5. Ⰻג4USFBNחז׷

  6. +BWBך♧⢽   -BNCEB䒭   ًاحسٔؿ؋ٖٝأ   4USFBN0QUJPOBM"1*

    +BWBדכ圫ղז鎉铂堣腉䓼⻉ָ遤׻׸גְ׷
  7. +BWBךغ٦آّٝ "OESPJE/הⰟחאְח"OESPJEח׮+BWBָ勻׋ IUUQTEFWFMPQFSBOESPJEDPNHVJEFQMBUGPSNKKBDLIUNM       

     
  8. +BDLךⵖ秈 +BDLJTOPUTJMWFSCVMMFU  *OTUBOU3VOָ⢪ִתׇ׿  ؽٕسָ鹼ְדׅ  ♧鿇ؽٕس堣腉ָ⢪ִתׇ׿  ⢽

    TISJOL3FTPVSDFT  ،فٔךغ؎شٔ؟؎ؤ׮㣐ֹֻז׶תׅ   4USFBNװ0QUJPOBMכ"1*-W⟃♳ָ䗳銲דׅ  植㖈"OESPJEYךءؑ،כדׅ   ⢪ִ׷״ֲחז׷ךכ勻⚅ IUUQTHJUIVCDPNTZTZBHJBOESPJENFUIPEDPVOUT IUUQTEFWFMPQFSBOESPJEDPNBCPVUEBTICPBSETJOEFYIUNM
  9. 劢勻׾⯓《׶ׅ׷

  10. 3FUSPMBNCEB 3Y+BWB -JHIUXFJHIU4USFBN"1*

  11. 3FUSPMBNCEB 3Y+BWB -JHIUXFJHIU4USFBN"1*

  12. 3FUSPMBNCEBד䩛חⰅ׷+BWBך堣腉  -BNCEB䒭  ًاحسٔؿ؋ٖٝأ  USZXJUISFTPVSDFT  0CKFDUTSFRVJSF/PO/VMM 

    رؿٕؓزًاحس  JOUFSGBDFⰻךTUBUJDًاحس -BNCEB䒭הًاحسٔؿ؋ٖٝأ⵸䲿דֶ鑧׾鹌׭תׅ IUUQTHJUIVCDPNFWBOUHSBEMFSFUSPMBNCEB 䩛חⰅ׷׮ךכ鎉铂堣腉鿇ⴓ
  13. 3FUSPMBNCEB +BWBך-BNCEB䒭׾"OESPJEפ        

    
  14.          3FUSPMBNCEB

    +BDLず圫חDPNQBUJCJMJUZ0QUJPOTד+BWB׾䭷㹀ׅ׷
  15. 3FUSPMBNCEB 3Y+BWB -JHIUXFJHIU4USFBN"1*

  16. 3Y+BWB  "OESPJE"1*ך汒ְהֿ׹׾酡׏גֻ׸תׅ  ꬊず劍Ⳣ椚  ؎كٝز鸐濼  4USFBN"1*ך״ֲח׮堣腉׃תׅ 

    ؝ؙٖءّٝ乼⡲  ꬊず劍٥ず劍׾䠐陎ׇ׆חⳢ椚׾剅ֽתׅ  ًاحسثؑ٦ٝח״׷鎸鶢  أ؛آُ٦ٓ٦׾⢪׏׋أٖحسⴖ׶剏ִ 3FBDUJWF&YUFOTJPOTGPS+7. IUUQTHJUIVCDPN3FBDUJWF93Y+BWB
  17. 3Y+BWBXJUI  3Y#JOEJOH   "OESPJEך7JFXה3Y+BWB׾穠ןאֽ׷  3Y"OESPJE  

    6*أٖحس欽ךأ؛آُ٦ٓ٦׾䲿⣘ׅ׷  3Y-JGFDZDMF   "OESPJEך歗꬗ٓ؎ؿ؟؎ؙٕה穠ןאֽ׷ 3FBDUJWF&YUFOTJPOTGPS+7. IUUQTHJUIVCDPN+BLF8IBSUPO3Y#JOEJOH IUUQTHJUIVCDPN3FBDUJWF93Y"OESPJE IUUQTHJUIVCDPNUSFMMP3Y-JGFDZDMF
  18. 3Y+BWB      +BWB4USFBN"1*ٓ؎ؙז؝ؙٖءّٝ乼⡲ 
  

     3Y+BWB 4USFBN
  19. 3Y+BWB         

     ءٝفٕזꬊず劍Ⳣ椚
  20. 3Y+BWB         

     ءٝفٕזꬊず劍Ⳣ椚 فٔإحزׁ׸׋أٖحسف٦ٕ׾⢪׏ג 4JOHMFGSPN$BMMBCMFךⳢ椚׾㹋遤
  21. 3Y+BWB         

     ءٝفٕזꬊず劍Ⳣ椚 3Y"OESPJE׾⢪׏ג6*أٖحسד穠卓׾《䖤
  22.          

    3Y+BWB ずׄⳢ椚׾"TZOD5BTLד剅ֻה               
  23. 3Y+BWB         

          6TFDBTFنةٝ׾䬃׃׋׵8FC"1*ה鸐⥋׃ג穠卓׾邌爙
  24. 3Y+BWB         

     6TFDBTFنةٝ׾䬃׃׋׵8FC"1*ה鸐⥋׃ג穠卓׾邌爙
  25. 3Y+BWB         

     6TFDBTFنةٝ׾䬃׃׋׵8FC"1*ה鸐⥋׃ג穠卓׾邌爙 3Y#JOEJOH׾⢪׏גؙٔحؙ؎كٝز׾ 3Y+BWBדعٝسؚٔٝ 6*أٖحس
  26. 3Y+BWB         

     6TFDBTFنةٝ׾䬃׃׋׵8FC"1*ה鸐⥋׃ג穠卓׾邌爙 ⟃♴ךⳢ椚׾ٙ٦ؕ٦أٖحسחⴖ׶剏ִ
  27. 3Y+BWB         

     6TFDBTFنةٝ׾䬃׃׋׵8FC"1*ה鸐⥋׃ג穠卓׾邌爙 ؙٔحؙ؎كٝز׾8FC"1*鸐⥋ך穠卓ח㢌䳔
  28. 3Y+BWB         

     6TFDBTFنةٝ׾䬃׃׋׵8FC"1*ה鸐⥋׃ג穠卓׾邌爙 ⟃♴ךⳢ椚כ6*أٖحسחⴖ׶剏ִ
  29. 3Y+BWB         

     6TFDBTFنةٝ׾䬃׃׋׵8FC"1*ה鸐⥋׃ג穠卓׾邌爙 穠卓ך「ֽ《׶הⳢ椚
  30. 3Y+BWB         

     6TFDBTFنةٝ׾䬃׃׋׵8FC"1*ה鸐⥋׃ג穠卓׾邌爙
  31. 3Y+BWB׾䭯׍鴥׬嚂׃ׁ  ؝ؙٖءّٝ乼⡲װꬊず劍Ⳣ椚ָأحؗٔ剅ֽתׅ  طأزָ帾ֻז׶תׇ׿  ♳ַ׵♴חⳢ椚׾剅ְגְֽל0,דׅ  0CTFSWBCMF4USFBN 

    'MVFOU*OUFSGBDF  3Y#JOEJOHזו"OESPJE鸬䵿ٓ؎ـָٓٔ⯍㹋׃גְתׅ  7JFXך֮׵ײ׷؎كٝز׾3Y+BWBדⳢ椚〳腉דׅ  ؎كٝزך崧ꆀⵖ䖴׮知⽃חדֹתׅ  ⢽ 俑㶵Ⰵ⸂׾NT׀החⵖ䖴ׅ׷ 5IFGVOPG3Y+BWB
  32. 3FUSPMBNCEB 3Y+BWB -JHIUXFJHIU4USFBN"1*

  33. -JHIUXFJHIU4USFBN"1*  +BWBד䲿⣘ׁ׸׋4USFBN"1*ךغحؙه٦زדׅ  4USFBN׌ֽדזֻ0QUJPOBMװ0CKFDUT׮֮׶תׅ  杝荈ח䭁䓸ׁ׸׋"1*ָ欽䠐ׁ׸גְתׅ  3Y+BWBה穈׫さ׻ׇ׷ה葺ְֿהָ֮׶תׅ 4USFBN"1*GSPN+BWBSFXSJUUFOPOJUFSBUPSTGPS+BWBBOECFMPX

    IUUQTHJUIVCDPNB//J.0/-JHIUXFJHIU4USFBN"1*
  34. -JHIUXFJHIU4USFBN"1*  4USFBN"1*  ؝ؙٖءّٝ乼⡲"1*  0QUJPOBM"1*  ⦼ָזְַ׮׃׸זְֿה׾邌植דֹ׷"1* 

    &YDFQUJPOBM"1* 杝荈   㹑鎉涸ח鎸鶢דֹ׷USZDBUDIך➿剏"1* 4USFBN"1*GSPN+BWBSFXSJUUFOPOJUFSBUPSTGPS+BWBBOECFMPX IUUQTHJUIVCDPNB//J.0/-JHIUXFJHIU4USFBN"1*
  35. -JHIUXFJHIU4USFBN"1* 4USFBN"1*  כו׸ַ㔐׌ֽ      

      
  36. -JHIUXFJHIU4USFBN"1* 0QUJPOBM"1* 䖞勻ך剅ֹ倯   ׾⢪׏׋剅ֹ倯  

  37. -JHIUXFJHIU4USFBN"1* 6TFDBTF'SBHNFOU.BOBHFSOE'SBHNFOU#Z5BH        

    .Z'SBHNFOUך؎ٝأةٝأ׾《䖤ׅ׷תדך崧׸׾䩛竲ֹ涸ח鎸鶢ׅ׷
  38. -JHIUXFJHIU4USFBN"1* 6TFDBTF'SBHNFOU.BOBHFSOE'SBHNFOU#Z5BH .Z'SBHNFOUך؎ٝأةٝأ׾《䖤ׅ׷תדך崧׸׾㹑鎉涸ח鎸鶢דֹ׷      

  39. -JHIUXFJHIU4USFBN"1* 6TFDBTF'SBHNFOU.BOBHFSOE'SBHNFOU#Z5BH .Z'SBHNFOUך؎ٝأةٝأ׾《䖤ׅ׷תדך崧׸׾㹑鎉涸ח鎸鶢דֹ׷    杝荈 

  40. -JHIUXFJHIU4USFBN"1* 0QUJPOBM"1*ך岣䠐挿 ⽬ꤹ   ⴱ劍⻉ׅ׷הֹח׾➿Ⰵׅ׷  

  41. -84׾䭯׍鴥׬嚂׃ׁ  طأزָ帾ֻז׶תׇ׿  ♳ַ׵♴חⳢ椚׾剅ְגְֽל0,דׅ  'MVFOU*OUFSGBDF  ؝ؙٖءّٝ乼⡲׾⤑ⵃח遤ִתׅ 

    ⦼ך꧊鎘׾圫ղז䕎ד遤ֲֿהָדֹתׅ  0QUJPOBMכ/1&ה䨌ֲ䓼⸂ז娀㐻הז׶תׅ  "OESPJE4%,כ⡦ָOVMM׾鵤ַׅⴓַ׶תׇ׿  ת׋כ'SBHNFOUך《䖤זו䩛竲ָֹ撕꧟זⳢ椚׾
 أحؗٔה鎸鶢ׅ׷ֿהָדֹ׷״ֲחז׶תׅ 5IFGVOPG-JHIUXFJHIU4USFBN"1*
  42. 3Y+BWB -JHIUXFJHIU4USFBN"1*

  43. ؒٓ٦عٝسؚٔٝ㉏겗 &SSPSIBOEMJOHQSPCMFNPG3Y+BWB   
 
 
 
 
 


    
 
 
 
  
  44. ؒٓ٦عٝسؚٔٝ㉏겗 &SSPSIBOEMJOHQSPCMFNPG3Y+BWB   
 
 
 
 
 


    
 
 
 
   鷿⚥דؒٓ٦ָ鸐濼ׁ׸׋㜥さ
  45. ؒٓ٦عٝسؚٔٝ㉏겗 &SSPSIBOEMJOHQSPCMFNPG3Y+BWB   
 
 
 
 
 


    
 
 
 
   PO&SSPSָ㹋遤ׁ׸飑铣ָ穄✪ׅ׷
  46. ؒٓ٦عٝسؚٔٝ㉏겗 &SSPSIBOEMJOHQSPCMFNPG3Y+BWB  3Y+BWBך㣟侁כPO&SSPSח5ISPXBCMF׾䫎־׷  PO&SSPSָ勻׷ה♧鸬ך飑铣כ穄✪׃תׅ  ⢽ִל8FC"1*ךؙٔؒأزח㣟侁׃׋׵  ׮ֲ♧䏝ِ٦ؠ٦ָٔزٓ؎ׅ׸ל䧭⸆ׅ׷ַ׮

     ד׮نةؙٝٔحؙ؎كٝزכ׮ֲ飑铣穄✪˘˘  䟝㹀ⰻך㣟侁הծ䠐㔳׃זְ⢽㢩׾ⴓֽ׋ְ  1BJS#PPMFBO 5׾⢪׏ג姻や׾溪⩝⦼ד然ַ׭׷  1BJS*OUFHFS 5׾⢪׏גؒٓ٦؝٦س׾⡲׷  PO&SSPS3FUVSOװPO&SSPS3FTVNF/FYU׾⢪ֲ
  47. &JUIFS5ZQF .PSFCFUUFS3Y+BWBFSSPSIBOEMJOH        

                    IUUQTHJTUHJUIVCDPNSZVHPPEFEDCCCBDDCDG  -FGU㘗ַ3JHIU㘗ך⦼
 ׾䗳׆䭯׏גְ׷  鎉ְ䳔ִ׸לծו׍׵ַ
 ך⦼כ䗳׆䭯׏גְזְ  ⦼׾䭯׏גְזְֿה׾ծ
 0QUJPOBMד邌植ׅ׷  䢪⢽涸ח3JHIU⩎ח
 姻הז׷⦼׾Ⰵ׸׷
  48. &JUIFS5ZQF .PSFCFUUFS3Y+BWBFSSPSIBOEMJOH        

          
  49. &JUIFS5ZQF .PSFCFUUFS3Y+BWBFSSPSIBOEMJOH        

           姻ך⦼כ4USJOH 頾ך⦼כ5ISPXBCMF׾䭯א
 &JUIFS㘗׾鸐濼ׅ׷0CTFSWBCMF׾㹀纏ׅ׷
  50. &JUIFS5ZQF .PSFCFUUFS3Y+BWBFSSPSIBOEMJOH        

           ؙٔؒأز䧭⸆ך㜥さכ&JUIFSSJHIU׾鸐濼
  51. &JUIFS5ZQF .PSFCFUUFS3Y+BWBFSSPSIBOEMJOH        

           ؙٔؒأز㣟侁ך㜥さכ&JUIFSMFGU׾鸐濼
  52. &JUIFS5ZQF .PSFCFUUFS3Y+BWBFSSPSIBOEMJOH        

           䠐㔳׃זְ㣟侁ך㜥さכPO&SSPSד⢽㢩׾鸐濼
  53. &JUIFS5ZQF .PSFCFUUFS3Y+BWBFSSPSIBOEMJOH     ך㣟侁 ך䧭⸆ ⟃㢩ד涪欰׃׋⢽㢩 

  54. &JUIFS5ZQF .PSFCFUUFS3Y+BWBFSSPSIBOEMJOH     ך㣟侁 ך䧭⸆ ⟃㢩ד涪欰׃׋⢽㢩 

    䟝㹀ⰻך㣟侁׾「ֽ《׸׷״ֲחז׷
  55. Ⰻג4USFBNחז׷

  56.          

    Ⰻג4USFBNחז׷          4USFBN 0QUJPOBM 3Y+BWB
  57.  "OESPJE،فٔ׮+BWBך䛷䜋׾「ֽ׵׸׷  +BDLכת׌㹋欽媮ꥡדכזְ  3FUSPMBNCEBד  -BNCEB䒭הًاحسٔؿ؋ٖٝأ  +BWBך4USFBN"1*0QUJPOBM"1*כ䓼⸂

     ؝ؙٖءّٝ乼⡲כ4USFBN"1*  ⦼ָ㶷㖈׃זְֿה׾邌植דֹ׷0QUJPOBM"1*  暴ח0QUJPOBMכ"OESPJE4%,הך湱䚍ָ葺ְ  ⢽ 'SBHNFOU.BOBHFS  3Y+BWBכ"OESPJE4%,ךַײְהֿ׹ח䩛ָ㾈ֻ  ꬊず劍Ⳣ椚ה؎كٝزغأ  ؝ؙٖءّٝ乼⡲׮〳腉 Ⰻג4USFBNחז׷
  58.  3Y+BWB-JHIUXFJHIU4USFBN"1*  0CTFSWBCMF4USFBNװ4USFBN׾䪔ֲ  圫ղז⦼װ؎كٝز׾㢌⻉ׇׁג穠卓׾《䖤ׅ׷  'MVFOUJOUFSGBDFח״׷崧׸׷״ֲז؝٦س  ♳ַ׵♴פⳢ椚ָ崧׸גְֻ

     ًاحسثؑ٦ٝד邌植  ؽُ٦ך؎كٝزװؽآطأٗآحؙח⣛׵זְ  ⰋגךⳢ椚ָずׄ״ֲז䕎ד邌植דֹ׷״ֲחז׷  Ⰻג4USFBNחז׷  Ⰻג4חז׷ Ⰻג4USFBNחז׷
  59. IUUQTHJUIVCDPNSZVHPP4USFBN%FNP رٌ،فٔ %FNPBQQT

  60. ⰋגS חז׷ 3Y+BWBה-84׾䭯׍鴥׬嚂׃ׁ   