2016-10-21 10 views
3

Rで初めて実質的に大きなプログラムを書く予定です。私の通常の手順に従って、私は15のクラスを設計しました。これは5つのコンポーネントに分かれています。私が見ても分かるように、各クラス(定義と関連メソッド)はそれぞれのファイルに存在し、各コンポーネントはそれ自身のサブディレクトリを持ちます。所望の構造のことである:R:サブディレクトリとドキュメントを含むプロジェクトを作成する

-R 
-component_0 
    -classA 
    -classB 
-component_1 
    -classC 
    -classD 

は当初、私は(RStudioを使用して)、空のプロジェクトを作成し、私はroxygenを使用しようとしたとき、私は、パッケージ構造が必要であったことに気づきました。パッケージを作成すると、私はサブディレクトリをサポートできないことに驚いた。

私はプロジェクトとしてパッケージを開発することが不可欠であることを認識しています。特にCRANで見ることが望ましいからです。しかし、私の木構造を破壊することは、私が絶対に避けたいものです。私が想像するように、ドキュメントも同じ構造を持つ必要があります。

なぜこの制限が存在するのか説明できますか?それを避け、C++のようなほとんどのコンピュータ言語で自明のものを達成する方法はありますか?

また、一般的な方法である関数ではなく、ファイルにクラスを割り当てたことにも注意してください。これはオブジェクト指向のソフトウェアを設計して以来、私には最良の選択です。それについてのコメント?

+0

あなたがここにあなたの質問のほとんどのための答えを見つけるだろう持っている:私は見https://stackoverflow.com/a/14905225/4468078 –

答えて

1

/RフォルダにすべてのRファイルがあります。そこでは、(私はあなたが探しているものを形本当に

  • component_0-classA.R
  • component_0-classB.R
  • component_1-classC.R
  • component_1-classD.R

ないのファイル名を使用しますが、私はこれがうまく機能していると思います少なくとも私にとっては)。

が見here

+0

を、私ははるかにある、この解決策を知っていました魅力的から私に。私は妥協すべきだと思いますが、この制限がどのようになって、それが役立つのかが私をしばらく気にしています。 – blindeyes

+0

あなたにすべてが分かり、答えが役に立つのであれば、投票してそれを解決済みとマークすることは素晴らしいことでしょう。あなたの問題に応じて:component_0と_1が十分な大きさであれば、2つのパッケージと2つのパッケージを使ってトップレベルのパッケージを作成することもできます... – Christoph

+0

私は役に立ちましたが、 )、そしてこの制限の正当性。あなたの最後の提案は本当に面白かったです。このテクニックを採用しているGithubのプロジェクトに精通していますか?初心者が入れ子になったパッケージを開発するのはあまりにも複雑になることがあります。 – blindeyes

関連する問題