2008-09-19 3 views
8

나는이 질문이 asked before 이었다는 것을 깨닫는다. 그러나 그것은 괜찮은 응답이없는 달이었다. 나는 Aptana's Jaxer을보고 있는데 나는 그 개념이 매우 흥미 롭다고 생각한다.Jaxer에 익숙한 사람이 있습니까? 나는 찬성과 반대를 찾고있다

Jaxer는 그들의 말, "세계 최초의 진정한 AJAX 서버"에 있습니다 :

는 여기에 익숙하지 않은 사람들에 대한 빠른 개요입니다. Mozilla 엔진을 기반으로하므로 스크립트는 javascript로 작성되며 서버 측에서 DOM에 대한 완전한 액세스 권한을 갖습니다.

스크립트는 <script> 태그를 사용하여 페이지에 배치되며 클라이언트, 서버 또는 둘 다에서 실행을 위해 스크립트를 표시하기 위해 runat 속성 (ala ASP.NET)을 지정하거나 "server-proxy"로 지정할 수 있습니다. 기능은 클라이언트에서 사용할 수 있지만 AJAX를 통해 서버에서 실행됩니다. 이것은 또한 클라이언트뿐만 아니라 서버에서도 원하는 클라이언트 측 라이브러리 (jQuery, Prototype)를 사용할 수 있음을 의미합니다.

Jaxer를 사용하기 위해 기존 응용 프로그램을 전환하는 것을 돕는 것 외에는 다른 언어 (예 : php, ruby)로 생성 된 문서를 처리하는 데 사용할 수도 있습니다.

  • 장단점은 무엇입니까?
  • API가 얼마나 성숙하고 안정적입니까?
  • 다른 서버 측 html 프리 프로세서와 비교하면 성능이 얼마나 좋은가요?
  • 누구나 기술 (php, pearl, ruby ​​등)을 사용하여 Jaxer를 사용하고 있습니까? 귀하의 경험은 무엇입니까?

편집 : 나는 Jaxer와 함께 재생하는 동안 내가 발견 한 단점에 대한 또 다른 질문을 게시했습니다 Defining objects when using Jaxer

답변

12

나는 아주 오래 Jaxer를 사용하지만, 여기 내가 찾은 몇 가지의하지 않았다 :

프로는

  • 같은 코드에서 프론트 엔드와 백엔드를 작성합니다. 특히 유효성 검사 논리 작성에 좋습니다.
  • 서버로 "원활한"AJAX 통신 - JS 기능을 호출하는 것과 같습니다.
  • jQuery와 같은 JavaScript 프레임 워크를 사용하여 DOM을 조작 할 수있는 기능.
  • Canvas API를 사용하여 이미지를 생성하거나 조작 할 수있는 기능.
  • Array extras 및 getters/setter와 같은 새로운 JavaScript 1.8 기능을 사용하여 서버 JavaScript를 작성할 수 있습니다.

단점

    내가 그들의 API가 불안정 할 것으로
  • (내가하려고했던 때 1.0으로 전환되었다 그래서 좀 의미했다)와 문서, 혼란되었다, 또는 didn를 ' 변경된 기능과 일치하지 않습니다. 또한 Jaxer 서버 측 코드를 디버그하는 것이 매우 어려웠고, 문제가 발생했을 때 오류 메시지는별로 도움이되지 못했습니다.
  • 프레젠테이션과 논리 사이에 실제 MVC 또는 MVP (ASP.NET 스타일) 분리가 발생하지 않습니다.
  • 저는 개인적으로 E4X (JavaScript의 xml) 작업을 할 수 없었습니다.이 작업은 큰 도움이되었습니다.
  • 전체 응용 프로그램을 빌드하기 위해 프레임 워크가 많이 없습니다. 꽤 기본적인 빌딩 블록부터 시작하고 있습니다.
  • 정말보기에는 도움이되지 않으므로 다른 곳에서 사용할 수있는 템플릿이나 재사용 가능한 구성 요소는 모두 잊어 버리십시오. 복제 할 수는 없지만 상자에서 꺼내는 것보다 어렵습니다.

전반적으로 Jaxer는 다른 웹 프레임 워크 앞에 포스트 프로세서로 가장 적합하다고 생각합니다. Jaxer를 사용하여 기존 사이트 위에 모든 AJAX 항목을 레이어하는 것이 좋습니다. 유효성 검사/페이지 조작 논리가있는 동적 사이트를 서버와 클라이언트간에 공유하는 것이 훨씬 쉽습니다. Jaxer 만 사용하여 응용 프로그램을 작성하고 싶지는 않습니다. 또한 젊고 (미성숙 한) - 나는 그것이 어디에서 끝나는지를 보는 것에 흥미가있을 것입니다.

+0

나는 Jaxer를 설치했으며 테스트 한 첫 번째 것은 E4X 기능이었습니다. 위대한 일을하고 있으며 매우 강력한 도구입니다. E4X 코드는 서버 측에서 관리해야한다는 것을 명심해야합니다. 모질라 만이 그것을 처리 할 수있는 유일한 브라우저이기 때문입니다. – Prestaul

+0

그래, 나는 이것이 모즈 전용이라는 것을 알고있다. 제가 말했듯이, 저는 베타 기간 동안 1.0으로의 전환을 중심으로 그것을 사용하고 있었고, E4X에 어려움을 겪었습니다. 작동한다면, 훌륭합니다. 그렇지 않으면, 완전히 불투명합니다. – bhollis

1

나는 performance benchmarks이 세트를 발견했습니다.

Jaxer는 레일보다 더 나은 수행하는 것처럼 그것은 보인다

있지만뿐만 아니라 PHP ...

0

@BRH : 위대한 통찰력. 나는 모든 "찬성"과 "단점"2, 4, & 5와 마지막 개요를 되풀이합니다. 나는 업스트림 프레임 워크 시장을 대체 할 의도가 없다는 생각을 갖게되었습니다. 그러나 그렇게 할 수 있고 그것을 그대로 유지하고 이해할 수 있다면, 그럴 수 있기를 바랍니다. 나는 그들이 생각하는 방식을 좋아한다!

P. 새로운 코드인지는 모르겠지만 일부 코드 재사용 시나리오에서 도움이 될 수있는 서버 측 스크립트 실행 전에 페이지에 조각을 삽입하는 <jaxer:include 태그가 있습니다. 저 선을 따라 더 많이 발견 할 수 있습니다.

0

저는 Jaxer가 유망하다고 생각합니다. AJAX 개발자가 여기에 있습니다.) 그렇다고하더라도 제 첫 번째 언어 인 PHP를 사용하지 않거나 PHP를 적게 사용해야합니다. :)

관련 문제