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

実践テスト駆動開発 in iOS/TDD_in_iOS

実践テスト駆動開発 in iOS/TDD_in_iOS

俺コン Vol.1 / Day. 2

Avatar for Yusuke Hosonuma

Yusuke Hosonuma

October 03, 2017
Tweet

More Decks by Yusuke Hosonuma

Other Decks in Technology

Transcript

  1. Copyright (C) DeNA Co.,Ltd. All Rights Reserved. Զίϯ Vol.1 Day.

    2 2017/10/03 (Tue) 
 ࡉপ ༞հ@DeNA ࣮ફςετۦಈ։ൃJOJ04 1
  2. ˙:VTVLF)PTPOVNBʢ!UPCJʣ • ॴଐ ⁃ %F/"48&5άϧʔϓςετج൫νʔϜ • 'BWPSJUF ⁃  •

    ۙگ ⁃ J04%$Ͱ-5ొஃ ⁃ 'BTUMBOFʹॳ$POUSJCVUJPO ⁃ 5XJUUFSΞΠίϯΛม͑ͨ ⁃ 4UBDL0WFSqPXͰॳճ౴ ⁃ ԶίϯEBZͰॳ࢘ձ ࣗݾ঺հ Copyright (C) DeNA Co.,Ltd. All Rights Reserved. 2
  3. ΞδΣϯμ 5 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •

    5%%ͷ෮श • J04ΞϓϦ։ൃʹ͓͚Δ • ࣗಈςετͷ՝୊ • 5%% • ϥΠϒίʔσΟϯά • ·ͱΊ
  4. ςετۦಈ։ൃʢTDDʣͱ͸ 7 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •

    ςετΛઌʹॻ͘ελΠϧͷʮ։ൃख๏ʯ • 3&%ˠ(SFFOˠ3FGBDUPS • ,FOU#FDL͕ఏএ
  5. ςετۦಈ։ൃʢTDDʣͱ͸ 8 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. RED

    Green Refactor ςετΛॻ͘ ࠷௿ݶͷ࣮૷ ॏෳΛऔΓআ͘
  6. TDD ͷϝϦοτ 10 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.

    • ઌʹςετΛॻ͘͜ͱͰΰʔϧ͕໌֬ʹ • ςετ͠΍͍͢ઃܭʹͳΔ • Ұ౓ʹҰͭͷ͜ͱ͚ͩ΍Δ͜ͱͰूத • ෆ҆ΛݮΒͤΔ
  7. TDD ͷσϝϦοτ 11 Copyright (C) DeNA Co.,Ltd. All Rights Reserved.

    • εΩϧ͕ඞཁ • ա৒ͳઃܭʹͳΔ͜ͱ΋ • 5%%JT%FBE  • ద༻ͮ͠Β͍ྖҬ΋ • ηΩϡϦςΟιϑτ
  8. ςετࣗಈԽͷ՝୊ 29 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •

    εΩϧ͕ඞཁ • ࣮૷ίετ • ϝϯςφϯείετ • ࣮ߦʹ͕͔͔࣌ؒΔ
  9. ςετࣗಈԽͷ՝୊ 30 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •

    εΩϧ͕ඞཁ • ࣮૷ίετ • ϝϯςφϯείετ • ࣮ߦʹ͕͔͔࣌ؒΔ ͜Ε͕ຊ౰ͷ՝୊ʁ
  10. τϨʔυΦϑͷݟۃΊ 33 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •

    Ͳ͜·ͰࣗಈςετΛద༻͢Δͷ͔ʁ • ΧόϨοδ • ୭͕ϝϯςφϯεΛ͢Δʁ • ͭ·Δͱ͜ΖɺͲ͜ʹՁ஋Λஔ͖͍ͨʁ
  11. τϨʔυΦϑͷݟۃΊ 34 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •

    Ͳ͜·ͰࣗಈςετΛద༻͢Δͷ͔ʁ • ΧόϨοδ • ୭͕ϝϯςφϯεΛ͢Δʁ • ͭ·Δͱ͜ΖɺͲ͜ʹՁ஋Λஔ͖͍ͨʁ ͔ͬ͠Γߟ͑ͳ͍ͱɺςετΛ࡞Δ͜ͱ ͕໨తʹͳΓɺ࠷ޙ͸ࣺͯΒΕΔ
  12. खڧ͍࣭໰ 36 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •

    ԿͷͨΊʹςετΛࣗಈԽ͢Δͷʁ • νʔϜશһ͕ೲಘ͍ͯ͠Δʁ • ଞͷ1+ͷ੒ޭࣄྫΛͦͷ··ద༻ͯ͠ͳ͍ʁ • Ձ஋Λੜ·ͳ͍ςετʹ߆ͬͯͳ͍ʁ • ͦ΋ͦ΋ࣗಈԽ͢Δඞཁ͋Δͷʁ
  13. खڧ͍࣭໰ 37 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •

    ԿͷͨΊʹςετΛࣗಈԽ͢Δͷʁ • νʔϜશһ͕ೲಘ͍ͯ͠Δʁ • ଞͷ1+ͷ੒ޭࣄྫΛͦͷ··ద༻ͯ͠ͳ͍ʁ • Ձ஋Λੜ·ͳ͍ςετʹ߆ͬͯͳ͍ʁ • ͦ΋ͦ΋ࣗಈԽ͢Δඞཁ͋Δͷʁ ςετٕ๏͸੔͖͕ͬͯͨɺࣗ෼͕ͨͪ ඞཁͳ΋ͷΛऔࣺબ୒͢Δ͜ͱ͕ॏཁ
  14. ͍ͭςετࣗಈԽʹऔΓ૊Ή͔ʁ 39 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. ϏδωεతʹՁ஋ΛੜΉͱݟࠐΊͨ࣌

    ࢢ৔ͰՁ஋ΛੜΉ͔Θ͔Βͳ͍ஈ֊Ͱɺ ςετΛࣗಈԽ͢ΔՁ஋͸ബ͍ ϓϩάϥϚ͕࣮૷࣌ʹෆ҆Λײ͡Δ෦෼ ωΨςΟϒͳײ৘͸ɺ ଟ͘ͷ࡞ۀʹϚΠφεͳӨڹΛ༩͕͑ͪ
  15. iOSΞϓϦ։ൃʹ͓͚ΔTDD 41 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •

    6*ςετ ɹ⭕ࣗ৴Λײͯ͡ɺ಺෦ઃܭͷվળ͕͠΍͘͢ ɹ❌࣮૷ʹ͸͕͔͔࣌ؒΔ • ୯ମςετ ɹ⭕ςετ͠΍͍͢ઃܭʹͳΔ ɹ⭕҆શωοτ͕ுΓ८Β͞ΕΔ
  16. ϥΠϒίʔσΟϯάΛऴ͑ͯ 45 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •

    Ұͭͷ͜ͱʹूதͰָ͖͍ͯ͠ • Ͱ΋γϛϡϨʔλىಈʹ͸͔͔࣌ؒΔͳ • ϦϑΝΫλϦϯά͸΍͸Γྑ͍श׳ͩ • ϝοηʔδ͕มΘͬͨΒमਖ਼͠ͳ͍͔ɾɾɾ • ॏཁͳέʔε͸ྑ͍͚Ͳ͜ͷςετ͸ա৒͔ͳ • ୯ମϨϕϧͩͬͨΒ5%%Ͱྑ͍͔΋ʁ
  17. ϥΠϒίʔσΟϯάΛऴ͑ͯ 46 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •

    Ұͭͷ͜ͱʹूதͰָ͖͍ͯ͠ • Ͱ΋γϛϡϨʔλىಈʹ͸͔͔࣌ؒΔͳ • ϦϑΝΫλϦϯά͸΍͸Γྑ͍श׳ͩ • ϝοηʔδ͕มΘͬͨΒमਖ਼͠ͳ͍͔ɾɾɾ • ॏཁͳέʔε͸ྑ͍͚Ͳ͜ͷςετ͸ա৒͔ͳ • ୯ମϨϕϧͩͬͨΒ5%%Ͱྑ͍͔΋ʁ ײ৘ɾؾ͖ͮΛେ੾ʹ͠Α͏ʂ
  18. ·ͱΊ 48 Copyright (C) DeNA Co.,Ltd. All Rights Reserved. •

    େ੾ͳͷ͸Ձ஋ͷݟۃΊ • ܧଓతʹτϨʔυΦϑΛݟۃΊ͍ͯ͘ • ϝϯόʔͷ੠Λௌ͘ • ςετͷ੠Λௌ͘ • J04Ͱ΋5%%͸׆༻Ͱ͖Δ • ײ৘ͷϑΟʔυόοΫΛେ੾ʹ͠Α͏ • ۜͷ஄ؙ͸ͳ͍