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

Flutter基礎

 Flutter基礎

2020年7月に行われた『日本Androidの会浜松支部 第108回ミーティング』にて行った、ハンズオン時の

https://jaghama.connpass.com/event/180670/

59fbf50f41bdd0ed0e3bbf27859bf99d?s=128

Takuya Ohashi

July 11, 2020
Tweet

Transcript

  1. 'MVUUFS։ൃجૅฤ ೔ຊ"OESPJEͷձ඿দࢧ෦݄ఆྫ ΦΦϋγλΫϠ

  2. ࣗݾ঺հ ΦΦϋγ ϑϦʔϥϯεɾ"OESPJEΞϓϦΤϯδχΞ "$5#&*ODʹࢀըத झຯͰ'MVUUFS ຊ౰ͷझຯ͸εϚϒϥɾ৓ɾϚΫυφϧυ

  3. ࠓ೔΍Δ͜ͱ ɾ'MVUUFSͱ͸ʁ ɾ։ൃ؀ڥͷ४උ ɾࢼ͠ʹ'MVUUFSʹ৮ΕͯΈΑ͏ ɾ͓·͚

  4. ࠓ೔΍Βͳ͍͜ͱ ɾ'MVUUFSͰͷ"OESPJEɺJ04ΞϓϦҎ֎ͷ෼໺ ɾ%BSUͷهड़ ɾઃܭख๏ͳͲ ڭ͍͑ͯͩ͘͞ɻ

  5. 'MVUUFSͱ͸

  6. 'MVUUFSͱ͸ʁ ɾ(PPHMF͕ΦʔϓϯιʔεͰެ։͍ͯ͠Δ ΫϩεϓϥοτϑΥʔϜ։ൃϑϨʔϜϫʔΫ ɾ8FCϑϩϯτΤϯυ΋Ͱ͖·͢ ·ͩ#FUB൛ ɾ"EPCF9%͔ΒϨΠΞ΢τΛు͖ग़͢͜ͱ͕Ͱ͖Δ ޙͰͪΐͬͱ ͚ͩ৮Ε·͢ ɾ04ͷػೳʹେ͖͘ґଘ͢Δ෦෼͸ωΠςΟϒͰ ࣮૷͠ͳ͍ͱ͍͚ͳ͍

    4XJGUͱ͔,PUMJOͱ͔ ɾ։ൃݴޠ͸%BSU
  7. 3FBDU/BUJWFɺ 9BNBSJO'PSNTͱ͔ͱԿ͕ҧ͏ͷʁ

  8. 3FBDU͡Όͳ͍ $͡Όͳ͍ %BSUͰهड़

  9. 3FBDU/BUJWFɺ9BNBSJOͱ͔ͱԿ͕ҧ͏ͷʁ ɾϨΠΞ΢τͷύʔπΛશͯ'MVUUFSͰهड़͍ͯ͠ΔɻͲͪΒ͔ͱ͍ ͏ͱ6OJUZͰΞϓϦ࡞ͬͯΔͷͱಉ͡ײ֮ͩͱࢥ͏ ɾ3FBDU/BUJWF9BNBSJO'PSNTɺ9BNBSJO"OESPJE 9BNBSJOJ04 ͸ωΠςΟϒʹҠৡɺ֤04ͷωΠςΟϒͷ6*͕ݺͼग़͞ΕΔ

  10. 'MVUUFSͰඳը͞Ε͍ͯΔ͔ɺωΠςΟϒͰඳը͞Ε͍ͯΔ͔͸ "OESPJEͰϨΠΞ΢τͷڥքઢΛݟΔͱΘ͔Γ΍͍͢

  11. ωΠςΟϒ࣮૷ͷՕॴ͸ ઢ͕өΔ

  12. ࣮͸6OJUZʹ΋ಉ͡Α͏ͳ ࢓૊ΈͷϥΠϒϥϦ͕͋Δ

  13. 6OJUZ6*8JEHFUT ϦϯΫઌIUUQTBTTFUTUPSFVOJUZDPNQBDLBHFTUPPMTHVJVJXJEHFUT

  14. 6OJUZ6*8JEHFUT

  15. ։ൃ؀ڥͷ४උ

  16. ࠓճ࢖͏πʔϧ ɾ"OESPJE4UVEJPΛ࢖͍·͢ .BDΛར༻ͷํ͸J04Ϗϧυ΋Ͱ͖·͢ɻ

  17. %BSUʹ͍ͭͯ ࡉ͔͍ॻ͖ํͱ͔ৄ͘͠ͳ͍Ͱ͢

  18. %BSUͬͯͲ͏ͳΜʁ ɾBMU+4ͱͯ͠஫໨ΛཋͼͨݴޠɺҰ࣌ظΦϫίϯઆ΋ग़·ͨ͠ɻ %BSU͸ࢮΜͩͱݴΘΕ͔͚ͨͱ͜Ζɺ'MVUUFSͷݴޠʹ࠾༻ ɾ࣍ੈ୅ʁ04ͷ'VDITJBͷ6*ͱΞϓϦέʔγϣϯʹ࠾༻ ɾ+BWB4DSJQUΛॻ͍ͯͨਓͳΒׂͱೖΓ΍ͦ͢͏ͳݴޠ ɾ%BSUνʔϜͷڙड़ %BSU͸ૉ੖Β͍͠ʂ %BSU͕ͳ͍ͱ'MVUUFSͷ)PU3FMPBE͸࣮ݱ͠ͳ͔ͬͨΜͩͥʂʁ  ΄Μͱ͔Α

  19. σβΠϯʹ͍ͭͯ

  20. J1IPOF93ΤϛϡϨʔλ 1JYFMΤϛϡϨʔλ .BUFSJBM$PNQPOFOUTXJEHFUT

  21. J04ͱಉ͡σβΠϯʹ͍ͨ͠

  22. J1IPOF93ΤϛϡϨʔλ 1JYFMΤϛϡϨʔλ $VQFSUJOP J04TUZMF XJEHFUT

  23. ҰॹͷσβΠϯʹ͠ͳ͍ͱٯʹख͕͔͔ؒΔ

  24. ͜͜·ͰͰԿ͔࣭໰͸͋Γ·͔͢ʁ

  25. 'MVUUFSͰ"OESPJEɺJ04ͰΞϓϦΛ࡞Δ

  26. 'MVUUFS%FNP"QQ )FMMP8PSME͡Όͳ͔ͬͨͰ͢

  27. Πϯετʔϧ

  28. 'MVUUFS4%,Λμ΢ϯϩʔυͯ͠ల։

  29. 'MVUUFS4%,ͷ1BUIΛ௨͢ 8JOEPXTͳΒίϚϯυϓϥϯϓτɺ.BDͳΒλʔϛφϧ qVUUFSίϚϯυ͕௨Ε͹0, FYQPSU1"5)1"5)AQXEAqVUUFSCJO .BD 8JOEPXT ɾʮ8JOEPXTΩʔ TʯΛԡͯ͠ɺݕࡧϘοΫεʹʮγεςϜͷৄࡉʯ ɾʮϢʔβʔͷ؀ڥม਺ʯͷʮ1BUIʯΛબ୒ͯ͠ʮฤूϘλϯʯ อଘͨ͠σΟϨΫτϦaqVUUFSaCJO

  30. "OESPJE4UVEJPͰ'MVUUFSϓϥάΠϯΛೖΕΔ

  31. طଘΞϓϦ։ൃͱͷҧ͍

  32. %FNP"QQΛ࣮ߦ͢Δ

  33. ਌ͷإΑΓΑ͘ݟΔ͜ͱʹͳΔը໘ < >ϘλϯΛԡ͢ͱ਺ࣈ͕૿͑ͯ ͍͘αϯϓϧΞϓϦ

  34. ίʔυΛݟͯΈ·͠ΐ͏ DMBTT.Z"QQFYUFOET4UBUFMFTT8JEHFU\ !PWFSSJEF 8JEHFUCVJME #VJME$POUFYUDPOUFYU \ SFUVSO.BUFSJBM"QQ .BUFSJBM5IFNFͷ"QQΫϥεΛCVJME͢Δ UJUMF'MVUUFS%FNP` J045IFNF͸$VQFSUJOP"QQ

    UIFNF5IFNF%BUB  QSJNBSZ4XBUDI$PMPSTCMVF    IPNF.Z)PNF1BHF UJUMF'MVUUFS%FNP)PNF1BHFz   IPNFը໘ʹ.Z)PNF1BHF 8JEHFU Λઃஔ ^ ^
  35. ίʔυΛݟͯΈ·͠ΐ͏ 5FYU  b@DPVOUFS` @DPVUFSม਺Λจࣈྻͱͯ͠ग़ྗ TUZMF5IFNFPG DPOUFYU UFYU5IFNFEJTQMBZ  

    qPBUJOH"DUJPO#VUUPO'MPBUJOH"DUJPO#VUUPO  PO1SFTTFE@JODSFNFOU$PVOUFS ԡ͞Εͨͱ͖ʹQSJWBUFͷJODSFNFOU$PVOUFSΛݺͿ UPPMUJQ*ODSFNFOU  DIJME*DPO *DPOTBEE  
  36. ίʔυΛݟͯΈ·͠ΐ͏ WPJE@JODSFNFOU$PVOUFS \ TFU4UBUF \ @DPVOUFS QSJWBUFͷDPVUFSม਺ΛJODSFNFOU͢Δ ^  ^

  37. ͜͜·ͰͰԿ͔࣭໰͸͋Γ·͔͢ʁ

  38. $PEF-BCΛ΍ͬͯΈΑ͏

  39. $PEF-BCΛ΍ͬͯΈΑ͏ ɾIUUQTDPEFMBCTEFWFMPQFSTHPPHMFDPNDPEFMBCTpSTUqVUUFS BQQQU IUUQTDPEFMBCTEFWFMPQFSTHPPHMFDPNDPEFMBCTpSTUqVUUFSBQQ QU 8SJUFZPVSpSTU'MVUUFSBQQ QBSU 8SJUFZPVSpSTU'MVUUFSBQQ QBSU

  40. Φεεϝͷ$PEF-BC ɾIUUQTDPEFMBCTEFWFMPQFSTHPPHMFDPNDPEFMBCTHPPHMFNBQT JOqVUUFS IUUQTDPEFMBCTEFWFMPQFSTHPPHMFDPNDPEFMBCTqVUUFS DVQFSUJOP "EEJOH(PPHMF.BQTUPB'MVUUFSBQQ (PPHMF.BQ #VJMEJOHB$VQFSUJOPBQQXJUI'MVUUFS

  41. ͓·͚

  42. ωΠςΟϒ "OESPJEJ04  ͷॲཧΛݺͼग़͢

  43. ωΠςΟϒίʔυݺͼग़͢ํ๏ ɾ1MBUGPSN$IBOOFM ɾ&WFOU$IBOOFM ɾ1MBUGPSN7JFX

  44. 1MBUGPSN$IBOOFM ɾ'MVUUFSଆ͔ΒωΠςΟϒίʔυΛݺͼग़͢ ɾωΠςΟϒଆͰॲཧΛ࣮ߦ͠ɺ໭Γ஋Λฦ͢ αϯϓϧ͸'MVUUFSTELͷ FYBNQMFͷϓϩδΣΫτʹͯʂ ɾ'MVUUFSͰωΠςΟϒͷػೳΛ࢖͏1MVHJO͸େମ͜Ε

  45. 1MBUGPSN7JFX ωΠςΟϒͷ7JFXΛ'MVUUFSͷ ը໘ʹඳըͰ͖Δػೳ "OESPJE7JFXɺ6J,JU7JFX

  46. 9%UP'MVUUFS

  47. "EPCF9%Ͱ࡞ͬͨ΋ͷΛ'MVUUFSͷ8JEHFUॻ͖ग़ͯ͘͠ΕΔ ɾ"EPCF9%ʹϓϥάΠϯ ʮ9%UP'MVUUFSʯΛΠϯετʔϧ ɾ'MVUUFSϓϩδΣΫτʹʮBEPCF@YEʯ ϓϥάΠϯΛΠϯετʔϧ

  48. 9%͔ΒEBSUϑΝΠϧ͕ॻ͖ग़͞ΕΔ

  49. ॻ͖ग़͍ͨ͠΋ͷ

  50. ॻ͖ग़ͨ͠΋ͷ

  51. ·ͩௐ੔͸͔ͳΓඞཁ