私の質問は概念的ですが、私にとって非常に重要です。
私は中級者ですPython開発者です。私はそれについて十分に知っており、実際に日常的に使用しています。今、私の機能をライブラリ/ APIユーザーから "に変換したいと思います。デザイナー」の1つ。
" Python Requests " library byKenneth Reitzは、探索するのに非常に適した場所であることがわかりましたPythonパターンとイディオム。大きな問題を本質的なModules
に分割し、必要なクラス/関数を定義し、それらを使用して連携する方法を学ぶ必要があります。
私はそのような規律を欠いており、この知識を得るために飢えています。
このライブラリにどのように飛び込む必要がありますか?それはbigであり、多くのモジュール(もちろん、論理名を含む)、クラス、およびメソッドがあります。私はコードを読み始めましたが、自分がどこにいて、コードのこの部分が何のために設計されているのかわかりません。
焦点を当てる。質問を考えて、それに答えてみてください。例えば:
... 等々。
一般的なタスクに従うことから始めます。たとえば、通常のGETリクエストがどのように処理されるか、またはデータが到着した後の.json()
メソッドがどのように機能するかを調べます。
コードの本体によって主題に精通するのに役立ちますモデル化。クライアントの観点からHTTPがどのように機能するかを知ることは役に立ちます。 302リダイレクトとは何か、またはHTTPがヘッダーを使用して情報を交換する方法がわからない場合は、進行中のすべてを理解するのが難しくなります。
幸いなことに、requests
ライブラリは、懸念事項を適切に分離して維持します。たとえば、urllib3
ライブラリの内部に深く入り込む必要はありません。
@Martijn Pietersが指摘しているように、ライブラリが解決する問題を知る必要があります。つまり、実際には、問題ドメインを理解する必要があります。
そうすれば、著者が行った選択についてアイデアを持ち、一部を評価し、他を批判することができます。
ライブラリが大きすぎてすぐに概要を把握できない場合は、コードが何をしているのか(少なくともおおよその)アイデアがある場所から始めることをお勧めします。 requests/api.py
と
いくつかの出発点からこれを行うと、全体の概要がわかります。未知の領域を探索するようなものです。