iOS デバッグ&プロファイル

Cc8ec9594b83b5dc3c7eef345c05dc8d?s=47 shiz
August 24, 2018

iOS デバッグ&プロファイル

Cc8ec9594b83b5dc3c7eef345c05dc8d?s=128

shiz

August 24, 2018
Tweet

Transcript

  1. J04 σόοάϓϩϑΝΠϧ  3PQQPOHJTXJGU

  2. ࣗݾ঺հ wTIJ[ ͣ͠ !TU[O w๭डୗ։ൃձࣾۈ຿ wϞόΠϧ͔ΒΠϯϑϥ·Ͱ΍Δ
 ͪΌΜΆΜΤϯδχΞ
 4XJGU "OESPJE LPUMJO

    "OHVMBS /PEFKT $ 1)1 +BWB  wJ04ΤϯδχΞ໨ࢦ͍ͯ͠·͢
  3. J04%$5SBDL"

  4. ͳͷͰຊ೔͸ʜ

  5. શવҧ͏࿩Λ͠·͢

  6. 88%$ Practical Approaches to Great App Performance Advanced Debugging with

    Xcode and LLDB iOS Memory Deep Dive What’s New in Energy Debugging Measuring Performance Using Logging Creating Custom Instruments
  7. ςετ͸Α͘஫໨Λ ཋͼΔ͚Ͳ σόοά΍ϓϩϑΝΠϧ͸ʁ

  8. ςετ ༧๷ྍ๏ σόοά ϓϩϑΝΠϦϯά ର঱ྍ๏

  9. WWDCͷσόοάܳͳͲ ৭ʑݕ౼ͯ͠ΈΔ

  10. ݪҼ͕Θ͔Βͳ͍Τϥʔ Λಛఆ͢Δ

  11. None
  12. &YDFQUJPO#SFBLQPJOU

  13. None
  14. ࠶ݱʹख͕͔͔ؒΔ σόοάΛ͢Δ

  15. ࢓༷ ̑ճࣦഊͨ͠৔߹͸ϝοηʔδΛग़ͯ͠ऴྃ͢Δ ໰୊ ϝοηʔδ͕ग़ͳ͍ ΍Γ͍ͨ͜ͱ ̑ճࣦഊͨ͠ޙʹऴྃ࣌ͷॲཧͷத਎Λௐ΂Δ

  16. ೉఺͕͋Δ

  17. USVFͰࢭ·Δ ̑ճ࣮ߦ͢ΔͱUSVFʹͳΔ #SFBLQPJOUͰࢭ·ΔΑ͏ʹ͢Δ

  18. FYQSGPSJJO \TFMGDBMDVMBUF"GUFS"OTXFS BOTXFS ^ ࣮ߦΛࢭΊͣʹճ܁Γฦࣦ͠ഊͤ͞Δ

  19. ͜ΕΛಉ࣌ʹઃఆ͢Δͱ

  20. CSFBLQPJOUͰ ࢭ·Βͳ͘ͳΔ

  21. USVFͰࢭ·ͬͯ͘Εͳ͍ ̑ճ࣮ߦ͢ΔͱUSVFʹͳΔ #SFBLQPJOUͰࢭ·ΔΑ͏ʹ͢Δ

  22. None
  23. ઃఆΛม͑ͯΈΔ

  24. FYQSJGBMTFGPSJJO \TFMGDBMDVMBUF"GUFS"OTXFS BOTXFS ^ ࣮ߦΛࢭΊͣʹճ܁Γฦࣦ͠ഊͤ͞Δ JΛઃఆ͢Δͱ CSFBLQPJOUεΩοϓͷઃఆΛແࢹ͢Δ

  25. ͜ΕΛಉ࣌ʹઃఆ͢Δͱ

  26. $POEJUJPO͕ແࢹ͞ΕΔ

  27. GBMTFͳͷʹࢭ·Δ ࣮ߦճ਺͸·ͩ̎ճ໨

  28. None
  29. ׳Εͱ޻෉͕ඞཁ

  30. ΋͏Ұͭٙ໰

  31. ϝιουͷҾ਺͸ ஋ͷมߋ͕Ͱ͖ͳ͍ʁ

  32. ஋͸มΘΒͳ͍ DBMDVMBUF"GUFS"OTXFS JT3JHIU#PPM DVSSFOU1PJOUDVSSFOU1PJOU  USVFʹ͸ͳ͍ͬͯΔ

  33. ௚઀มߋ͢Δͱ

  34. & ஋͕ߋ৽͞Ε͍ͯΔ

  35. ׳Εͱ޻෉͕ඞཁ

  36. ஋ͷมߋΛ௥͍͔͚Δ

  37. ஋͕ߋ৽͞Εͳ͍

  38. XBUDIQPJOU

  39. None
  40. ஋͕มߋ͞ΕΔλΠϛϯάͰࢭ·Δ

  41. 6*Λͦͷ৔Ͱௐ੔͢Δ

  42. ϓϩύςΟʹΞΫηε Ͱ͖Δ৔߹

  43. None
  44. QPRVFTUJPODFOUFSZ QP$"5SBOTBDUJPOqVTI

  45. QPRVFTUJPODFOUFSZ QP$"5SBOTBDUJPOqVTI

  46. ϓϩύςΟʹΞΫηε Ͱ͖ͳ͍৔߹͸ʁ

  47. FYQSFTTJPOMPCKD 0 < 6*7JFX YGFCCEEBF SFDVSTJWF%FTDSJQUJPO> 7JFXͷ֊૚ߏ଄͕औಘͰ͖Δ

  48. QPVOTBGF#JU$BTU YGFCCEG UP 6*-BCFMTFMG DFOUFSZ VOTBGF#JU$BTU͸ ܕ͕ฦͬͯ͘ΔͷͰͦͷ··࢖͑Δ

  49. DPNNBOEBMJBT DPNNBOEBMJBTQPDFYQSFTTJPOMPCKD 0 QPD< 6*7JFX YGFCCEEBF SFDVSTJWF%FTDSJQUJPO> QPDίϚϯυΛ࡞੒͢Δ

  50. DPNNBOETDSJQUJNQPSU DPNNBOETDSJQUJNQPSUdOVEHFQZ OVEHFYGFCCEG GBDFCPPLDIJTFM IUUQTHJUIVCDPNGBDFCPPLDIJTFM QZUIPOεΫϦϓτΛΠϯϙʔτ͢Δ

  51. dMMECJOJU ىಈ࣌ʹίϚϯυΛಡΈࠐΉ dMMECJOJU9DPEF

  52. ศརͳCSFBLQPJOU TZNCPM6*7JFX"MFSU'PS6OTBUJTpBCMF$POTUSBJOUT
 "VUP-BZPVUͷ໰୊Λݕ஌ TZNCPM/4,70%FBMMPDBUF#SFBL
 ·ͩొ࿥͞Ε͍ͯΔ,70ϓϩύςΟ͕EFBMMPD͞Εͨ͜ͱΛݕ஌ TZNCPM@9$5'BJMVSF)BOEMFS
 9$5FTUͰΤϥʔ͕ग़ͨՕॴΛݕ஌ TZNCPM@/4%BUB3FJOJUJBMJ[BUJPO#SFBL
 ॳظԽࡁΈͷ/4%BUB͕࠶ͼॳظԽ͞Εͨ͜ͱΛݕ஌

  53. ىಈ͕஗͍ཧ༝Λௐ΂Δ

  54. ͭͷεςʔδ 1SFNBJO 1PTUNBJO 6*"QQMJDBUJPO.BJOͷNBJO ͕ݺ͹ΕΔલ γεςϜ͕ίϯτϩʔϧ͢Δ 6*"QQMJDBUJPO.BJOͷNBJO ͕ݺ͹Εͨ͋ͱ BQQMJDBUJPOXJMM'JOJTI-BVODIJOH8JUI0QUJPOT ͔Β࠷ॳͷ7JFX$POUSPMMFSͷWJFX8JMM"QQFBS·Ͱ


    Ϣʔβʔ͕ૢ࡞ՄೳʹͳΔ·Ͱ
  55. 1SFNBJO

  56. %:-%@13*/5@45"5*45*$4

  57. EZMJCMPBEJOH SFCBTFCJOEJOH 0CKDTFUVQ *OJUJBMJ[FS

  58. w %ZOBNJD'SBNFXPSLͷଟ༻Λආ͚Δ "QQMFਪ঑ͭ·Ͱ  w 0CKFDUJWF$ͷDMBTTͷ਺ΛݮΒ͢ w 0CKFDUJWF$ͷTUBUJDJOJUJBMJ[FSΛݮΒ͢ ˠ4XJGUͷTUSVDUΛ࢖͏ w

    NTΛ໨ඪʹ͢Δ J1IPOFͰϗʔϜ͔ ΒΞϓϦ͕ىಈ͞ΕΔ·Ͱͷ࣌ؒ  w ඵΛ௒͑ΔͱΞϓϦ͕Ωϧ͞ΕΔ ஫ҙ͢Δ΂͖ϙΠϯτ
  59. %ZOBNJD'SBNFXPSLTͷ݁߹ "GSBNFXPSL #GSBNFXPSL $GSBNFXPSL %GSBNFXPSL &GSBNFXPSL 'GSBNFXPSL (GSBNFXPSL )GSBNFXPSL "#$%&GSBNFXPSL

    '()GSBNFXPSL
  60. 4UBUJD'SBNFXPSLT΁ͷม׵ "#*4PVSDF4UBCJMJUZ

  61. 0CKFDUJWF$ͱͷ ϋΠϒϦουͷ৔߹

  62. 1PTUNBJO

  63. 4FDPOE3VO-PPQ .BJO2VFVFͰEJTQBUDIBTZODΛͯ͠஗Βͤͯ΋ྑ ͍΋ͷɻ͜Ε΋Ͱ͖ΔݶΓ࡞ۀྔΛ཈͑Δɻ ̏ͭͷ෼ྨ 'JSTU3VO-PPQ ඞͣ࠷ॳʹ͠ͳ͚Ε͹͍͚ͳ͍΋ͷΛઃఆ͢Δɻ Ͱ͖ΔݶΓ࡞ۀྔ͸ݮΒ͠ɺશମͷˋҎԼʹ཈͑Δ *OUIFCBDLHSPVOE ผ5ISFBEͰ#BDLHSPVOE࣮ߦͰ͖Δ΋ͷɻΞφϦςΟ ΫεͷॳظԽͳͲඞਢͰ͸ͳ͍΋ͷɻ

  64. ཁ͸ ඞཁ࠷௿ݶͷ͜ͱΛʂ

  65. ศརͳ-BVODI"SHVNFOUT  /4%PVCMF-PDBMJ[FE4USJOHT:&4
 จࣈΛ̎ճ܁Γฦͯ͠ग़ྗ͢Δ DPNBQQMF$PSF%BUB42-%FCVH
 42-ग़ྗ /44IPX/PO-PDBMJ[FE4USJOHT:&4
 -PDBMJ[BUJPO͠๨Ε͍ͯΔՕॴΛಛఆ "QQMF-BOHVBHFT FT

    
 ݴޠઃఆͷมߋ
  66. ৭ʑݕ౼ͯ͠ Θ͔ͬͨ͜ͱ

  67. ৘ใ͕গͳ͍

  68. None
  69. ྑ͍৘ใݯ΍ษڧձͳͲ ͋Γ·ͨ͠Βڭ͍͑ͯͩ͘͞'

  70. ˌ৘ใٻϜ