2011-03-14 2 views
1

제가 일하는 회사는 특수 제어 시스템과 상호 작용할 수있는 강력한 Java 기반 서버 구성 요소 프레임 워크를 보유하고 있습니다.데이터 액세스를위한 풍부한 JavaScript API로 열린 웹 앱을 개발하는 가장 현대적인 방법은 무엇입니까?

우리는 UI 프레임 워크를 가지고 있지만 이것은 또한 자바 기반입니다. 고객은 Java 애플릿을 사용하여 제어 정보 등에 액세스 할 수 있습니다.

최근에 저는이 제어 시스템 정보에 원격으로 액세스하기 위해 풍부한 JavaScript API 작업을 시작했습니다. 현재 프로토 타입입니다. 자바 스크립트에 익숙한 사람이라면 원격으로 컴포넌트에 액세스 할 수 있기 때문에 좋습니다. 지금까지 그것은 정말로 잘 작동합니다. 이 API를 사용하는 프로토 타입 응용 프로그램을 작성했습니다. jQuery에 대한 소개가있었습니다. 또한 자바 스크립트 API가 자바에 대한 RPC 호출을 할 수있는 기능과 세션 기반 컴포넌트 구조를 추가하여 서버에 실제로 필요한 것을 필요할 때 사용할 수 있도록했습니다.

지금까지 그렇게 좋았습니다. 나는 정말로 '웹 개발자'는 아니지만 인정해야합니다. 필자는 Structs, Spring 또는 심각한 엔터프라이즈 기반 웹 개발을위한 MVC 기반 아키텍처 (필자는 디자인 패턴에 매우 익숙 함)를 사용한 적이 한번도 없습니다. 내 배경은 응용 프로그램 개발입니다.

나는 이것이 올바른 접근인지 또는 내가 놓친 것인지 프로로부터 알고 싶습니다. 내가 함께 일하는 누군가가 정말로 깔끔한 Server Side Include 아키텍처를 만들었습니다. 그러나 이것이 정말로 필요한지 이제 궁금합니다. 후에 JS API 및 jQuery를 사용하여 무엇이든 만들 수 있다고 생각합니다. 이 새로운 시대의 개방형 웹 응용 프로그램에서 다른 '서버'기반 아키텍처를 고려해야합니까?

브라우저 지원이 진행되는 한, 저는 오래된 세대의 브라우저에 대해서는 신경 쓰지 않습니다. 여기에서는 강의가 없으므로 이전 기술은 IE6와 비슷하게 수행됩니다.

오픈 클라이언트 측 기술을 사용하여 정교한 오픈 웹 응용 프로그램을 작성할 수 있습니다. 내 API 때문에 실제로 서버 측 코드가 거의 필요하지 않습니다. 나는 HTML 5 기능 등을 이용할 수있을 것이다. 그러나 나는 무엇이든지 놓친다? Server Side Includes와 같은 다른 서버 측 Java 기술을 고려해야합니까? 나도 고객 중심이야?

답변

2

HTML5/Javascript, Java 애플릿, Flash/Flex 및 Silverlight와 같은 최신 RIA를 만드는 데는 4 가지 방법이 있습니다. 처음 두 개만 열립니다.

애플릿은 불편하고 사람들에게는별로 좋아하지 않습니다. 개인적으로 나는 HTML/Javascript와 함께 갈 것입니다. 비즈니스 목적으로 이용하기 편리한 라이센스

  1. 그건 오픈 소스 :

    당신 때문에 나는 다음과 같은 이유로 GWT와 함께가는 것을 권 해드립니다 자바 가게입니다.

  2. 브라우저에 최적화 된 최소 크기의 자바 스크립트를 만듭니다.
  3. Google에서 적극적으로 개발하여 사용하고 있습니다. 이는 얼마 동안 지원 될 것이라는 보장입니다.
  4. 지식이 많은 개발자가 있습니다.
  5. 좋은 문서와 적극적인 사용자 그룹이 있습니다.
1

많은 의견이 있지만 확실한 것은 HTML5, 빠른 자바 인터프리터, 클라이언트 측 영구 저장소 등입니다. 모든 UI 응용 프로그램 로그인을 클라이언트에 넣을 수 있습니다. 브라우저)를 사용하고 서버에 JSON 직렬화와 함께 RPC 형식을 사용하면됩니다. 따라서 템플릿 엔진, SSI 또는 임의의 서버 측 생성 마크 업은 더 이상 대화 형 응용 프로그램에 필요하지 않습니다. 준 정적 문서에서는 여전히 괜찮습니다. 이를 위해 저는 스핑크스 문서 생성기를 사용합니다.

0

빨리 감기 2 년. 이제이 질문에 답할 수 있도록 TodoMVC을 처분 할 수 있습니다. 서버 측 기술에 관한 한 GWT는 여전히 언급되어 있지만 클라이언트와 서버에서 코드 재사용을 극대화하기 위해 찾고있는 것은 아마도 The Holy Grail 일 것입니다.