강의

멘토링

로드맵

Inflearn brand logo image
BEST
Programming

/

Back-end

Python同時実行プログラミング:データ収集からWeb開発まで(feat。FastAPI)

Pythonでは、並行性/並列性プログラミングを使用してデータを収集し、MongoDBにロードして分析し、モダンなWebフレームワークであるFastAPIを使用して収集したデータを視覚化したWebアプリを開発します。このプロセスでは、コルーチン、マルチスレッド、およびマルチプロセッシングを使用したPythonの並行性/並列性プログラミングを学び、理解し、それを使用してPythonのパフォーマンスを向上させる方法を理解します。 Pythonの並行性/並列性コードを実務に直接適用するのに役立ちます。開発だけで終了するのではなく、AWSクラウドに実際のアプリをデプロイして運用する方法についてお知らせします。

  • amamov
Q&A의 달인
소통왕
Python
concurrent
FastAPI

学習した受講者のレビュー

こんなことが学べます

  • 並行性/並列性プログラミングコードの設計原則

  • Pythonコルーチン、非同期プログラミング

  • Pythonマルチスレッド、マルチプロセッシング技術

  • プロセスとスレッドに関するOSの知識

  • MongoDBを使用して非定型ビッグデータをロードする

  • FastAPIを使用したサーバー開発、非同期ゲートウェイUvic​​ornの使用

  • AWS クラウドサーバーの構築

  • Webデータのクロール、可視化

遅いPython?
同時性・並列性プログラミングで翼を作ろう!

講義
始める前に

この川の目的は大きく2つです。同時性・並列性・非同期プログラミングの概念を正確に理解することと、どのような状況でどのコードを使用するかをお知らせすることです。
講義の後半には、同時性プログラミングを通じて実際のプロジェクトを進めながら、その概念を理論の熟知を超えて実際に実務でも使用できるようにお手伝いします。

同時性・非同期・並列性プログラミング
Pythonの最新の文法で

Pythonバージョン3.7以降、同時性・非同期・並列性プログラミングに対するサポートが大幅に増えました。これに対する需要が大きくなり、同時性・非同期・並列性プログラミングを支援するフレームワークやライブラリも多く登場しています。しかし、バージョンごとに変わるPython文法に困難を経験する方が多いです。また理論では学んだが、実際にいつどのように文法を適用すべきか分からない方も多いです。
この講座は、同時性・非同期・並列性に関する概念をPython最新の文法に合わせて実習まで進めてすぐに適用できるようにお手伝いします。

並行性と並列性
同時(at the same time)に

このレッスンでは、並行性と並列性の両方をカバーし、実際に適用できる方法について説明します。このため、このレッスンのタイトルである同時実行プログラミングには二重の意味があります。同時性(Concurrency)と並列性(Parallelism)での同時性と同時に(at the same time)の意味としての同時性です。並列性を表現するとき、「同時に」または「ある瞬間に」と表現する時が多いからです。

この講義
こんな方にお勧めしたい

並行性?並列性?
これは何ですか?

並行性と並列性
何なのか、なぜ必要なのか
理解したい場合

最新のPython文法で
並行性プログラミング

同時性・非同期・並列性
文法を最新バージョンに
書きたい場合

Python同時性文法
実務でも

実務にも適用する
可能な並行性
プログラミング

バックエンド開発者も
気になるFastAPI

非同期文法を積極的に
使用するFastAPI
書きたい場合

  • Pythonプログラムをスピードアップしたいデータアナリスト、開発者
  • 同時性・非同期・並列性文法を最新のPython文法に合わせて学びたい方
  • Python同時性・非同期・並列性プログラミングを実務ですぐに適用したい方
  • 非同期文法を積極的に使用するWebフレームワークFastAPIを学びたいバックエンド開発者

この講義は
こんな方にも役立ちます

  • Pythonを学ぶJavaScript(非同期プログラミングベースの言語)開発者

Python同時実行プログラミング:
データ収集からウェブ開発まで

並行性プログラミング

  • クライアントとサーバー間の通信
  • システムディスクファイルの読み書き
  • データベースクエリ操作
  • APIの使用

並列性プログラミング

  • ビデオ、オーディオ、または画像処理
  • コンピュータビジョン
  • 機械学習
  • ディープラーニング

この講義は
このように進む

Pythonコルーチンと非同期関数

基本的な用語の整理とPythonのコルーチンについて学ぶ

  • バインド、ブロッキング、同期、非同期、サブルーチン、コルーチンなど、重要ですが、混乱する用語をマインドマップとコードで説明して整理します。
  • コルーチンを使用してPythonで基本的な非同期プログラミングを行う方法を紹介します。そして、特定の状況でスピードアップのために必ず非同期プログラミングを使用しなければならない理由を実務例(ネットワークI/O、CPU演算など)を通じてコードで証明します。

Pythonマルチスレッドとマルチプロセッシング

マルチスレッド?マルチプロセス?並行性?並列性?

  • セクション1で開発されたコルーチンベースのプログラムは、マルチスレッドで並行性(並行性)を使用するマルチスレッド技術を使用して実装されます。これにより、同期コードをasyncioモジュールの助けなしに並行処理する方法を理解します。また、Python GIL(Global Interpreter Lock)を使用してPythonからマルチスレッドに並列プログラミングができない理由について説明します。
  • マルチプロセッシング技術を使用して並列処理を行うプログラムを実装します。これにより、Pythonでマルチプロセスを使用する方法を学び、Pythonで分散処理を行うときにどのような状況でどのようにコードを設計するかをお知らせします。

並行性プログラミングによるデータ収集

同時性・非同期実際にプロジェクトに応用する

  • これまでに学んだ理論に基づいて、WebクローラとオープンAPIを使用したデータコレクタを開発します。実際のプログラムを開発しながら、同時実行プログラミングに慣れる時間があります。

本番プロジェクト:「データコレクタウェブアプリ」 with FastAPI

並行性プログラミングによるMongoDB CRUD、データ可視化、Web開発

  • これまでに学んだ理論に基づいて「データコレクタWebアプリ」を開発します。プロジェクトは同時実行プログラミングを使用してWeb上でクロールし、収集したデータをMongoDBに保存します。 MongoDBをFastAPIに関連付けて保存したデータを適切に分析し、可視化したWebアプリを開発します。このプロジェクトにより、非同期・並行性プログラミングが実務で使用されている場合を理解して適用することができます。

AWS クラウドコンピューティングでプロジェクトをデプロイする

プロジェクトは単純な開発では終わりません。 AWS クラウドコンピューティングテクノロジを使用してサーバーにウェブアプリをデプロイする方法もお知らせします.

ボーナス講義

質問を通じて更新される講義

  • このレッスンでは、必要なPython文法のレッスンが常にアップロードされます。
  • 重要な質問は、ボーナスレクチャーに継続的に答えてアップロードします。

講義の予想質問
Q&A

Q. Python選手の知識はどのくらい必要ですか?

この講義を受講するために必要なPython選手知識は、基本的な変数、条件文、反復文、関数、クラス文法です。講義を進めながら会う難易度のある文法は、別々に常時アップロードされる補足講義を通じて学ぶことができます。

Q. 受講に関する注意事項(必要な環境、その他の留意事項など)はありますか?

Pythonのバージョンは3.7以上の環境で行われます


知識共有者
伝えたい言葉

講義は今後も
引き続き更新されます

技術は変化し続けます。過去に書いたコードを現在でも直すことがないと、これまで学んだことがないという言葉があります。 Pythonのバージョンがアップグレードされたら、より良いスキルを学ぶために、アップグレードされたバージョンに合わせてレッスンを更新します。

質問は
いつも歓迎です

講義を受講しながら理解できない、または追加の説明が必要な部分は、いつでも論理的に事例とともに回答します。受講生の方の質問をお待ちしています!

こんな方に
おすすめです

学習対象は
誰でしょう?

  • 並行性プログラミングでPythonプログラムをスピードアップしたい方

  • Pythonの同時実行プログラミングを実践ですぐに使いたい人

  • MongoDBにデータをロードして管理したい方

  • FastAPIを導入したいスタートアップバックエンド開発者

  • 並行性プログラミングで効率的にクロールしたい方

  • 開発を超えて実際にWebアプリをデプロイして運営したい方

前提知識、
必要でしょうか?

  • Pythonの基本知識(変数、条件文、反復文、関数など)

こんにちは
です。

5,294

受講生

270

受講レビュー

336

回答

4.7

講座評価

3

講座

안녕하세요.  IT 지식 크리에이터, 윤상석입니다. 🎩 
더 유익하고 본질적인 지식 콘텐츠로 많은 가치를 드릴 수 있도록 노력하겠습니다.

- (주)하이퍼이지 대표이사
- (사)한국정보통신네트워크협회 AI분과기술위원
- (주)블루밴드 기술이사
- 前 (주)마로마브 웹 개발자
- 前 소프트웨어 엔지니어 기술 용역 (카카오, 포스코DX, )
- 前 소프트웨어 공학 온/오프라인 교육 다수 (스타트업, GS리테일, 삼성 등)

문의사항, 추가질문, 집필, 강의제안 ==> EndUpFree@gmail.com

カリキュラム

全体

32件 ∙ (5時間 40分)

講座掲載日: 
最終更新日: 

受講レビュー

全体

75件

4.9

75件の受講レビュー

  • wkdrmfmt님의 프로필 이미지
    wkdrmfmt

    受講レビュー 7

    平均評価 5.0

    5

    97% 受講後に作成

    Python文法に慣れていて、ある程度Pythonを使ってみた方におすすめしたいと思います。非同期方式を大体目でしか理解していなかったし、頭でしっかり理解して書いたことはありませんでした。実際に非同期方式を利用して、どのような動作を実装するのが新鮮に近づいてくれて楽しかったです。講義も核心部分だけ教えるのではなく、騎乗転決(?)の感じで講義の核心内容を説明する前に必要な内容を先に説明していただくことが良かったです。説明) これが基本的なようにもよく守れない講義が多かったです。 これからPythonやPythonフレームワークの講義を上げてくださったら、みんな聞きたいです。良い講義ありがとうございます。

    • amamov
      知識共有者

      とても嬉しいですㅎㅎありがとうございます!より良い講義をしっかり企画してみましょう。

  • kukaeden님의 프로필 이미지
    kukaeden

    受講レビュー 436

    平均評価 5.0

    5

    88% 受講後に作成

    FastAPIと並行性プログラムについてよく知っていただきありがとうございます〜!

    • iambyunghyun님의 프로필 이미지
      iambyunghyun

      受講レビュー 8

      平均評価 4.9

      5

      100% 受講後に作成

      最高の名講義の中の名講義です。 まず私はfast apiを活用してみたくなってきたのですが、非同期プログラミングも学びながら、やはり私はまだまだ足りない人間だったんだと感じました。 しかし、講師は本当に詳細でわかりやすく理解しやすく説明してくれてとても満足のいく講義でした。 私は誇張して少し歩擁して10万ウォンを超えても決済して聞くと思います... このレッスンは、back-endからfront-endまで、そしてサーバー展開までの内容が入っています。 この講義を聞いてみると、Spring frameworkのように難しいことになる前に、あらかじめ似たような経験を積んで視野を拡大させることもできそうですね。 講師様が教えてくださった内容を一生懸命復習し、またプロジェクトに発展させて私の知識にするようにします もう一度ありがとうございましたㅎㅎ 次回はSpring Frameworkの講義もお願いしますか。

      • amamov
        知識共有者

        よろしくお願いします。ぷっぷりですね:) スプリングの場合、今は計画にはありませんが、ぜひ覚えておきます!このような受講評のおかげで、次の講義を準備する力を得ます。

    • insightp님의 프로필 이미지
      insightp

      受講レビュー 3

      平均評価 5.0

      5

      100% 受講後に作成

      本当に気持ちよく完成度の高い講義だったようです。様々な人講を聞いてみましたが、この講義は多くの部分で本当に新鮮でした。 講義を知ったのはFastAPIに関心があり、無作為に探していたのがきっかけでした。 FastAPIをすばやく味わうことができ、一度、その基礎の重要な概念を知り、またもう一度、これから一人でどのように勉強するべきか方向への感覚をつかむようになってもう一度…合計3回感動しました。 現在講師のOOP講義も聞いていますが、共通して 1.業界でトレンディで重要な概念、フレームワーク中心の選択、 2. その概念(主題)を一講義単位で切る方式(+各講義相互独立)、 3. コアだけを素早く理解して応用できるようにする方法(これが真のマイクロランニング?)、 4.退屈でない適度に速い呼吸の進行、 5. 迷う人がいないように隙間が優しい説明、 6. 適切な川の長さ(同じ知識を伝えるなら、それにかかる時間が短いほど良いと思います) 7. 面白い実習コンテンツの構成 などの要素が本当によかったです。 とても満足する講義であり、今後もずっと良い講義(早く)(たくさん)作ってください! :Dありがとう!お疲れ様でした〜

      • amamov
        知識共有者

        詳しい受講評ありがとうございました!頑張おめでとうございます! :) 後続の講義制作中です。より良い講義でお返事します。 ✨

    • bw1208112727님의 프로필 이미지
      bw1208112727

      受講レビュー 1

      平均評価 5.0

      5

      100% 受講後に作成

      最高です最高!泣いてマスタード食べることでクロールをしてみた後、速度があまりにも出てこなかったので、解決策を考えて、Pythonに対する理解度ももう少し高めたくて悩んでいた車に偶然インフラとこの講義を知ることになりました。 付録ではありますが、AWSを実用するのがわかりました。 (Python、バックエンド、AWSを集中的に勉強しています。) 基本的な原理の説明も簡潔にしてくれて本当に大きな知識を得ていきます。クラスとオブジェクト指向の講義も購入しました!講義ずっと振り返り、一生懸命私のものにしましょう。これからも良いコンテンツをたくさんお願いします!

      • amamov
        知識共有者

        助けてくれて本当に気持ちいいです!ありがとうございます!

    ¥5,522

    amamovの他の講座

    知識共有者の他の講座を見てみましょう!

    似ている講座

    同じ分野の他の講座を見てみましょう!