inflearn logo
知識共有
inflearn logo

アラン iOS Concurrency同時実行 - ディスパッチキュヌずオペレヌションキュヌの理解

同時実行Concurrency - iOSプログラミングで必芁な同期、非同期の抂念、およびそれを拡匵したGCDずOperationに関するすべおのものをカバヌしたす。

難易床 初玚

受講期間 無制限

iOS
iOS
Swift
Swift
concurrent
concurrent
iOS
iOS
Swift
Swift
concurrent
concurrent

孊習した受講者のレビュヌ

孊習した受講者のレビュヌ

5.0

5.0

asdfaa22

47% 受講埌に䜜成

本圓の助けがたくさんありたした。䞀人でコヌドを調べお、投皿をいくら芋おも理解できなかったものが理解になりたした。そしお、フレンドリヌな答えは、ずにかく良いです。

5.0

eunjin

25% 受講埌に䜜成

asyncずconcurrentが同じ蚀葉だず思いたしたが、本圓に本圓に倧きな悟りを埗たした。い぀もこちらの勉匷のたびに100みんな理解できなかった気分だったので、蒞した。 講垫の絵基盀の説明、完璧な講矩の構成に感心が出おきたす。 本圓に私の人生の講矩です...講垫の絵の頭の䞭に必ず保存しお䜏んでいたす。 ずおも愛しおいたす。

5.0

sujinnaljin

97% 受講埌に䜜成

この講矩を聞くず、良い人は次のようになりたす - "非同期凊理"ずいう蚀葉だけ聞いたら "ㅎ.. - グヌグルしお解決はするが、なぜコヌドがこう曞かれるのか、芁求事項に合うロゞックなのかは党く分からない方 たさに過去の私です。 その埌、䌚瀟が指定したiOS開発必須講矩に該圓講矩が含たれおいるので"これだ"䞀぀の講矩ずいうこずですよ.. 毎講矩ごずに絵ず䟋で説明しおくれたすが                                                  。私が今たで受講しおきたすべおのオンオフラむン開発講矩の䞀぀の講矩を挙げれば、たさにこの講矩だず自信を持っお話すこずができたす。残すず長く、詳しく、芪切に答えおくださっお講矩を100%自分のものに持っおいけたす。 最埌に、その講矩は蚀語に関係なく、非同期/同時性を理解するのに倧きな助けになりたす。聞いたんです。 たあ 䞀蚀でたずめるず  quot;最高の講矩をお勧めしたすquot; アラン様少なく働き、たくさんバシギル。

受講埌に埗られるこず

  • iOS同時実行(Concurrency)プログラミング

  • iOSでの最適化の理解パフォヌマンス/反応性

  • 非同期async/同期sync凊理の基本抂念の理解

  • iOSディスパッチキュヌGCDの理解

  • ディスパッチグルヌプ/非同期ディスパッチグルヌプの理解

  • iOS Operation Queueの理解

  • GCD/Operationを適甚した実際のプロゞェクトの䟋

  • GCD/OperationのAから〜Zたで

  • Thread-Safetyの理解

  • スレッドセヌフなオブゞェクト蚭蚈の理解

  • これらすべおを簡単に写真で盎感的に理解する

🙋🏻‍♂自己蚺断衚

授業の埌は、以䞋の抂念を明確に知っお理解するこずができたす。

  • ディスパッチキュヌの抂念に぀いお明確に理解しおいる。 (Yes/No)
  • ディスパッチキュヌの皮類ずサヌビス品質Qosに぀いお理解しおいる。 (Yes/No)
  • ほずんどの堎合、Syncメ゜ッドを䜿甚しない理由を知っおおり、必ずSyncメ゜ッドを䜿甚しなければならない堎合に぀いお違いを理解しおいる。 (Yes/No)
  • ディスパッチグルヌプの抂念に぀いお知っおいたす。 (Yes/No)
  • ディスパッチグルヌプで非同期関数を扱うずきに泚意すべき点に぀いお知っおいたす。 (Yes/No)
  • ディスパッチワヌクアむテムの抂念を知っおいお、なぜ䜿うのか分かる。 はい/いいえ
  • ディスパッチセマフォSemaphoreの抂念を知っおおり、どのように䜿甚するか知っおいる。 (Yes/No)
  • オブゞェクトを蚭蚈するずきは、耇数のスレッドがアクセスできる可胜性に泚意すべき点を明確に理解し、正しいオブゞェクトを蚭蚈するこずができたす。 (Yes/No)
  • 画像をダりンロヌドするテヌブルビュヌ/コレクションビュヌタむプのプロゞェクトを䜜成するずき、非同期抂念を凊理するために泚意すべき点を明確に知っおいたす。 (Yes/No)
  • ディスパッチキュヌを䜿甚するずきに発生する可胜性のある問題耇数のスレッドがデヌタにアクセスするずき、特に競争状況Race Conditionに぀いお明確に理解しおおり、 TSanの䜿甚法Thread Sanitizer Toolを知っおいたす。 (Yes/No)
  • Thread-safeしたコヌドの曞き方に぀いお明確に理解しおいる。 (Yes/No)
  • ディスパッチキュヌで拡匵されたオペレヌションの抂念、そしお違いに぀いお知っおいる。 (Yes/No)
  • どのような堎合にディスパッチキュヌではなくオペレヌションキュヌを䜿甚する必芁があるかを区別しお䜿甚できたす。 (Yes/No)
  • 非同期関数を扱うこずができる、非同期操䜜AsyncOperationのコヌドに぀いお理解しおいたす。 (Yes/No)
  • オペレヌションの䞻な機胜䜜業の順序蚭定、取り消しを自由自圚に䜿甚できる。 (Yes/No)

📝講矩目次

倧きくGCDずOperation郚分で構成されおいたす。GCDに぀いおよく理解しおいおも、GCDで発展した抂念であるOperation䜜業クラスに぀いおは䞍慣れです。どんなブログや講矩よりも明確で簡単に、講矩の䞀床にすべおを理解できるように構成したした。

🖌絵の説明方法の䟋

授業で䜿われる様々な図や図衚の説明方匏の䟋です。

🌈講矩で提䟛される資料 

以䞋の様々な資料が提䟛されおいたす。

  1. GCD関連の敎理PDF - 287ç« 
  2. Operation関連クリヌンアップPDF - 89ç« 
  3. GCD関連説明のためのコヌドプレむグラりンドファむル - 19ペヌゞ゜ヌスファむルを陀く
  4. Operation関連の説明のためのコヌドプレむグラりンドファむル - 8ペヌゞ゜ヌスファむルを陀く
  5. iOSプロゞェクトファむル- 8個
  6. 参考蚘事2個の解釈本

䞊蚘のフォルダ内の資料はすべお提䟛されたす。

🙌講矩の制䜜に参考資料

以䞋の資料を参考にしたしたが、図の説明方匏はすべお盎接蚭蚈したした。

  1. ビデオレッスン( iOS Concurrency with GCD and Operations ) - レむりェンダヌリッチ(raywenderlich) https://www.raywenderlich.com/3648-ios-concurrency-with-gcd-and-operations
  2. 曞籍( Concurrency by Tutorials ) -レむりェンダヌリッチ(raywenderlich) https://store.raywenderlich.com/products/concurrency-by-tutorials
  3. アヌティクル( Operation and OperationQueue Tutorial in Swift ) -レむりェンダヌリッチ(raywenderlich) https://www.raywenderlich.com/5293-operation-and-operationqueue-tutorial-in-swift
  4. アヌティクル ( The thread safety of lazy variables in Swift )

🙋🏻‍♂川の内容が講矩補䜜参考資料ず倚くの違いがありたすか

本圓に倚くの違いがありたす。

䞊蚘の参考資料だけで単に翻蚳レベルの講矩を䜜成しようずしたら、このような講矩を䌁画しなかったでしょう。これらのトピックに぀いお、効率的で効果的な説明、盎接図、図衚などを盎接倚手PPTで䜜成し、実際のスレッドがどのように動䜜しおいるかに぀いおの盎感的な理解を助けるために最善の説明方法を遞びたした。䞊蚘でも申し䞊げたしたが、参考資料を10回以䞊ず぀芋お、その内容をすべお扱いながらも説明ははるかに簡単で倚様な絵で盎感的に理解できるようにするこずを目指す講矩です。

そしお、これらの絵の内容は、フルタむム2ヶ月以䞊の期間を経お盎接たずめた内容なので、 海倖資料を含むどこでもこのような方法の説明およびこのような詳现な説明は芋られないず思いたす。たずえば、参考資料raywenderlichのビデオレッスンでは、1行で「lazy varに関しおもこの問題がある可胜性がありたす。」そしお提瀺された内容があれば、lazy varに関連するすべおの問題を芋぀けお、私が盎接敎理し、絵で盎感的な理解を助け、解決策を提瀺しおいたす。

絵倧きな枠組みを理解するず、コヌドは非垞に簡単に曞くこずができるずいうそのような呜題の䞋で、できるだけ絵を通しお理解し、コヌドを掻甚しおバランスを維持しようずしたので、参考資料ずは倧きな違いがありたす。参考資料ず比范しお、はるかに詳现で、盎感的で豊かな資料、そしお䞀貫性のある簡単な説明が明確な差別点だず蚀いたいず思いたす。

🐠提䟛されるコヌドcode関連

これらのトピックに関する理解を深めるためにコヌドファむルが提䟛され、クラスの内容もカバヌしおいたす。提䟛されおいるコヌドは、ラむセンスが蚱諟する範囲内で、ほずんどレむりェンダヌリッチraywenderlichのGCD動画講矩で提䟛されるコヌドの倚くを採甚しおおり採甚郚分は明瀺されおいる、ラむセンスが蚱諟されない郚分レむりェンダヌリッチ曞籍で提䟛するコヌドに぀いおは、コヌドを盎接提䟛しおおり、倧きな枠組み確保しようずしたした。

たた、提䟛するコヌドの理解を助けるために順序配眮を倉え、より詳现な説明のためのコヌドも倚数远加し、様々な䟋ずずもに本授業内容の理解を助けおいたす。

🀔授業の䟡栌蚭定関連

単䞀のテヌマに぀いお少しは高い䟡栌で枬定されおおり、疑わしいこずがありたすが、本圓に倚くの内容が蟌められおおり、䟡栌に比べおはるかに高い満足感を埗られるこずを申し䞊げたいず思いたす。この内容を説明するために盎接䜜成したPDF資料がGCD関連287章、 Operation関連89章で合蚈376ペヌゞの資料が提䟛されたす。 実際、私が動画講矩内で説明するための資料は、コヌド陀倖PPT 830枚皋床で構成されおいたす。

GCD/Operation に関しお海倖資料で芋぀けるこずができるほがすべおの内容を党お取り扱っおおり、この授業内容に含たれおいるほずんどの絵や図衚は私が盎接䜜成した内容です。本講矩のためにかなり倚くの時間ず努力が入り、それだけ今埌開発者の成長に関しお重芁なテヌマだず思ったので、私個人的な芳点から 「こういう資料、こんな講矩があっおほしい」ずいう基準で䌁画しお䜜られた講矩です。

たた個人的に考えるに、費甚を出しお講矩聞く決定をするずいうこずは時間ず費甚を亀換するこずだず思いたす。費甚察効果 該圓トピックに関する勉匷時間を惜しむには十分な圹割を果たすず考えおおり、時間を惜しんでより高い満足を埗おいくこずを願っおいたす。䟡栌よりも高い満足を差し䞊げるのに充実した内容でお返しさせおいただきたす。 ^^

💌講矩内容ラむセンス関連

本講矩の内容は、私が少しでも絵などを参考にした堎合にPDFに関連URLアドレスが残されおいたす。そのような堎合を陀くすべおの資料は私が䜜成した資料なので、郚分別に講矩の説明方匏を参考にしおブログなどにたずめるずきは、本講矩の䜏所を残しおいただきたすよう、䞁寧にお願いしたす。

それにもかかわらず、本講矩の党般的な内容をブログにたずめるこずず、講矩資料ずしお䜿われるPDFファむルの共有は、いかなる堎合にも犁止されたす。

👀講矩内容のプレビュヌを提䟛

受講を決める前に、講矩スタむルに関しお事前に確認しおいただけるようにしたした。

  • (セクション 0. 1.GCD/Operation の前)に関連する1 時間ほどのプレビュヌ
  • (セクション 10. 1. Operation の前に)に関連する5 分ほどのプレビュヌ

プレビュヌが提䟛されおいる講矩を芋お、授業を決定したす。 :)

こんな方に
おすすめです

孊習察象は
誰でしょう

  • Swift蚀語を少し身に぀けた方

  • iOSで同期非同期凊理の基本抂念を習埗したい人

  • GCDGrand Central Dispatchディスパッチキュヌの抂念に぀いお知りたい人

  • ディスパッチグルヌプに぀いお知りたい人

  • Operationオペレヌション/OperationQueueオペレヌションキュヌに぀いお知りたい人

  • Thread-safety抂念に぀いお知りたい人

  • 秒〜䞭玚iOS開発者

前提知識、
必芁でしょうか

  • Swift蚀語の理解

  • iOSプログラミングの理解

こんにちは
allenです。

7,603

受講生

753

受講レビュヌ

311

回答

5.0

講座評䟡

7

講座

iOS開発者のアランです。
https://www.youtube.com/@allen_ios

「正確に知っおいる知識は、自分の蚀葉で簡単に説明できなければならない」が私のモットヌです。

だからこそ、私が勉匷しながら経隓した詊行錯誀を分かりやすく解き明かし、
誰でも理解できる蚀葉で知識を共有できる開発者になりたいず思っおいたす。

私は簡単なトピックで、短時間のうちに衚面だけをなぞるような教え方の講矩を䜜るこずには興味がありたせん。
そのような講矩はいくらでも玠早く量産できるでしょうが、結局「良い開発者ぞず成長」するためには、それだけ理論的な基盀ずいう土台がしっかりしおいなければならないず信じおいるからです。

簡単な講矩よりも、良い開発者絶えず成長し続けられる開発者になるために
必ず知っおおくべき難しい内容たでを、最倧限分かりやすく、そしお盎感的にお䌝えするこず。
そしお、私ではなく皆さん自身がWHYなぜを悩み、考えられる土台を䜜っお差し䞊げるこずを私の講矩の目暙ずしおいたす。

私自身も明日はもっず良い開発者になろうず努力しおいる分、
私が悩んできた内容を深くお䌝えしたいず思っおいたす。

 

面接で䜕床も萜ちおしたったり、簡単な内容も自分の蚀葉でうたく衚珟できなかったりするのは、正確に理解できおいないずいうこずでもあるず考えおいたす。むしろ、基本的な内容やCSに察しお「しっかりずした基瀎」があっおこそ、急速な成長が可胜だず信じおいたす。


👇🏻お問い合わせは以䞋のメヌルアドレスたでお願いいたしたす。

we.love.code.allen@gmail.com


蚀語: Swift(スりィフト), Python, Java, C#

もっず芋る

カリキュラム

党䜓

32件 ∙ (8時間 9分)

講座資料こうぎしりょう:

授業資料
講座掲茉日: 
最終曎新日: 

受講レビュヌ

党䜓

63ä»¶

5.0

63件の受講レビュヌ

  • sangbum225213님의 프로필 읎믞지
    sangbum225213

    受講レビュヌ 3

    ∙

    平均評䟡 5.0

    5

    47% 受講埌に䜜成

    同期/非同期の理解が倚く䞍足しおこの講矩を遞んだが珟圚聞いおいる䞭でも講座のクオリティが盞圓で次の講矩はい぀撮るのかずいう考えをしおみる講座です。完党に良いです。ずおもおすすめです。

    • sujikang7936님의 프로필 읎믞지
      sujikang7936

      受講レビュヌ 3

      ∙

      平均評䟡 5.0

      5

      97% 受講埌に䜜成

      この講矩を聞くず、良い人は次のようになりたす - "非同期凊理"ずいう蚀葉だけ聞いたら "ㅎ.. - グヌグルしお解決はするが、なぜコヌドがこう曞かれるのか、芁求事項に合うロゞックなのかは党く分からない方 たさに過去の私です。 その埌、䌚瀟が指定したiOS開発必須講矩に該圓講矩が含たれおいるので"これだ"䞀぀の講矩ずいうこずですよ.. 毎講矩ごずに絵ず䟋で説明しおくれたすが                                                  。私が今たで受講しおきたすべおのオンオフラむン開発講矩の䞀぀の講矩を挙げれば、たさにこの講矩だず自信を持っお話すこずができたす。残すず長く、詳しく、芪切に答えおくださっお講矩を100%自分のものに持っおいけたす。 最埌に、その講矩は蚀語に関係なく、非同期/同時性を理解するのに倧きな助けになりたす。聞いたんです。 たあ 䞀蚀でたずめるず  quot;最高の講矩をお勧めしたすquot; アラン様少なく働き、たくさんバシギル。

      • brianj님의 프로필 읎믞지
        brianj

        受講レビュヌ 5

        ∙

        平均評䟡 5.0

        5

        100% 受講埌に䜜成

        䞀応講垫様が非専攻者だずか、非専攻者の心をよく知っお説明しおいただくずすごく詳しく説明しおいただき、ずおも良いです。私も非専攻者です。たた、どこでもこのように同期/非同期に関する内容を教えおくれたせん。通信するずきに無条件に非同期を曞かなければならないからずいっお曞くだけで、理由に぀いおは正確には分からなかったが、授業を聞いお知るこずになりたした。 しかし、勉匷ずいうのが䞀床だけ聞くず完璧なのではないでしょうかずころが、この講矩は䞀床買っおおけば無制限に繰り返し聞くこずができるのに良いです。ありがずうございたす。 最埌にPDF資料ずかコヌドも党郚あっおすごくいいですねむチオシ 個人的に1.25倍速で聞きたした。 䞭途䞭の画質が䜎くなる珟象がありたすが、それは右䞋の蚭定りィンドりに芋れば画質を遞択できたす。最高のものを遞んで戻っおきたす。

        • leedh20083569님의 프로필 읎믞지
          leedh20083569

          受講レビュヌ 3

          ∙

          平均評䟡 5.0

          5

          100% 受講埌に䜜成

          今たで倚くの講矩を聞きたしたが、ほずんどの講矩は初心者を察象に基瀎だけを説明する講矩がほずんどでしたが、この講矩は基瀎的な郚分から深化たで本圓によく取り䞊げられたようで、講矩自䜓が蚭蚈から講矩資料準備たで時間をたくさん聞いたこずが感じられたした。講矩者が関数型プログラミングずRxに関連する講矩をしおいる堎合は、もう䞀床お支払いいただき、面癜いず思いたす。

          • youngilchung0015님의 프로필 읎믞지
            youngilchung0015

            受講レビュヌ 6

            ∙

            平均評䟡 5.0

            5

            100% 受講埌に䜜成

            肝臓に高品質講矩を聞きたした。 難しいテヌマなのにむメヌゞを添えお簡単に説明しおくれた郚分が印象的でした。他の講矩たちを割匕するずき、本講矩は割匕をしないで摂摂したしたが、頑匷の埌には圓然䞋の気がしたすね。良い知識を共有しおいただきありがずうございたす。

            allenの他の講座

            知識共有者の他の講座を芋おみたしょう

            䌌おいる講座

            同じ分野の他の講座を芋おみたしょう

            ï¿¥8,366