Help us understand the problem. What is going on with this article?

解析において僕の考える最強のフォルダ構成

More than 5 years have passed since last update.

まえおき

Matlabで解析をしているときの
フォルダ構成を書いてみます。

でも解析一般で使えるかと思うので
参考にしていただけると幸いです。

フィードバックいただけると
なお嬉しいです。

概要

解析の際の、
僕の考える最強のフォルダ構成を書いてみます。

6月の段階でこれ組んで、
今のところヘルシーに解析できています。

 基本思想

MVCパタンに則っています。
理由は単に、僕がRails屋さんだったからです。
Model(クラス)、
ControllerとView(Experimentファイル群でそれぞれ画像出力まで行う)
と、2つに分けています。

検討した結果、Viewにあたるものは
画像の保存だけで良いという結論になったからです。

Viewとして画像ファイルを保存するときは、
加工可能なデータ形式であると好ましいです。

共通処理/ロジックは
クラス・スクリプトファイルに任せます。

そのうえで、毎回の解析を全て
Experimentsフォルダに
experimentsファイルとして保存していきます。

これにより、いつ何をやったのかをさかのぼりやすくなりますし、
各Experimentファイルと対応する
結果出力フォルダを生成するようにすると一切迷わなくなります。

フォルダ構成

全体のファイル構成

解析に使う系

dataフォルダ

データを入れておくところです。
一応切り分けます。

experimentsフォルダ

experimentsファイル

全ての解析スクリプトを追加していきます。
スクリプトは、解析の日付を接頭辞にして
解析内容の分かる名前をつけましょう。
この発想は、RailsのMigrationのところです。
バージョン管理が容易になると考えました。

libsフォルダ

クラスファイルを突っ込みます。
共通メソッドかどうかでフォルダをさらに
分けるのもありです。

scriptフォルダ

クラスファイルで記述できない
種類の共通処理を記述します。

定数の呼び出しなどは共通処理なので、
load_constants
などとして1ファイルで必要な物を全て呼べるようにします。

testフォルダ

新しくクラスファイルを実装するときなどには
Testを書くので、こちらにTestファイルを設けます。
一応こちらはExperimentsに倣って
日付を接頭辞にしておきます。

結果をまとめる系・その他

docフォルダ

論文をストックしておくフォルダです

resultsフォルダ

結果を全部突っ込みます

slides

発表スライドをしまっておくフォルダです。
散らからないように、docsとは分けています。

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away