知りたいこと
まだプログラミング初心者で、簡単なアプリケーションを自作してプログラミングを楽しんでいます。
一つのソースコードに複数の機能を作りたくなった場合や、追加で機能を増やす場合、どのようなディレクトリ構造にしていけば分かりやすく、また拡張性が高いのか、ベースとなる考え方や自分の間違っている点など経験豊富な先輩方にご指摘頂きたいです。
具体例
例えば、webページから情報をスクレイピングしてtxtファイルに保存し、必要な情報を抜き出しcsv形式で保存して、csvの情報をもとにグラフにプロットするという3つの機能のアプリを開発するとして、どのようなディレクトリ構造にするのがベターなのでしょうか。
今、自分は下記のようなディレクトリ構造をとっているのですが、main.pyが複数ある状況や、自分の中では「scraping」「extract_data」「plot」と3つのアプリを開発しているような感覚がありつつ、extract_dataのmain.pyがscrapingのweb_data.txtのパスを参照している部分などが少し気持ちが悪く感じています。
また、今回の設定のような状況で、別のデータをスクレイピングしたいとき(スクレイプするサイトが違うのでscrapingでは別のコードを書きたいが、extract_dataやplotは共有して使いたいとき)、はどのようにフォルダを追加すれば良いのでしょうか。
よろしくお願いいたします
<上記例の現在のディレクトリ構造>
- src
- scraping
- data
- web_data.txt
- modules
- module_A.py
- module_B.py
- main.py
- data
- extract_data
- csv
- data.csv
- modules
- module_A.py
- module_B.py
- main.py
- csv
- plot
- modules
- module_A.py
- module_B.py
- main.py
- modules
- scraping
- .gitignore
- .env
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。