私は現在、テスト駆動開発の方法論を使用してHaskellプロジェクトを実行しようとしています。Javaでは、srcフォルダーとbinフォルダーを含む適切に構造化されたプロジェクトを作成できます。次に、JUnitを使用した単体テスト用のメインフォルダーとテストフォルダーがあります。Haskellでそのような構造を取得するための標準的な方法があるのだろうかと思っていました。ソース用のフォルダーバイナリ用のフォルダー、およびソースフォルダー内にメインソース用の1つをテストするための2つのフォルダー。
2 に答える
私のリファレンスは常にHaskellプロジェクトの構造とコミュニティが多かれ少なかれ従うように見えるいくつかのデフォルトを詳しく説明するHaskellプログラムの書き方です。これまでのところうまく機能していますが、私のプロジェクトはまだそれほど大きくありません。
Haskellプロジェクトの構造で提案されていることは、テストフォルダーがsrcフォルダーと同じディレクトリにあるなど、いくつかの小さな変更を加えて、投稿で概説したものと似ています。
編集:
cabal init
少なくともインポートされたファイルがある場合は、関連する依存関係を持つcabalファイルを含めて最小限の量が生成されます。それは素晴らしいスタートですが、あなたが探しているもののほんの一部です。
理想的には、プロジェクトが成長するにつれて、cabalファイルとディレクトリ階層が自動的に最新の状態に保たれますが、これを実行するツールが公開されていることを私は知りません。他の多くの人にも当てはまると確信しているので、おそらく1日のリストに載っています。
-odir
ghcとともに-hidir
使用して、*。oファイルと*.hiファイルを別々のディレクトリに配置できます。詳細については、GHCユーザーガイドの個別のコンパイルに関するセクションを参照してください) 。
Edit2:
その他の関連する/重複する投稿:
これに対する現代の答えは、HaskellToolStackを使用することです。これにより、適切なデフォルトを使用してプロジェクトが構築されます。