bestsource

GWT와 Flex의 비교

bestsource 2023. 2. 17. 21:29
반응형

GWT와 Flex의 비교

회사는 에서 이행을 시도하고 있습니다.순수하게 웹 기반이며 매우 "아주"한 무언가에 대한 NET 응용 프로그램.원본.NET 앱은 사용자의 상호작용에 관한 한 Google 지도와 거의 동등한 수준의 인터랙티브한 앱입니다(벡터 맵의 줌, 이동, 기능 주석).

델의 .NET 개발자는 Flex2에 매료되어 있습니다.자바에 대한 편견이 상당히 강하다는 건 인정해요.저는 GWT에서 1년 정도의 경험을 가지고 있기 때문에, GWT로 작업을 신속히 완료할 수 있습니다.우리의 코드베이스는 대부분 J2EE이기 때문에 GWT는 나에게 매우 적합한 것 같습니다.Flex에 대한 경험이 전혀 없기 때문에 찬반양론을 할 수 없습니다.

프레임워크 선택에 있어서 델의 주된 관심은 다음과 같습니다.

  • 장래성이 있는
  • 모든 주요 브라우저에서 동작합니다.
  • 빠르고 응답성이 뛰어난 사용자 경험
  • 코드는 유닛 테스트 가능해야 합니다.
  • 코드는 유지보수가 가능해야 합니다.
  • 고속화와 개발의 용이성
  • 어떤 종류의 벡터 그래픽스 지원 (SVG a Plus)

이 두 가지 테크놀로지의 장단점을 검토하거나 세 번째 옵션을 추천해 주시겠습니까?

Flex에 대해 조금 알고 있을 뿐이지만, GWT와 오랫동안 일해 왔습니다.몇 년 전(플래시 vs GWT)에도 이와 유사한 결정을 내려야 했지만, 그 이유는 달랐습니다.결국 플래시와 비교하여 GWT의 많은 이점을 알게 되었습니다(이 중 많은 부분이 Flex에 적용됨).

  • 델의 모든 고객이 플래시를 가지고 있는 것은 아닙니다.Adobe의 침투 번호는 쓸모가 없습니다.고객이 실제로 가지고 있는 플래시를 확인하려면 델의 침투 번호가 필요합니다.기업 및 교육 시장에서는 실제로 Adobe가 인용하는 90년대보다 보급률이 훨씬 낮습니다.

  • GWT는 진정한 크로스 브라우저와 플랫폼(Linux, Mac, Windows, Android, iPhone 등)을 지원하지만 플래시는 지원하지 않습니다.넌 신경 안 쓰겠지만 우린 신경 썼어

  • Flex는 Adobe Technology의 독자 사양이지만 GWT는 완전 오픈 소스로 커스터마이즈 가능

  • GWT는 DOM과 통합되며, 페이지의 다른 모든 것이 플래시 및 Flex보다 훨씬 쉽습니다.

  • GWT는 Java로 코딩되어 있으며, 우리는 모두 Java에 대해 잘 알고 있습니다.

특정 사항에 대처하려면:

*  futureproof

진정한 미래의 증거는 없지만, GWT와 Flex 모두 미래의 증거가 될 것이라고 생각합니다.GWT는 오픈 소스이기 때문에 조금 더 그럴지도 모릅니다.

* works on all major browsers

GWT는 Firefox(및 모든 Gecko 브라우저), Safari(및 모든 Webkit 브라우저), IE 및 Opera에서 작동합니다.Flex는 모든 브라우저에서 작동하지만 플래시가 지원되는 경우에만 작동하기 때문에 GWT가 최상위 브라우저로 제공됩니다.

* fast & responsive user experience

지원되는 플랫폼에서는 Flex가 사용자 경험을 위해 GWT를 정지시킵니다.매끄럽고 매끄러운 점에서는 플래시와 경쟁할 수 없습니다.

* code should be unit testable

둘 다 유닛 테스트가 용이함

* code must be maintainable

코드화가 잘 되어 있으면 둘 다 유지보수가 있습니다.

* speed & ease of development

당신이 그들과 친숙한 한, 나는 그것이 많은 것이라고 말하고 싶다.

* supports vector graphics of some sort (SVG a plus)

Flex는 말할 수 없지만 GWT는 SVG를 통한 벡터 그래픽스, 서드파티 라이브러리를 지원합니다.

GWT에 대해서는 잘 모르지만 Flex에 대해서는 잘 알고 있습니다.GWT는 Java 기반이지만(대부분 Java 상점인 것처럼 들립니다), 귀사의 관심사에 따라 Flex를 추천합니다.

  • 미래 대비 - 플래시는 YouTube와 웹상의 멀티미디어의 대부분을 지원합니다.비디오 게임기에 내장되어 있고 인텔은 셋톱박스에 내장되어 있습니다.Adobe는 플래시 플레이어와의 하위 호환성을 항상 100% 유지해 왔습니다.

  • 모든 주요 브라우저에서 작동합니다.Flash Player 10에는 Linux 시스템도 포함되어 있습니다.관리상의 골칫거리는 거의 없습니다(Java보다 훨씬 적습니다).

  • 빠르고 응답성이 뛰어난 사용자 경험 - 예, 일부 시나리오에서는 Java가 더 빠를 수 있습니다.플래시는 벡터 렌더링에 최적화되어 있기 때문에 Java보다 뛰어난 성능을 제공할 수 있습니다.

  • 코드는 테스트 가능한 유닛이어야 합니다(예, FlexUnit 참조).

  • 코드는 유지보수가 가능해야 합니다.확실히요.AS3는 장난감이 아닌 진지한 언어입니다.C# 또는 Java 사용자에게 매우 친숙합니다.

  • 빠르고 쉽게 개발할 수 있습니다.구글 지도와 같은 벡터 이미지를 확대/축소하거나 이동하거나 하는 등 설명과 동일한 예를 수십 개 찾을 수 있습니다.런타임의 핵심은 잘 설계된 그래픽 엔진이기 때문에 인터랙티브 그래픽 앱을 구축하는 것은 자연스러운 일이다.

  • 어떤 종류의 벡터 그래픽(SVG a Plus)을 지원합니다. 물론 플래시는 기본적으로 이를 지원합니다.SVG는 컴파일 단계에서 지원됩니다(SVG에서는 컴파일할 수 있지만 런타임에는 SVG를 해석할 수 없습니다).실행 시 SVG를 SWF로 변환하는 툴체인이 있습니다.

GWT를 사용하는 유일한 이유는 서버와 클라이언트에 당신의 가게 Java를 유지하기 위해서입니다.그 일에 가장 적합한 기술을 찾고 계신 거죠?이 경우 플래시(특히 Flex 프레임워크)가 달성하고자 하는 목표에 가장 적합합니다.

또 하나 주목해야 할 점은 현재 아이폰과 안드로이드 모두 플래시를 지원하지 않는다는 것입니다.훨씬 더 많은 사람들이 휴대폰으로 웹 앱에 접속하기를 기대하고 있다.

저는 GWT를 사용한 프로젝트의 일부였고 특히 자바가 제가 선택한 주요 프로그래밍 언어이기 때문에 GWT를 매우 좋아했습니다.Flex를 사용한 적이 없기 때문에 GWT에서 경험한 내용만 알려드리겠습니다.몇 가지 요건에 대해 코멘트하다

*미래에 대비 - GWT는 이미 몇 년 전부터 존재해 왔으며, Google에 의해 지속적으로 지원되고 있습니다.

*모든 주요 브라우저에서 작동 - GWT를 사용한 적이 있다면 크로스 브라우저 프로그래밍이 매우 쉬워졌습니다.GWT가 널 위해 이걸 해!

* 코드는 유닛 테스트 가능해야 합니다.GWT를 유닛 테스트 할 수 있습니다.GWT 디버깅도 간단합니다.

* 속도와 개발 용이성 - GWT 덕분에 Ajax는 훨씬 덜 복잡해졌습니다.그것만으로도 RIA의 개발을 가속화할 수 있습니다.

이것들 말고도, 나는 그들의 구글 그룹을 사랑한다고 말해야겠어!그것은 매우 활발하고, 만약 당신이 무언가에 갇혔을 때 도와줄 많은 사람들을 찾을 수 있을 것이다.

저는 2000년부터 Flash/Flex 개발을 해왔기 때문에 Flex에 대한 편견이 있습니다.다만, 질문에 대답하는 것은, 실제로 달성하고 싶은 인터랙티브성과 복잡성의 레벨로 귀결된다고 생각합니다.

Flex를 사용하면 JavaScript 환경(ASP)에서는 거의 불가능한 작업을 수행할 수 있습니다.NET AJAX, jQuery, GWT)를 제공합니다.예를 들어, 심플한 3D 그래픽스입니다.Flex에서는 복잡한 인터랙티브 구축이 매우 간단합니다.또한 그것은 매우 빠르고 한번에 많은 애니메이션 물체를 다룰 수 있습니다.Flex는 와 심리스하게 통신할 수 있습니다.웹 서비스를 사용하는 NET 또는 Java.Flex를 사용하는 것의 단점은 웹 사이트에 내장된 애플리케이션처럼 느껴진다는 것입니다.

JavaScript 접근 방식을 고수할 경우 보통 jQuery와 같은 언어에 구애받지 않는 방법을 사용하는 것이 좋습니다.하지만 당신은 이미 GWT 경험이 있기 때문에, 그것은 당신의 프로젝트에 도움이 될 것입니다.단점은 결국 GWT는 여전히 JavaScript이기 때문에 브라우저에서 가능한 속도와 인터랙티브에 의해 제한된다는 것입니다.

썬은 최근 이러한 종류의 RIA를 위한 자바FX라고 불리는 새로운 기술을 출시했다.(javafx.com)를 확인해 주십시오.Java 5 이상에서 실행할 것으로 예상되지만 플래시와 같은 클라이언트 침투는 불가능합니다.그러나 테스트에 대한 당신의 요구 사항을 고려할 때 이 기술은 현재 적절하지 않을 수 있다고 생각합니다.

또한 트로이 길버트가 글을 잘못 쓴 것 같습니다.구체적으로는 GWT 어플리케이션이 (클라이언트에 의해) Java에서 실행됨을 나타내는 것 같습니다.GWT 어플리케이션은 Java로 먼저 작성되고 GWT는 그것을 클라이언트가 실행하는 Javascript 라이브러리로 컴파일할 것입니다.

난 한동안 두 가지 기술을 모두 사용해왔어

미래 대비 - 둘 다 성공하겠지만 모든 기술은 다양한 상황에서 선호될 것입니다.예를 들어 ui와 같은 데스크톱을 원하는 대기업(대부분 인트라넷)에서는 Flex를 임의의 서버 플랫폼(jvm,)의 상단에서 사용할 수 있습니다.네트워크, php, ruby, coldfusion).그렇지 않으면 GWT는 기존 jvm 백엔드(tomcat+spring 등)를 사용하는 중소형 애플리케이션에서 우세합니다.

모든 주요 브라우저에서 작동하며, 이 방법에서는 두 브라우저 모두 문제가 없습니다.Flex는 매우 우수합니다.플래시 플러그인을 설치하면 크로스 브라우저 호환성을 해결할 필요가 없습니다(물론...).플래시 앱 실행 시 브라우저는 수동적입니다.GWT와 IE6에 사소한 문제가 있었던 것으로 기억합니다만, 나쁜 것은 아닙니다.

빠르고 응답성이 뛰어난 사용자 경험 - 둘 다 동종업계 톱입니다.Flex는 모든 RIA 솔루션(Silverlight, Java fx는 가장 풍부한 경쟁 제품일 수 있음)의 최상급이며, 특히 데이터 관리, 실제 서버 측 데이터 푸시 등의 쿨한 기능을 갖춘 LCDS와 통합되어 있습니다.GWT는 아약스 프레임워크 카테고리에서 상위 중 하나입니다.더 풍부하고 복잡한 UI가 필요할수록 플렉스를 사용해야 하는 이유가 많아집니다.어떤 경우에도 삽입된 javascript는 컴파일된 액션스크립트/swf보다 빠르고 응답성이 뛰어납니다.

코드는 유닛 테스트 가능해야 합니다.그렇습니다.대부분 테스트 가능합니다.

코드는 유지보수가 가능해야 합니다. Flex Builder와 같은 양호한 IDE를 사용하는 경우 작업 스크립트를 유지보수가 java(gwt)와 비슷합니다.

속도와 개발의 용이성 - 스탭을 알고 있다면 둘 다 완벽합니다.모든 것은 당신의 배경에 달려있다.일반적인 Java 개발자의 경우 유연성이 다소 더 어려울 수 있습니다(새로운 컴파일러/런타임과 아마도 새로운 IDE 또는 적어도 새로운 이클립스 IDE 플러그인:을 익힐 필요가 있습니다).플래시에 대한 일부 지식은 +이지만 필수는 아니며, 일반적으로 자체 구성 요소 구축 등과 같은 특정 작업에만 적용됩니다.

어떤 종류의 벡터 그래픽스(SVG a Plus)를 지원합니다.기억나는 것은 없습니다.경험이 많지 않지만, 향후 FXG가 완성될 때 검토하겠습니다.

개발 및 도입 비용 - 승자는 명확합니다.GWT. Flex는 수익을 내기 위해 개발되었습니다.셀프소스는 오픈소싱이지만 최고의 툴(Flex Builder, 새로운 Flash Builder/Catalyst) 및 프레임워크(LCDS)는 모두 상업적이며 비용이 전혀 들지 않습니다.CPU 가격별 LCDS를 보면 무슨 말인지 알 수 있습니다.GWT를 통해 대부분의 고품질 도구/프레임워크는 오픈 소스 또는 무료입니다.ext gwt 및 smartgwt EE와 같은 일부 고급 컴포넌트는 제외합니다.물론 당신은 그들 없이도 살 수 있습니다.

이것은 정말 사과/오렌지 질문이다.GWT를 사용하면 모든 것을 Java로 작성할 수 있습니다.아이러니하게도, 최종 결과는 웹 사이트와 같은 느낌이 들지 않습니다.

Flex를 사용하면 애플리케이션 같은 것을 쓸 수 있습니다.그리고 가장 중요한 것은 Flex를 사용하면 기능적이든 그래픽적이든 프로그래밍적으로 할 수 없는 것은 없습니다.

특정 사용자 기반용 애플리케이션을 개발하는 경우 Flex가 훨씬 유리합니다.만약 여러분이 매스 소셜 웹을 기반으로 하고 있다면, GWT가 확실히 더 나은 선택입니다.

미래의 검증은 특정 테크놀로지보다는 아키텍처에 관한 것입니다.적절한 아키텍처를 사용하면 프레젠테이션 테크놀로지를 쉽게 교환할 수 있습니다.HTML5를 지원하려면 약간의 계획이 필요하지만 Silverlight/MVVM을 좋아합니다.

iPhone과 Android는 아직 플래시를 지원하지 않지만 Google이 휴대폰용 애플리케이션을 만든다는 점도 유의해야 합니다.모바일 디바이스의 화면이 일반적인 노트북/데스크탑보다 훨씬 작기 때문입니다.따라서 대상 앱이 더 나은 사용자 환경을 제공하므로 플래시를 지원하지 않는 것은 문제가 되지 않습니다.

우리 회사는 약 1년 전에 같은 결정을 받았다.GXT http://extjs.com/products/gxt/에 대해 들어보셨습니까?우리는 결국 GXT를 선택했다..NET 개발자로서 에서의 이행을 실시.NET to GXT는 훌륭했습니다.GXT/GWT와 함께 전사적인 관리 프로그램을 개발했습니다.단점은 GXT가 Flex에 비해 훨씬 작은 팀에 의해 개발되고 커뮤니티가 그다지 크지 않다는 것입니다.단, 뛰어난 브라우저 내 경험을 제공합니다.이것을 확인해 보세요.

GWT vs Flex에 대해 질문한 것은 알고 있습니다만, 최종 결정에 대해 발언권이 있는 경우는 AJAX와 ASP에서 손을 떼는 것을 진지하게 검토해야 합니다.NET. Adobe, Microsoft 및 Sun의 의견에도 불구하고 RIA(Rich Internet Applications)는 제한된 형식(비디오 플레이어 등)을 제외하고는 아직 프라임타임 브라우저 체험을 할 준비가 되어 있지 않습니다.

네이티브 브라우저 테크놀로지로 브라우저용으로 작성된 완전한 어플리케이션은 사용자에게 최고의 경험을 제공할 뿐만 아니라 이를 유지하기 위한 최대한의 개발 자원을 제공할 것입니다.

ASP.NET은 아무데도 가지 않습니다.Java도 Flex도 아닙니다.그러나 전체적인 사용자 경험, 유지 보수성(사용 가능한 프로그래밍 리소스가 훨씬 더 많기 때문에)에 있어서는 네이티브 브라우저 기반 애플리케이션을 능가할 수 없습니다.

ASP.NET MVC는 순전히 웹 기반이며 매우 Ajaxy입니다.확인해 보세요.Ruby on Rails(Rails 없음) 및 개발자(ASP 신규 개발자도 마찬가지)와 유사합니다.NET)는 매우 매력적입니다.

언급URL : https://stackoverflow.com/questions/424895/gwt-vs-flex-vs

반응형