문제

Java에 django/RoR에 해당하는 것이 있는지 알아보고 있었습니다.

내가 찾은 것 :

해당 프레임워크를 사용해 본 사람이 있나요? 아니면 다른 프레임워크를 알고 있나요?django/RoR보다 빠르나요?

도움이 되었습니까?

해결책

나는 약 1 년 전에 성배를 발견했고 뒤돌아 보지 않았습니다. Ruby on Rails (원본은 레일에 Groovy라는 이름)의 많은 아이디어가 필요하며 플러그인 / 확장의 풍부한 생태계가 있습니다. 성배와 기본 성배 언어 (자바의 슈퍼 세트)는 프로그램에 기쁨을줍니다. 필수 요소에 집중할 수 있습니다. GORT 기능 (최대 절전 모드 위에있는 레이어)도 매우 강력하며 플러그인 시스템 외에도 확인 해야하는 두 가지 큰 이유 중 하나입니다 (Java 앱에서도 사용할 수 있음).

버전 1.2가 나오려고하면, 나는 그것이 개발자가 툴벨트에 가지고 있어야 할 일이 될 정도로 기능이 풍부하고 성숙하다고 생각합니다.

성능에 이르기까지, 그것은 순수한 자바의 것보다 확실히 적지 만, 스프링 / 최대 절자 / j2ee에서 최적화 할 수있는 모든 것을 가지고 있으며, 중요한 코드를 위해 항상 순수한 Java로 떨어질 수 있습니다. 정적 메소드 해상도를 사용하여 그루비 코드의 일부를 실행할 수있는 최근의 실험이 있었는데, 이는 재발 성 지지대와 함께 큰 성능 향상을 제공해야합니다.

Java에서 체크 아웃하는 다른 사람들은 Spring Roo 및 Aribaweb입니다.

추가 자격을 기반으로 업데이트

확장 성, 생산성, 문서화 및 괜찮은 자원 소비

  • 확장 성 - 입증 된 Java / Spring / Hibernate Stack을 얻을 수는 있지만 성배가 많은 것을 제공한다고 말할 수는 없습니다.
  • 생산성 - 이것이 성배를 사용하는 주된 이유입니다. 성능 오버 헤드가 있지만 개발 시간 / 생산성이 더 중요 할 때 GRAILS가 사용하는 것입니다.
  • 문서 - 성배 문서는 훌륭하며 성배에만 적어도 세 개의 좋은 책이 쓰여졌습니다. 커뮤니티는 번성하고 매우 도움이됩니다.
  • 자원 소비 - 이것이 하나의 트레이드 오프입니다. 성배 (부분적으로 기본 Java 스택으로 인해)는 자원 집약적입니다. Google과 같은 것을 구축하고 있다면 성배가 선택되지 않을 것입니다. 그러나 모든 정교함의 웹 앱에서는 캐싱 솔루션에 적합하므로 여기에도 동일하게 적용됩니다.

다른 팁

상당히 가벼운 것으로 보이며 구성에 대한 협약을 포용합니다.

스트럿, 개찰구, 레일 및 태피스트리를 사용한 후 태피스트리 5.

지원합니다

  • 컨테이너 클래스 재 장전 (따라서 변경할 때마다 웹 앱을 다시 시작할 필요가 없습니다)
  • 빠른 개발 시간 및 생산성 향상 - 선언적 배선과 함께 구성 요소 기반 모델을 사용합니다.
  • 어쨌든 대부분 코드에있는 최소 구성, 구성에 대한 협약 - 등 ..
  • 확장 할 기본 클래스가 없습니다
  • 템플릿 파일에서 사용하기위한 표현식 언어
  • 좋은 ajax 지원
  • 클라이언트 및 서버 측면 우수한 디버깅 지원
  • 좋은 데이터 액세스 통합
  • 적극적인 커뮤니티
  • 처음부터 작성되었습니다 성능 염두에 두십시오. 예를 들어 페이지 풀링 (리소스 사용량을 최소화하기 위해), 페이지 압축, 공백 제거, 모든 동적 코드는 기본으로 컴파일됩니다.
  • 좋은 콩과 형태 지원 - 일반적인 작업을 간단하게 만듭니다. 정렬 가능한 데이터베이스 뒷면 DRID는 한 줄의 템플릿 코드와 최소 Skeleton Server 백엔드로 코딩 할 수 있습니다.

사용자 그룹/메일 링리스트가 매우 활발하고 대부분의 질문이 잘 응답하고 간절히 응답하지만 문서는 좋지만 약간 간결합니다.

(또한 T4,3,2,1이 아닌 T5 만보십시오. ..... 이들은 현재 버전과는 매우 다르기 때문에)

이유에 대해 더 여기.

시도하는 것을 고려하십시오 리프트 프레임 워크. 정말 훌륭합니다.

애플리케이션 스택 (언어, 프레임 워크 등)을 고려할 때마다, 당신은 무엇을 해결하려고하는지, 어떤 종류의 프로그래밍 기술을 처분하려고하는지 고려해야합니다. 나는 더 많은 경험이 많은 Java 프로그래머가 더 많은 주니어 프로그래머와 비교할 때 그루비와 성배 스택으로 매우 생산적이라는 것을 알았습니다.

다음을 우려 영역으로 언급합니다.

  • 확장 성 : 정확히 무엇입니까? (Page Views/Second, # Transactions/Second 등 ...) 일반적으로 Groovy & Grails는 렌더링 페이지와 관련하여 확장하지만 ORM을 사용하는 응용 프로그램 스택과 마찬가지로 (GRAILS가있는 경우) 거기에 GORM이 있습니다. 고려해야 할 약간의 오버 헤드입니다.
  • 생산성 : 여기서 주요 장점 중 하나 - 빠른 프로토 타이핑, 빠른 발전은 Groovy & Grails의 산들 바람입니다. 그러나 Java 또는 Ruby에서 개발 한 직원을 대상으로 Grails 프레임 워크가 실제로 무엇을하고 있는지 이해하는 데 도움이됩니다. ". UI를위한 수많은 플러그인이 있으며 웹 2.0과 같은 페이지를 매우 빠르게 만드는 데 도움이됩니다.
  • 문서화 : Groovy & Grails를 위해 쓴 품질 참조 도서가 점점 더 많이 있습니다. 둘 다 지난 2 년 동안 매우 멋지게 성숙하고 있습니다. 오류/문제가 발생할 때 성배 프레임 워크의 많은 내부 작업과 관련하여 상황이 확실히 잘 문서화되지 않습니다 (프레임 워크의 대부분의 출력은 오류에 직면 할 때 모호하거나 존재하지 않습니다). 소매를 감아 내면의 작업을 수행하는 데 자원을 기꺼이하려는 경우이 스택에 실망하지 않을 것입니다. 다시 한 번, 숙련 된 프로그래머는 이것을 제 2의 자연으로 알게 될 것이지만, 더 많은 주니어 사람들은 때때로 좌절감을 느끼게 될 수 있습니다.
  • 자원 소비 : 오버 헤드가 있지만 오늘날 대부분의 하드웨어가 발견되면 (로컬 또는 클라우드) 주어진 응용 프로그램 인스턴스의 물리적 자원 소비에 대해 너무 걱정하지 않습니다.

도움이 되었기를 바랍니다.

Play Framework에 대해 잘 모르겠지만 두 번째 질문에 답하기 위해 Google의 프로젝트를 수행하고 있습니다. WebToolkit. 체크 아웃 할 가치가 있습니다.
행운을 빕니다!

어때 Jror

직접 시도하지 않았지만 내 대학은 사용하는 것을 좋아합니다.

거기에 그리고 모든 것.

봄 루 솔루션이라고 주장합니다.

나는 성배와 함께 프로젝트를 수행했고 일부 작업에서는 실제로 빠르게 발견되었지만 디버깅 할 때 어려운 무대 뒤에서 많은 "마법"을 수행합니다.

또한 나는 자연스럽게 느끼지 않았기 때문에 문서를 반복해서 읽는 것을 발견했습니다. 간단한 예는 동작이 필드로 정의되는 컨트롤러입니다 (동작을 방법으로 생각하는 것은 당연합니다 ...). 정적 필드에 넣을 때 필드를 일시적으로 만드는 것과 같은 마법을 할 때 특별한 단어를 알아야 할 특별한 단어를 알아야 할 수있는 Gorm에 대해 말할 수 있습니다.

놀이에 관해서! 나는 발전하기 쉽고, 배우기 쉽고, 기억하기에 놀랍도록 단순하고 빠릅니다. 커뮤니티는 Grail보다 작지만 더 활동적이고 더 빠릅니다. 유일한 단점은 Servlet의 API에 의존하지 않으므로 일부 타사 필터 또는 기타 물건은 통합하기가 어렵지만 불가능하지 않다는 것입니다. 기존 웹 서버 Packagin에서 전쟁으로 플레이 애플리케이션을 배포 할 수 있다는 점에 유의해야합니다.

내 의견으로는 Grails는 훌륭하지만 생산성을 높이려면 많은 경험이 필요합니다. 그렇지 않으면 매뉴얼과 많은 시간을 잃을 것입니다. 그래서 그것이 당신의 경우가 아니라면 나는 놀이를 추천해야합니다! 특히 그루비에 익숙하지 않은 경우

나는 Play Framework에 대해 잘 모르겠지만 봄 MVC 또는 스트럿 함께 할 것입니다 최대 절전 모드 유사한 기능을 제공합니다.

사용 가능한 다른 많은 옵션이 있습니다. 기본적으로 MVC 프레임 워크 (Spring MVC, Struts, 개찰) 및 ORM 도구 (Hibernate, Ibatis)가 필요합니다. 물론 필요한 구성 요소를 직접 통합해야하지만 이미 여러 번 수행되었으며 많은 정보를 찾을 수 있습니다.

Spring MVC와 Hibernate가 Ruby on Rails와 동일한 사용 편의성을 제공하는지 확실하지 않습니다 (실제로는 훨씬 더 복잡하다고 확신합니다 ...). Play Framework는 Ruby on Rails와 훨씬 더 비슷하지만, 나는 우리 자신이 스스로하지 않았고 스크린 캐스트를보고 그것에 대한 문서를 읽었으므로 ROR을 사용하는 것과 비슷한 경험을 원한다면 가능하다고 생각합니다. 최대 절전 모드로 스프링 MVC 대신 플레이와 같은 것을 시도하십시오. 후자의 장점은 그것이 매우 강력하고 예를 들어 기존 데이터 모드에 적응할 수 있다는 것입니다 (ROR에서 내가 아는 것에서는 그다지 사소하지 않습니다). 당신이 고려할 수있는 또 다른 프레임 워크는 성배에 대한 그루비입니다. Java (Groovy를 사용)를 사용하지는 않지만 매우 ror와 비슷합니다. 그것은 후드 아래에서 스프링과 최대 절전 모드를 사용하며 (내가 맞다면) Groovy의 장점은 Java의 엄격한 정적 타이핑이 없다는 것입니다. Ruby on Rails와 Django는 구현 된 언어의 역동적 인 특성에서 크게 혜택을받습니다.

편집 : 아, 당신은 이미 당신의 질문에 성배를 언급했습니다 ...

Grails가 옵션이라면 (실제로 자바가 아니라 그루비 프레임 워크) 스칼라 기반 승강기 프레임 워크도 옵션입니다.

또 다른 옵션은 라이프, Java에 있는 동안 RoR의 최소 구성을 시도합니다.귀하의 목록에는 Play Framework에만 해당 기능이 있고 다른 것들은 JVM에 있지만 Java는 아닙니다(이것이 귀하에게 중요한 경우).

는 어때 vraptor? - 스프링을 DI 컨테이너로 사용하고 Rails Action-Pack과 유사한 컨트롤러/뷰 엔진을 사용합니다.

Aribaweb는 또한 Groovy를 지원합니다. 다른 기능을 확인하십시오 http://aribaweb.org/ 웹 개발을 생산적으로 만들기위한 우리의 접근 방식을 찾으십시오.

우리는 스트라이프 프레임 워크를 광범위하게 사용하며 정말 훌륭합니다. 정말 가볍고 응용 프로그램의 깨끗한 디자인으로 안내합니다. 그것은 기본적으로 당신의 개발의 지루한 부분을 숨 깁니다. 그래서 당신은 재미있는 것들에 집중할 수 있습니다 (그러한 예 중 하나는 다음과 같습니다. 인덱스 속성).

나는 사용하고있다 http://www.ninjaframework.org/ 마이크로 서비스의 경우 대부분의 MVC 패러다임에 매우 가깝습니다. Rails, ASP.NET MVC 또는 NancyFX를 사용하면 가면 좋습니다. 그것은 그 철학에 매우 가깝고 정말 훌륭하고 테스트하기 쉽습니다. 문서화가 많지 않지만 MVC 패턴을 매우 밀접하게 따릅니다. 프레임 워크에서 독점적 인 것을 사용하므로 순수한 Java 기반 솔루션입니다. 따라서 이것은 문서의 부족을 보완합니다.

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top