2011-02-17 7 views
5

저는 Eclipse에서 여러 프로젝트를 만드는 것을 조심합니다. 의이 시나리오를 보자 : 모든 비즈니스 로직이있는 주요 J2EE 프로젝트는,이Eclipse에서 여러 프로젝트를 만드는시기는 언제입니까?

  • , GUI 렌더링을 등
  • 그런 다음 기본적으로 만 최대 절전 모드 POJO를 가지고 있으며, 하나 개 더 지원하는 프로젝트가 관련 구성을 최대 절전 모드 stuff

이것은 변경 될 때마다 Hibernate 프로젝트 jar를 테스트하기 위해 메인 프로젝트에 배치해야 함을 의미합니다.

단점은 무엇입니까?

  • 클래스의 변화의 작은, 당신은
  • 직접 만 다시
  • 을 전체 단지를 구축해야, 클래스 파일을 전송할 수 없습니다 다시 한번 항아리를 구축하고 서버에 전송해야 원격 디버그 모드에서
  • 뜨거운 항아리를 전송하고 서버를 항상

장점은 무엇인가를 다시 시작 최대 절전 모드 프로젝트, 큰 고통에서 클래스 파일을 대체하지 않습니다 편집? 내가 우려 내일 분리하는이 프로젝트에 내 J2EE 프로젝트를 분할해야한다면

  • , 내가 직접 DB 부분을 복사 할 수 있습니다, 즉 항아리를 최대 절전 모드 및 그래서 지금 분할 프로젝트

내 질문 사용하기 시작 :

  • 새 패키지 대신 새 프로젝트를 만들 때 가이드 라인이 있습니까?
  • 위와 같은 경우 3 가지 단점을 해결하고 장점이 하나만있는 두 프로젝트를 병합하는 것이 좋습니다.
  • 업계 표준은 무엇입니까? 모범 사례?

답변

4

프로젝트를 더 많이 분리할수록 좋습니다.

명확한 종속성 분리를 설정할 수있게되면 즉시 자체 프로젝트로 이동하십시오. 코드가 커지면 다른 프로젝트에서 코드를 더 쉽게 재사용 할 수 있습니다.

+0

개발자가 분리되어 갈수록 개발자가 Java에서 esp를 계속 사용하는 것이 더 어려워 질 것이라고 생각하지 않습니까? – pavanlimo

+1

개발자가 주위를 던져서는 안되기 때문에 가장 확실한 것은 아닙니다. 그것들은 빌드 및 배포 시스템에 통합되어야합니다 (허드슨 또는 크루즈 컨트롤과 같은 좋은 무료 시스템이 있거나 AnthillPro 또는 Build Forge와 같은 유연성이 있어야 함). 이 시점에서 도구는 jar 파일을 관리하므로 개발자는 코드가 어떻게 작동해야하는지에 대해 걱정할뿐입니다. – corsiKa

+2

문제는 항아리가 변경 될 때마다 서버를 다시 시작해야한다는 것입니다.이 서버는 지루하고 시간이 오래 걸립니다. 핫 코드 대체는 Java 사용자에게는 구원자이지만 jar의 경우에는 작동하지 않습니다. Hudson 등의 도구 일반적으로 프로젝트는 좋지만 빠른 개발 테스트에는 사용할 수 없습니다. 1 라인을 변경하고 빠른 개발 테스트를 위해 변경 사항을 빌드하고 배포하는 데 3 분 이상 기다리는 경우에는 좋지 않습니다. – pavanlimo

3

서로 다른 레이어가있는 경우 서로 다른 프로젝트에 레이어를 배치 할 수 있습니다. 이것은 레이어를 분리하고 인터페이스를 통해 이야기하고 레이어 간의 순환 의존성을 피할 수있는 약간의 동기를 부여합니다 (프로젝트는 서로 의존 할 수 없습니다!)

종종 나는 모든 프로젝트에 대해 모든 라이브러리와 리소스를 포함하는 하나의 전문 프로젝트를 소개합니다. 전체 응용 프로그램. 아마도 응용 프로그램을 빌드하고 배포하는 데에만 사용되는 또 다른 응용 프로그램 (ant/maven 빌드 스크립트, RCP 응용 프로그램의 경우 제품 정의) 일 수 있습니다. 마지막으로, 별도의 프로젝트에서 모든 테스트 케이스를 정의하는 것에 대해 생각해보십시오. 테스트에는 때때로 특수 라이브러리와 리소스 파일 (로거 구성, 테스트 데이터가있는 데이터베이스 덤프)이 필요하며 해당 파일이 응용 프로그램 구성 파일과 libs와 섞여서는 안됩니다.

관련 문제