2011-06-14 8 views
2

처음으로 새 프로젝트를 시작할 수있는 기회가 생겼습니다.새 프로젝트를 시작하는 방법

'개발'과 관련하여 프로젝트 구조가 마음에 들다. 그것은 보통 'src', 'lib', 'resources', 'test'등의 dirs를 가지고 있습니다. 이미 이클립스 프로젝트에이 구조가있다.

소스 제어에서 dir 구조가 무엇인지 결정할 수 없습니다. 저는 현재 다음과 같은 생각입니다 :

/sourcecontrol/branch/MyProject: 
-dev 
---- Here I will have dirs that make up the 'Eclipse' project. 
-dbscripts 
---- sql Scripts for any DB Schema change 
-documentation 
---- UserGuide.pdf 
---- DeveloperGuide.pdf 
---- Other such docs 
-sh 
---- Here I will have the scripts to deploy, start, and stop the web server. 
-notes 
---- Here I will store random 'helpful notes' that developers can create for other developers. 

아이디어는 누군가가 단지 프로젝트를 '개발'하고자 할 때, 그들은 단지 'DEV'디렉토리를 체크 아웃 할 수 있다는 것입니다.

이것은 좋은 아이디어입니까? 과거의 경험에 대한 제안이 있습니까? 나는 'src', 'test', 'lib'등등에 대해 말하지 않는 새로운 프로젝트를위한 '베스트 프랙티스'를 찾을 수 없었다.

EDIT : 도움이된다면 자바 스프링 + 최대 절전 모드 웹 응용 프로그램

EDIT2 : 이것은 현재 로선 내 관심사입니다. Eclipse 프로젝트 구조가 소스 카운트 롤의 프로젝트 구조이기도합니까? 그렇다면 이클립스 프로젝트의 기본 디렉토리도 소스 제어 프로젝트의 기본 디렉토리가됩니다

+0

개발자 노트에 별도의'notes' 디렉토리가 없으므로 모든 정보를 개발자 가이드에 넣으십시오. 또한 PDF 파일을 편집하는 습관이 없으면 설명서/가이드를 저장합니다.doc 또는 무엇이든, 배포 될 때 PDF로 변환하십시오. – Qwerky

답변

5

몇 가지 참고 사항 :

  • 피가 IDE의 설정에서 검사합니다. 소스 코드 (src/main/java, src/test/java)에 대한
  • Maven을 사용하여 스타일의 레이아웃은
  • SQL은 즉 src/main/sql 비슷한 스타일로 구성 할 수 있습니다.
  • : 메이븐 API, 구현, SQL, 설치 등
  • 고려 프로젝트의 복잡도에 따라 별도의 모듈 (항아리)은 멀티 모듈 프로젝트에 대한 지원이 포함되어 있습니다
+3

첫 번째 항목에 동의하지 않는 경향이 있습니다. 물론 : 빌드 시스템은 IDE 설정 파일에있는 * 정보에만 의존해서는 안되지만, 좋아하는 IDE에서 좋은 "체크 아웃하고 그냥 일하는"경험을하는 것은 그리 나쁜 일이 아닙니다. –

+1

내 팀은 실제로 이클립스 설정이 체크인 될 것으로 기대한다. 모든 사람이 이클립스 SVN에서 체크 아웃을 할 수 있고, 즉각적으로 실행되고있다. – rk2010

+1

src/main/scripts, src/main/docs. IDE 설정 파일 정보 : 체크인을하고 "그냥 작동"하면 좋지만 체크 인을하고 특정 사람의 환경에 대한 정보 (자주 보았 듯이)가있는 경우 더 나쁩니다. – Kevin

1

src, test 및 lib 디렉토리에 대해 말하지 않는 모범 사례를 찾지 못했다면 그 (것)들을 창조하는 힌트는 일반적으로 예외 인 제일 연습이었다. 나는 당신이 당신의 dev 디렉토리 아래에서 만들 수 있다고 생각한다.

+0

아마도 내 게시물이 분명하지 않았을 것입니다. 나는 이미 내 dev 디렉토리에 그 디렉토리가있다. – rk2010

+0

'lib' 디렉토리를 갖는 것은 빌드 시스템이 의존성을 관리하지 않는다면 유용하다. 예를 들어, Maven/Ant + Ivy/Gradle은 외부 소스로부터 종속성을 확보합니다. 이런 경우'lib' 디렉토리를 갖는 것이 실제로 문제의 징조가됩니다. –

+0

@ Joachim Sauer : 이는 의미가 있습니다. 나는 엄격하게 Eclipse 관점에서 질문을 생각하고 있었다. – Olaf

0

대부분의 자바 ID (Eclipse/IntelliJ/Netbeans)는 Maven을 지원합니다. 또한 teher는 대부분의 웹 서버를 시작하고 중지하기위한 플러그인입니다.

당신이

1 단계 다운로드로하고 메이븐을 구성합니다 시작하는 가장 간단한 방법입니다. (Netbeans 7.0은 Maven 지원이 내장 된 상태로 제공됩니다)

2 단계. AppFuse에서 읽으십시오. http://www.ibm.com/developerworks/java/library/j-appfuse/

3 단계. AppFuse에서 프로젝트에 적합한 AppFuse arcehtype을 찾아서 사용하십시오.

관련 문제