답변:
Deckard 는 꽤 좋은 반응을 보였습니다. 이 프로젝트가 어떻게 진행 될지 고려해 볼 가치가 있다고 덧붙이고 싶습니다. 얼마나 많은 동료 (또는 일반적으로 개발자)가 Swing 등에 익숙하고 RCP에 얼마나 많은지를 알고 있습니다. 우리 조직은 오래된 RCP 응용 프로그램을 제거하려고 할 때 약간의 두통이있었습니다. 프로젝트 설계와 관련된 대부분의 사람들이 회사를 떠나거나 비 개발 역할로 이동 한 것으로 나타났습니다. 우리의 사내 전문 지식은 Swing에 더 많았 기 때문에 필요한 것보다 훨씬 어렵게 만들었습니다. 또한 그 일부를 별도의 Swing 기반 응용 프로그램과 통합하고 이전 응용 프로그램이 RCP 응용 프로그램이라는 사실로 인해 문제가 발생했습니다.
RCP 앱을 작성해서는 안된다는 말은 아니지만 먼저 고려해야 할 사항이 있습니다.
기본적으로 Swing을 사용할 때는 모든 것을 수동으로 설정해야합니다. Window, 각 영역 및 컨트롤을 정의하고 그 안에 다시 각 컨트롤을 정의합니다. 모든 컨트롤 및 영역에 대해 변경 및 사용자 작업 등을 처리하기 위해 처리기를 정의합니다. 명시 적으로 정의하고 구현하지 않으면 아무것도 작동하지 않으므로이 작업을 수행해야합니다.
RCP에서도이 기능을 사용할 수 있지만 많은 공통적 인 작업을 수행하는 여러 가지 고급 구성 요소가 제공됩니다. 예를 들어 MDI (Multiple Document Interface)를 정의하거나 아이콘을 클릭 할 때 외부 플러그인을 시작하는 아이콘이있는 도구 모음을 추가하는 것은 단지 몇 가지 구성 단계입니다.
RCP는 Eclipse의 강력한 기능이므로 기본 블록은 개발 환경과 유사한 응용 프로그램, 즉 모든 종류의 상황에 맞는 메뉴 / 도구 모음 / 작업 등을 사용하여 모든 종류의 창에서 광범위한 텍스트 편집이 필요한 응용 프로그램에 초점을 맞추는 경향이 있습니다.
따라서 비표준 항목이 많은 작은 사용자 정의 응용 프로그램 (예 : 모든 종류의 사용자 정의 또는 스키닝 가능한 컨트롤이있는 화려한 Twitter 클라이언트)을 만들고 싶다면 RCP를 사용할 필요가 없습니다. 실제로 5 + MB 이상의 플러그인을 실제 이점없이 애플리케이션에 끌어다 놓습니다.
웹 페이지를 표시하는 응용 프로그램을 만들고 광범위한 도움말 시스템이 필요하며 인터넷을 통해 자동 업데이트를 수행해야하는 경우 이러한 종류의 대규모 데스크톱 응용 프로그램 기능이 필요한 경우 RCP가 적합합니다.
저는 Eclipse RCP 및 Netbeans Platform에 대한 전문 지식이 풍부한 전문 Java 소프트웨어 엔지니어입니다.
"Eclipse RCP 또는 Netbeans 플랫폼을 사용해야합니까?"
답변 : 다음 요인에 따라 다릅니다.
위에서 언급 한 요소에 따른 각 RCP의 장단점은 다음과 같습니다.
Netbeans 플랫폼 :
장점 :
단점 :
이클립스 RCP :
장점 :
단점 :
내 개인적인 선호는 Netbeans 플랫폼입니다. 내 코드로 수행하는 작업을 완전히 제어하고 스윙 기반 UI가 SWT보다 안정적이라고 생각하기 때문입니다 ( 내가 코딩하는 동안 Eclipse IDE에서 일부 UI가 충돌합니다 : P)!
"RCP 애플리케이션은 Swing 또는 SWT를 사용하여 개발 된 것보다 더 많은 종속성이 필요합니까?"
답 : 의존성 때문에이 두 아기가 굴러갑니다. 그렇지 않으면 RCP라고 불릴 필요가 없습니다. RCP는 Rich Client Platform의 약어로, API를 통해 "Rich"애플리케이션을 빌드하는 데 도움이되는 에코 시스템 (대규모 API 세트)을 의미합니다. ;-). 따라서 여기에 대한 대답은 "예, 더 많은 의존성"입니다!