トップページ⇒tech
50コメント11KB

開発におけるディレクトリ構造について

■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさんNGNG
開発におけるディレクトリ構造についての考察。
0002デフォルトの名無しさんNGNG
2
0003デフォルトの名無しさんNGNG
マ板へどうぞ
0004デフォルトの名無しさんNGNG
>>3
お前だけ逝ってろ
0005デフォルトの名無しさんNGNG
~/src
0006デフォルトの名無しさんNGNG
プロジェクトのルートとなるディレクトリが決まっていません。
プログラマまかせにさせられているので滅茶苦茶です。
0007デフォルトの名無しさんNGNG
うん?
相対ディレクトリで作るのが普通じゃないの?
0008デフォルトの名無しさんNGNG
<PROJECT_ROOT>
  src/appliA/
  src/appliA/makefile
0009デフォルトの名無しさんNGNG
ビルド単位毎に分けて、その下位は適当に。
0010デフォルトの名無しさんNGNG
プロジェクトに構成管理担当がいるだろ
そいつに提示させる
0011デフォルトの名無しさんNGNG
管理者不在。メンバー20人。それぞれが要求元に出向いている。
0012デフォルトの名無しさんNGNG
どうでもいいレス
先輩はフォルダを見つけやすくする為に
@を最初につけていた。
0013デフォルトの名無しさんNGNG
その会社辞めたほうがいいよ。
0014デフォルトの名無しさんNGNG
Mavenのディレクトリ構成
ttp://maven.apache.org/reference/dirlayout.html
0015デフォルトの名無しさんNGNG
良スレ期待
でも次スレはいらない
0016デフォルトの名無しさんNGNG
C/C++において、ヘッダファイルと対応するソースファイルは
同一ディレクトリに置くかどうか、いつも悩んでいる。

ライブラリとして利用する場合はヘッダとソースがいっしょじゃ困るだろうし、
分けるとしたらどうやってインクルードするのか、困る。

「どうやってインクルードするか」ってのは、対応するソースファイルがインクルードするときと、
ライブラリユーザーのコードからインクルードするときの2通りある。

boostみたいに、インクルードするときに #include "boost/..." と書けることは重要だと思う。
ただ、$BOOST_ROOT/boostというのがどうも納得いかない。
$BOOST_ROOT/include/boostとして、
たとえばgccなら -I$BOOST_ROOT/include とするほうがいいんじゃないかと思う。

みんなどう決めてますか?
0017デフォルトの名無しさんNGNG
projectA/
 include/
  projectA/
   componentA.h
 src/
  componentA/
   functionA.c
   functionB.c
  rc/
  etc/
 doc/
 build/
  bin/
  share/
  lib/
  include/
 configure
0018デフォルトの名無しさんNGNG
Project/
 src/
  jp/
   co/
    hoge/
  imgsource/
 bin/
  jp/
   co/
    hoge/
0019デフォルトの名無しさんNGNG
ディレクテリ切りすぎるとMakefile書くのが面倒
0020デフォルトの名無しさんNGNG
今時Makefileを手書きしているのか?
0021デフォルトの名無しさんNGNG
そういう>>20は何してんの?
0022デフォルトの名無しさんNGNG
pc5.2ch.net/
  test/
   read.cgi/
     tech/
0023デフォルトの名無しさんNGNG
  test/
   read.cgi/
この2つがいつも謎なんだけど?
0024デフォルトの名無しさんNGNG
1. test だったので test とパスを切った
2. 稼動させた
3. 変えるのも面倒なのでそのまま運営を続けた
0025デフォルトの名無しさんNGNG
盛り上がらんスレだな。
0026デフォルトの名無しさんNGNG
>>23
read.cgi以下はread.cgiが環境変数として読み取る。
http://tohoho.wakusei.ne.jp/wwwcgi3.htm#CgiParameter
0027デフォルトの名無しさんNGNG
VisualC++/gcc共通にしたい場合、Makefileの類はどこに置く?
projects.slnとconfigure.inを同じディレクトリに置いてるんだけど、
Windows用のソースだけ取り出したいときとか不便かも。
0028デフォルトの名無しさんNGNG
おれっちはEclipseでJava開発しているが

/workspace/プロジェクト名 の下にこんな感じで置いてる。
/build
 /src ← ソースコード置き場
  /main ← ソースコード本体
   /ドメイン名ディレクトリ(例えばnet.2ch.www とか)
    /パッケージ名ディレクトリ/*.java
  /test ← JUnitのテストケースクラスなどの置き場所
   /ドメイン名ディレクトリ(例えばnet.2ch.www とか)
    /パッケージ名ディレクトリ/*Test.java
 /bin バイナリ コンパイルされたコード置き場
  /main ← バイナリコード本体
   /ドメイン名ディレクトリ(例えばnet.2ch.www とか)
    /パッケージ名ディレクトリ/*.class
  /test ← JUnitのテストケースクラスなどの置き場所
   /ドメイン名ディレクトリ(例えばnet.2ch.www とか)
    /パッケージ名ディレクトリ/*Test.class
0029デフォルトの名無しさんNGNG
 /docs
  /api Javadocドキュメント生成用ディレクトリ
  /report JUnitの達成状況レポートディレクトリ(Antの<junitreport>が生成する)
 /uml EclipseブラグインOmondoによるUMLダイアグラム生成用ディレクトリ
  /class クラス図
  /deployment 配置図
 /.uml Omondoが勝手に自動生成するディレクトリ
 /io I/O関係など、ファイル入出力が関与するディレクトリ
 /sbook ← Eclipseのスクラップブックのファイル置場
/CVS ← これは勝手にできてしまうがEclipseからはみえないので気にしない(Antでは例外)。

build.xml ← Apache Ant専用
/ant
 名前.xml ← build.xmlから<ant>タスクなどで呼び出すビルドファイル。
/jar antなどで作成されたjarファイル。
/pkg 外部パッケージ(Eclipse3.0からは専用の外部パッケージ置き場が作られるので要らなくなる)
/m 何かのメモ置き場(こいつもEclipseでCVSで管理する)
/key jarファイル署名用ファイル置き場
0030デフォルトの名無しさんNGNG
strutsとかServlet, JSP. EJBとかなると
もっと複雑になりそうだ

だれか良いサンプル持ってない?
0031デフォルトの名無しさんNGNG
inc
srcs
とか単数複数統一してない構成が結構多いよな
0032デフォルトの名無しさんNGNG
sauce/
0033デフォルトの名無しさんNGNG
sauce
 /soy
 /demiglace
0034デフォルトの名無しさんNGNG
Y:\ ←ソースからドキュメント、実行ファイルまで全部
0035デフォルトの名無しさんNGNG
include "ここに相対パスいれますか?それともファイル名だけいれてパスは別指定にしますか?.h"
0036デフォルトの名無しさんNGNG
>>35
ディレクトリ指定は入れるけど、ソースファイルからの相対では入れない。
0037デフォルトの名無しさんNGNG
include "C:\\Documents and Settings\\Projects\\test\\src\\include\\test.h"
こんな感じ
0038デフォルトの名無しさんNGNG
最下層保守
0039デフォルトの名無しさんNGNG
age
0040デフォルトの名無しさんNGNG
入ります ディレクトリ ほげほげ
0041デフォルトの名無しさんNGNG
0042デフォルトの名無しさん2005/04/15(金) 21:35:26
/usr/lib とか /usr/include に相当するのは、Windows では何なんでしょう。
いろんな市販のライブラリがあると思いますが、そういう物を導入すると
どのように展開されるんでしょうか?

そのライブラリの名前のディレクトリが C:\Program Files 直下に作られて
そこに展開されるとか?
0043デフォルトの名無しさん2005/04/15(金) 23:36:33
>>37
それやると、cvs とか svn で複数のワークスペースを
checkout してるときに困る。相対にすべき。
0044デフォルトの名無しさん2005/04/16(土) 00:37:45
>>43 ネタニマジレス
0045デフォルトの名無しさん2005/04/19(火) 21:57:24
>>42
特に決まりはないというかみんな好き勝手なところに入れるなよおかげでディスクの中ぐちゃぐちゃじゃん。
という感じ。
0046デフォルトの名無しさん2005/04/30(土) 09:30:39
>>42
> /usr/lib とか /usr/include に相当するのは、Windows では何なんでしょう。

c:/usr/local/cygwin/usr/lib
c:/usr/local/cygwin/usr/include

0047デフォルトの名無しさん2005/05/05(木) 22:26:03
落としてきて,makeしたりすると,.depsってディレクトリできるけど,
それぞれのソースのディレクトリの中に".deps/"作る*2か,まとめて,"bin/"作る*1か,
どっちがいいんでしょう?

/projectA
 /bin
  /part1
   a.exe   *1
 /src
  /part1
   a.c
   /.deps
    a.exe  *2
0048デフォルトの名無しさん2005/05/06(金) 12:53:10
>>47 .deps ってなんだ?
0049デフォルトの名無しさん2005/05/06(金) 12:56:17
libtoolsが作る奴じゃないかな?
0050デフォルトの名無しさん2005/06/08(水) 15:45:14
ノートPCでいつでもできるように
c:\lib
c:\src
で開発,デモの時はディレクトリーごとコピー
こんなんでいいんだろうか
■ このスレッドは過去ログ倉庫に格納されています