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

アプリ「復習帳」開発にまつわるエトセトラ

Kamu
August 31, 2019

 アプリ「復習帳」開発にまつわるエトセトラ

2019年8月31日
JXUGC #25 最新情報アップデート&LT 大会
発表資料

Kamu

August 31, 2019
Tweet

More Decks by Kamu

Other Decks in Programming

Transcript

  1. ࣗݾ঺հ w தଜɹ૱ w 5XJUUFS͔Ή!NVBL@Y w 9BNBSJO'PSNTྺ೥΄Ͳ w ͓࢓ࣄ w

    ཱྀߦΨΠυΞϓϦɾڭҭػؔ޲͚ΞϓϦͳͲ w झຯΞϓϦ w ৭͠Β΂෮शா w ϥΠϒϥϦ w "J'PSNTγϦʔζ 4FUUJOHT7JFX &⒎FDUT %JBMPHTFUD
  2. ओͳ࢖༻ϥΠϒϥϦɾαʔϏε w 1SJTN w 3FBDUJWF1SPQFSUZ w ''*NBHF-PBEJOH w "QQ$FOUFS$SBTI"OBMZUJDT w

    "J'PSNTγϦʔζ w (PPHMF#PPLT"1*T w PQFO#% w "[VSF'VODUJPOT w "[VSF42-%BUBCBTF w "[VSF"%#$
  3. .PEFMΧΦε໰୊ 7JFX 7JFX .PEFM .PEFM w .PEFMͷ໾ׂ͕ଟ͗͢Δ w ೖग़ྗͷςετΊΜͲ͍͘͞ w

    7JFX.PEFMͰͷ΍Γ͘Γ΋ΊΜͲ͍͘͞ ೖग़ྗ ґଘํ޲ .PEFM" .PEFM#
  4. .PEFM෼ׂ͘Β͍Ͱղܾʂ 7JFX 7JFX .PEFM .PEFM 4UPSFతͳ .PEFM 7JFX.PEFM͔Β ࢖͏.PEFMT ೖग़ྗ

    .PEFMT w Θ͔Δͱ͚ͩ͜౎߹Α͘ͱΓ͍Εͨ w 8FC΍ετϨʔδͱͷೖग़ྗΛִ཭ w ґଘͷํ޲ΛҰํ޲ʹ w 4UPSFͰΞϓϦͷঢ়ଶΛҰݩ؅ཧ ೖग़ྗ ґଘํ޲ 4JOHMFUPO .PEFM" .PEFM# %C.PEFM "QJ.PEFM
  5. w ෳ਺1SPWJTJPOJOH1SPpMF΋0, w BQL෼ׂ΋0, w 4UPSF΁ͷ഑৴΋ઐ༻ͷFYUFOTJPOΛ࢖͑͹γʔϜϨε w "QQMF"QQ4UPSF w (PPHMF1MBZ

    w όʔδϣϯίʔυࣗಈ࠾൪ w .PCJMF"QQ5BTLTGPSJ04BOE"OESPJE "[VSF%FW0QT1JQFMJOFTͰղܾ
  6. ࣮૷ͷϙΠϯτ w J045PEBZ&YUFOTJPO w ผϓϩδΣΫτ͕ඞཁʢ74GPS.BDʹςϯϓϨ͋Γʣ w FYUFOTJPOଆ͔ΒϝΠϯΞϓϦͷอଘྖҬ͸ಡΊͳ͍ w 4IBSFEྖҬʹอଘ৔ॴΛҠಈͨ͠ w

    FYUFOTJPOଆ͔Β/&54UBOEBSEଆʹΞΫηεͰ͖ͳ͍ w ϑΝΠϧϦϯΫΛ࢖ͬͨ w "QQ8JEHFU w "QQ8JEHFU1SPWJEFSͷαϒΫϥεΛ࡞Δ w 3FNPUF7JFXTܦ༝Ͱ஋ߋ৽ w -JTU7JFX࢖ͬͯΔ৔߹͸ʹ+PC4DIFEVMFSඞཁ w /&54UBOEBSEଆ͸ར༻͠์୊
  7. খٕॏͶ͕͚Ͱܰݮ͢Δ w 'BTU3FOEFSFST w 9BNBSJO'PSNTҎ߱͸نఆͰ༗ޮ w ϨΠΞ΢τѹॖ w ίϯύΠϧࡁΈόΠϯσΟϯά w

    ͓͕ۚ͋Ε͹"05 4UBDL-BZPVU$PNQSFTTFE-BZPVU*T)FBEMFTTUSVF %BUB5FNQMBUFY%BUB5ZQFlNPEFM#PPL(SPVQ -BCFM5FYU\#JOEJOH5JUMF^z
  8. $VTUPN3FOEFSFSͰղܾ w ্هΦϓγϣϯΛࢦఆ্ͨ͠ Ͱɺ͞ΒʹΧελϚΠζ w IUUQTHJTUHJUIVCDPN -ZOP%FTV CEDGB BBCC UIJT0O"OESPJE

    4FU*T4NPPUI4DSPMM&OBCMFE GBMTF ੾Γସ͑࣌ʹεΫϩʔϧͳ͠
 UIJT0O"OESPJE 4FU*T4XJQF1BHJOH&OBCMFE GBMTF εϫΠϓʹΑΔλϒҠಈͳ͠
  9. 4FUUJOHT7JFXͰͰ͖Δ͜ͱ ৄࡉ͸3FBE.Fࢀর IUUQTHJUIVCDPNNVBL"J'PSNT4FUUJOHT7JFXCMPCNBTUFS3&"%.&KBNE w 4FQBSBUPSͷ৭ͷઃఆ w બ୒͞Εͨ࣌ͷ৭ͷࢦఆ w Ϧετͷઌ಄ɾ࠷ޙ΁ͷεΫϩʔϧ w

    ηΫγϣϯ͝ͱͷදࣔɾඇදࣔͷઃఆ w ηΫγϣϯͷϑολʔͷઃఆ w %BUB5FNQMBUFͷద༻ w ηΫγϣϯ಺ͰυϥοάυϥοάʹΑ Δฒ΂ସ͑ w ηϧͷϑΥϯτɾ৭ͳͲ֎؍ͷઃఆ w $FMMӈ্ʹώϯτςΩετͷઃఆ w શͯͷηϧͰͷΞΠίϯઃఆɺͦΕ Β͢΂ͯʹϝϞϦΩϟογϡΛద༻ w ΞΠίϯͷؙ֯ઃఆ w ༷ʑͳఆٛࡁΈ$FMMͷ࢖༻ w 9BNBSJO'PSNTͷ7JFX$FMM࢖༻
  10. ఆٛࡁΈ$FMM w -BCFM$FMM w $PNNBOE$FMM w #VUUPO$FMM w 4XJUDI$FMM w

    $IFDLCPY$FMM w 3BEJP$FMM ৄࡉ͸3FBE.Fࢀর IUUQTHJUIVCDPNNVBL"J'PSNT4FUUJOHT7JFXCMPCNBTUFS3&"%.&KBNE w /VNCFS1JDLFS$FMM w 5JNF1JDLFS$FMM w %BUF1JDLFS$FMM w 5FYU1JDLFS$FMM w 1JDLFS$FMM w &OUSZ$FMM
  11. ࣮૷ʹඞཁͳ΋ͷ w *O"QQ#JMMJOH1MVHJOGPS9BNBSJOBOE8JOEPXT w "OESPJE͸͜Ε͕ඞཁɻJ04͸Կ΋ແͯ͘΋࣮૷Մೳɻ w "[VSF"DUJWF%JSFDUPSZ#$ w ೝূػೳɻ୭͕ߪೖ͔ͨ͠෼͔Βͳ͍ͱ͍͚ͳ͍ͷͰɻ w

    "[VSF'VODUJPOT "[VSF42-%BUBCBTF w Ϩγʔτݕূ͸αʔόʔͰߦͬͨํ͕ྑ͍Β͍͠ w ఆظߪಡߋ৽ͷͨΊʹҰఆִؒͰͷόον͕ඞཁ w J04ͷ৔߹͸ঢ়ଶߋ৽௨஌ͷड͚औΓઌ͕ඞཁ
  12. ߪೖॲཧ 4UPSF %# "%#$ "QQ 'VODUJPOT ᶃೝূ ᶄ6TFS*E ᶉΞΠςϜ৘ใ ᶇߪೖݕূɾొ࿥

    ᶅߪೖϦΫΤετ ᶆߪೖ׬ྃϨγʔτ ᶈߪೖ৘ใ w Ϩγʔτͷݕূ͸αʔόʔଆ 'VODUJPOT Ͱߦ͏ w ݕূΛ௨աͨ͠৔߹ͷΈొ࿥
  13. ظݶߋ৽ॲཧ 4UPSF %# 'VODUJPOT ᶃର৅ऀநग़ ᶄ໰͍߹Θͤ ᶅ࠷৽Ϩγʔτ ᶆมԽ͕͋ͬͨΒߋ৽ J04͸ঢ়ଶߋ৽௨஌͕དྷΔ͜ͱ͕͋Δ w

    ೔ஔ͖ʹ࣮ߦ w ΞϓϦଆ͸ىಈ࣌ʹ'VODUJPOTʹΞΠςϜΛ໰͍߹ΘͤΔ w ঢ়ଶߋ৽௨஌ͰΞοϓάϨʔυɾμ΢ϯάϨʔυʹରԠ͢Δ
  14. અ໿ w "[VSF'VODUJPOTͷݺͼग़͠ճ਺ΛݮΒ͢ w ظݶ֬ೝΛຖճߦΘͳ͍ w ϩάΠϯࡁΈͰϩʔΧϧอଘͨ͠ظݶ͕੾ΕͨϢʔβʔ ͷΈ໰͍߹ΘͤΛߦ͏ w ߋ৽όον͸೔ճ

    w ΞϓϦଆͷظݶ੾ΕʹϚʔδϯอͨͤͯΔͷͰ΋ͬͱ গͳͯ͘΋ྑ͍͔΋ w ্هϲ݄Ͱࠓͷॴɺֹ݄ʙԁఔ౓
  15. 'MFY-BZPVU w $44ͷ΍ͭͷ'PSNT൛ w ંΓฦͯ͠ฒ΂ͨΓͰ͖Δ w ωετΛগͳ͘Ͱ͖ΔՄೳੑ w 8FC͔Βͷਓʹ͓͢͢Ί w

    4UBDL-BZPVUͰࣄ଍ΓΔ͜ͱ͕ଟ͍͕ଘࡏΛ஌͓ͬͯ͘ͱ ྑ͍ w IUUQTEPDTNJDSPTPGUDPNKBKQYBNBSJOYBNBSJO GPSNTVTFSJOUFSGBDFMBZPVUTqFYMBZPVU
  16. 7JTVBM4UBUF.BOBHFS w هड़͕ΊΜͲ͍͘͞ w ಠࣗͷ4UBUFΛ࡞Δͱ͞ΒʹΊΜͲ͍͘͞ w ͨͩ͠7JFXʹִ཭͢Δ͜ͱͰ7.͕͖ͬ͢Γ͢Δ w IUUQTEPDTNJDSPTPGUDPNKBKQYBNBSJOYBNBSJO GPSNTVTFSJOUFSGBDFWJTVBMTUBUFNBOBHFS

    7JTVBM4UBUF.BOBHFS7JTVBM4UBUF(SPVQT 7JTVBM4UBUF(SPVQY/BNF$PNNPO4UBUFT 7JTVBM4UBUFY/BNF/PSNBM 7JTVBM4UBUF4FUUFST 4FUUFS1SPQFSUZ#BDLHSPVOE$PMPS7BMVF-JNF
  17. 9BNBSJO&TTFOUJBMT w 1MVHJOͱͯ͠όϥόϥʹଘࡏ͍ͯͨ͠ػೳΛ·ͱΊͨΓ͠ ͨ΋ͷ w 4FDVSF4UPSBHF w &NBJM w -BVODIFS

    w #SPXTFS w IUUQTEPDTNJDSPTPGUDPNKBKQYBNBSJO FTTFOUJBMT DPOUFYUYBNBSJOYBNBSJOGPSNT
  18. #PUUPN5BC "OESPJE w ্هΦϓγϣϯΛࢦఆ্ͨ͠ Ͱɺ͞ΒʹΧελϚΠζ w IUUQTHJTUHJUIVCDPN -ZOP%FTV CEDGB BBCC

    UIJT0O"OESPJE 4FU*T4NPPUI4DSPMM&OBCMFE GBMTF ੾Γସ͑࣌ʹεΫϩʔϧͳ͠
 UIJT0O"OESPJE 4FU*T4XJQF1BHJOH&OBCMFE GBMTF εϫΠϓʹΑΔλϒҠಈͳ͠
  19. "J'PSNT&⒎FDUT ඪ४ͷίϯτϩʔϧΛΑΓศརʹ͢ΔͨΊͷػೳΛఏڙ͢Δ &⒎FDUTू w 'MPBUJOHrϖʔδͷલ໘ͷ೚ҙͷ৔ॴʹෳ਺ͷϑϩʔςΟϯάͳཁૉ '"#ͳͲ Λ഑ஔ w 'FFECBDLrλονϑΟʔυόοΫޮՌʢ৭΍γεςϜԻʣΛ௥Ճɻ w

    "EE$PNNBOErίϚϯυΛ೚ҙͷWJFXʹ௥Ճ w 4J[F5P'JUrϑΥϯταΠζΛ-BCFMͷେ͖͞ʹௐ੔ w #PSEFSrܩઢͷ௥Ճ w 5P'MBU#VUUPOrϘλϯΛϑϥοτʹ͢Δ "OESPJE ৄࡉ͸3FBE.Fࢀর IUUQTHJUIVCDPNNVBL"J'PSNT&⒎FDUTCMPCNBTUFS3&"%.&KBNE
  20. "J'PSNT4FUUJOHT7JFX ඪ४5BCMF7JFXͱͷҧ͍ w 4FQBSBUPSͷ৭ͷઃఆ w બ୒͞Εͨ࣌ͷ৭ͷࢦఆ w Ϧετͷઌ಄ɾ࠷ޙ΁ͷεΫϩʔϧ w ηΫγϣϯ͝ͱͷදࣔɾඇදࣔͷઃఆ

    w ηΫγϣϯͷϑολʔͷઃఆ w %BUB5FNQMBUFͷద༻ w ηΫγϣϯ಺ͰυϥοάυϥοάʹΑΔ ฒ΂ସ͑ ৄࡉ͸3FBE.Fࢀর IUUQTHJUIVCDPNNVBL"J'PSNT4FUUJOHT7JFXCMPCNBTUFS3&"%.&KBNE w ηϧͷϑΥϯτɾ৭ͳͲ֎؍ͷઃఆ w $FMMӈ্ʹώϯτςΩετͷઃఆ w શͯͷηϧͰͷΞΠίϯઃఆɺͦΕΒ͢ ΂ͯʹϝϞϦΩϟογϡΛద༻ w ΞΠίϯͷؙ֯ઃఆ w ༷ʑͳఆٛࡁΈ$FMMͷ࢖༻ w 9BNBSJO'PSNTͷ7JFX$FMM࢖༻
  21. "J'PSNT4FUUJOHT7JFX ఆٛࡁΈ$FMM w -BCFM$FMM w $PNNBOE$FMM w #VUUPO$FMM w 4XJUDI$FMM

    w $IFDLCPY$FMM w 3BEJP$FMM ৄࡉ͸3FBE.Fࢀর IUUQTHJUIVCDPNNVBL"J'PSNT4FUUJOHT7JFXCMPCNBTUFS3&"%.&KBNE w /VNCFS1JDLFS$FMM w 5JNF1JDLFS$FMM w %BUF1JDLFS$FMM w 5FYU1JDLFS$FMM w 1JDLFS$FMM w &OUSZ$FMM
  22. "J'PSNT$PMMFDUJPO7JFX w ެࣜͷΈରԠ w *UFNબ୒ w -BZPVUಠཱ w αΠζՄมԽ w

    &NQUZ7JFX w "J'PSNTͷΈରԠ w άϧʔϓԽ w 1VMM5P3FGSFTI w $FMM5BQ-POH5BQ w -PBE.PSF w ਫฏ॥؀εΫϩʔϧ w ॎ޲͖ͱԣ޲͖ͰΞΠςϜ ਺ม͑Δ