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

Apple公式ガイドさっくりまとめ ファイルシステム編

Apple公式ガイドさっくりまとめ ファイルシステム編

Apple公式ガイドのさっくりまとめ

Atsushi Uchida (utwang)

September 24, 2015
Tweet

More Decks by Atsushi Uchida (utwang)

Other Decks in Programming

Transcript

  1. ͍·͞ΒAppleެࣜΨΠυΛ
    ͬ͘͞ΓͱಡΜͰ·ͱΊͯΈͨ
    ʙ ϑΝΠϧγεςϜϓϩάϥϛϯάΨΠυฤ ʙ
    2015/9/24

    View full-size slide

  2. ͸͡Ίʹ
    • υΩϡϝϯτಡΜͰ·ͱΊͨࢿྉͰ͢ɻ࣮ࡍʹίʔυॻ
    ͍ͯಈ͔ͨ͠Θ͚Ͱ͸ͳ͍ͷͰਖ਼֬Ͱ͸ͳ͍هड़΋͋Δ
    ͔ͱࢥ͍·͢ɻ

    View full-size slide

  3. ͜ͷΨΠυͷओͳ಺༰
    • σΟϨΫτϦߏ੒
    • iOSɺOSXͷڞ௨υΩϡϝϯτ
    • iCloudͱͷ΍ΓͱΓ(ׂѪ)
    • ϑΝΠϧΞΫηεํ๏
    • ϑΝΠϧ؅ཧɺૢ࡞ͷγεςϜΠϯλʔϑΣʔε
    • ҆શͳΞΫηεɺඇಉظΞΫηε

    View full-size slide

  4. جຊతͳฤ੒
    • Ϣʔβ͸௚઀ϑΝΠϧγεςϜʹ
    ΞΫηεͰ͖ͳ͍
    • iOSΞϓϦ಺ʹαϯυϘοΫεੜ੒
    • όϯυϧίϯςφ
    • σʔλίϯςφ
    • Documents
    • Library
    • Temp
    • iCloudίϯςφ

    View full-size slide

  5. ϑΝΠϧΞΫηε
    • ϑΝΠϧΞΫηε͢ΔͨΊͷΠϯλʔϑΣʔε͕͍ͭ͘
    ΋༻ҙ͞Ε͍ͯΔ
    • όϯυϧσΟϨΫτϦ
    • NSBundleΫϥε
    • ඪ४σΟϨΫτϦʢDocuments,LibraryͳͲʣ
    • NSFileManagerΫϥε

    View full-size slide

  6. ϑΝΠϧ؅ཧɺૢ࡞
    • σΟϨΫτϦɺϑΝΠϧͷ࡞੒ɺίϐʔɺҠಈɺ࡟আͳͲͷج
    ຊతͳૢ࡞͕Մೳ
    • NSFileManagerΫϥε͕ఏڙ
    • createFileAtPath
    • copyItemAtURL
    • moveItemAtURL
    • removeItemAtURL

    View full-size slide

  7. ෳ਺ϓϩηεͰͷϑΝΠϧར༻
    • ϑΝΠϧγεςϜ͸શϓϩηε/εϨουͰڞ༗
    • ڝ߹͠ͳ͍Α͏ʹϑΝΠϧίʔσΟωʔλͱϓϨθϯλʔ
    ͰϑΝΠϧมߋΛ؅ཧʢiCloudυΩϡϝϯτɺiPhone -
    Apple Watchͷσʔλ࿈ܞʣ
    • iOSͰαϯυϘοΫεͷ֎ͷϑΝΠϧʹΞΫηε͢Δ
    έʔεʢϝσΟΞϑΝΠϧ΍ϢʔβυΩϡϝϯτʣͰ͸
    UIDocumentΫϥεΛ࢖͏

    View full-size slide

  8. ϑΝΠϧಡΈॻ͖
    • ඇಉظॲཧ
    • ετϦʔϜॲཧʢNSOutputStream / NSInputStreamʣ
    • GCD(OSϨϕϧͷεϨου؅ཧ)
    • dispatch_xxxͷॲཧ
    • ಉظॲཧ
    • NSFileHandle (ҰൠతͳϑΝΠϧopen/close)

    View full-size slide

  9. ϑΝΠϧͷίϯςφ
    • ϝϞϦ಺ʹϑΝΠϧΛอ࣋͢ΔɻυΩϡϝϯτΦϒδΣΫ
    τ΁ͷϑΝΠϧຒΊࠐΈɺը૾ͱͯ͠ͷදࣔʢදࣔঢ়ଶͰ
    ͷฤूʣ
    • ϑΝΠϧϥούʔ
    • σΟϨΫτϦϥούʔ
    • ϦϯΫϥούʔ
    • URLɺύεͱ௚઀ͻ΋͔ͮͳ͍ϑΝΠϧͱͯ͠ѻ͑Δ

    View full-size slide

  10. ύϑΥʔϚϯε
    • ΨΠυʹύϑΥʔϚϯεʹؔͯ͠ͷҰൠతͳνΣοΫ߲
    ໨ͷهࡌ͋Γ
    • zero-fillͱ͍͏ηΩϡϦςΟͷ࢓૊Έ͕ύϑΥʔϚϯεʹ
    Өڹ͢Δ͜ͱ΋͋ΔΒ͍͠

    View full-size slide