programing

왜 GWT 대신 jQuery를 사용해야 합니까?

cafebook 2023. 11. 4. 13:19
반응형

왜 GWT 대신 jQuery를 사용해야 합니까?

저는 새로운 프로젝트를 위해 jQuery와 GWT 중에서 결정해야 합니다.

한동안 자바스크립트로 프로그래밍을 하지 않았고, 지난 며칠 동안 GWT를 알아보고 있었습니다.다른 브라우저와 모든 브라우저에 대해 다양한 JS를 생성하는 것은 꽤 멋진 일입니다.

  • 자바에서 개발하는 것은 jQuery를 사용하는 같은 것보다 더 많은 시간이 걸립니다 (적어도 이 프로젝트의 경우).
  • 설명서가 부족합니다(예를 들어, 페이지를 설계할 때 어떤 요소를 사용해야 하는지 어떻게 알 수 있습니까? -- 설명서가 충분하지 않습니다).)

저는 대부분의 프로젝트에 jQuery를 사용해왔는데 꽤 좋습니다.

저는 고객에게 jQuery가 이 프로젝트에 더 적합하다고 설득하고 싶고 이를 뒷받침할 더 많은 주장이 필요합니다.

저는 제이쿼리로 가겠습니다.

저는 GWT 프로젝트를 유지하다가 결국 두 번이나 다시 써야 했습니다.리팩터된 GWT 앱으로 첫번째, JQuery에서 두번째.

오랫동안 자바스크립트를 심각하게 만지지 않았습니다.마지막은 2002년쯤입니다.저는 자바 개발자라서 GWT에 대한 첫인상이 좋았습니다.그러나 그것은 단지 인상에 불과했습니다.

GWT에서 발견한 문제점:

  1. 클라이언트/서버 구조를 따르도록 강요합니다.결국 제가 원하는 것은 AJAX와 좋은 위젯입니다.GWT의 위젯 자체가 그렇게 보기 좋게 보이지는 않습니다.저는 미적으로 Adobe Flex를 선호합니다!하지만 비교를 좀 더 가까이 하기 위해, JQuery의 UI는 GWT보다 더 좋아 보입니다.또한 JQuery에서 제공하는 멋진 테마 롤러 지원도 있습니다.

  2. DWR 해봤어요.훌륭해.GWT보다 DWR을 사용하여 자바 코드에서 AJAX를 활성화하는 것이 훨씬 쉽습니다.

  3. GWT를 사용한다면 결국 자바스크립트를 배울 수 밖에 없습니다.SpringSource의 Arjen은 XML과 SOAP에 대해 다음과 같이 말한 적이 있습니다."어떻게 웹 서비스를 개발하면서 XML을 모르십니까? SOAP는 XML입니다. 피할 수 없습니다."GWT도 마찬가지입니다.결국은 자바스크립트로 끝납니다.

  4. 현실적으로 자바스크립트는 자바에 비해 그리 어렵지 않습니다.자바보다 자바스크립트를 아는 사람이 더 많습니다.웹 디자이너들도 알고 있습니다.당신은 프로그래머인데 자바스크립트가 무섭다고요?

  5. 제가 다시 쓴 프로젝트로 돌아가죠.제가 GWT 신청서를 다시 작성했을 때, 다시 작성하는 데 거의 두 달이 걸렸습니다.JQuery를 사용하면 2주가 걸렸고, 자바스크립트에 녹슬었습니다.

  6. JQuery를 사용하면 하드코드 자바스크립트를 작성할 수 없습니다.그래서 원래 JQuery를 쓰는 거예요.GWT로 코드를 유지하는 것은 끔찍합니다.코드에서 최근에 한 변화를 보고 싶으십니까?편집하러...GWT를 기다립니다... 5분...헹구다...반복해서 실수가 없기를 바랍니다.그러면 다시 컴파일하고 5분 정도 더 기다려야 합니다.헹구고 반복합니다.JQuery(JQuery)로 줄을 바꾸어 브라우저를 새로 고칩니다.다 했어요.

내가 여기서 객관적이지 않다는 것을 알지만, 나는 단지 내 경험을 공유할 뿐입니다 :) 도덕은 자바스크립트를 두려워하지 않는 것입니다.구글은 어쨌든 자바스크립트를 사용합니다.

저는 자바스크립트를 이해하지 못하지만 (아마도) 자바에 더 편한 사람들이 있는 팀에 GWT를 사용할 것을 제안합니다.GWT를 사용하면 호환성 테스트에서 몇 주가 아니더라도 며칠을 절약할 수 있으며, 이 언어를 처음 접하는 사람들이 부딪치는 많은 일반적인 자바스크립트 함정을 피할 수 있습니다.GWT는 CSS 스프라이트, 임베디드 데이터 등을 위한 뛰어난 패키징 기능도 갖추고 있습니다.

하지만 당신이 자바스크립트를 알고 이해한다면, 나는 당신이 선택한 라이브러리가 무엇이든 자바스크립트를 사용할 것입니다.GWT에서 생성된 코드를 자세히 확인해 본 적은 없지만 구글 I/O에서 몇 가지 예를 보았는데, 모든 것이 사탕과 반짝임처럼 보이지만, 당신은 기존 방식대로 더 우아한 자바스크립트 코드를 만들 것입니다.

그룹이 Java에 가장 익숙하고 클라이언트 측 기능을 상당량 수행할 계획이라면 최소한 GWT를 평가해야 합니다.타입 세이프티, 이클립스 디버깅, 서버측/클라이언트측 간의 공유 코드 등은 자바 개발팀이 편안하게 느낄 수 있을 것입니다.

그러나 팀이 jQuery나 다른 자바스크립트 라이브러리로 자바스크립트 프로그래밍에 익숙하다면 순수 자바스크립트인 기술을 고수하는 것이 더 쉬울 수 있습니다.GWT는 대부분의 자바스크립트 개발자들에게 생소한 페이지의 큰 부분을 넘겨받는 방식을 가지고 있습니다.페이지를 넘겨받으면 일반적인 GWT 코드는 페이지의 기존 요소에 기능을 추가하는 대신 자체 DOM 요소를 만드는 것을 좋아합니다.이것이 많은 GWT 앱에 "로딩"이 있는 이유입니다.." 페이지가 처음 로드될 때 화면을 표시합니다.이것은 필요하지 않지만 GWT 개발의 가장 일반적인 스타일입니다.

GWT에서 생성된 코드가 나온다는 사실은 대부분의 GWT 개발자들에게 관련성이 적습니다.GWT를 사용하면 자바를 일반 자바 *.class 파일과 동등한 파일로 컴파일할 수 있지만 웹 브라우저가 해석 방법을 이해하는 자바스크립트 구문으로 컴파일할 수 있습니다.GWT는 템플릿 기반 코드 생성기보다는 컴파일러와 더 유사합니다.생성된 코드를 검사해야 하는 경우가 있지만 대부분의 경우 디버깅은 Java 디버거를 통해 Java로 진행됩니다.

또 하나 생각해야 할 것은 당신이 선택하는 클라이언트 측 기술에 관계없이, 당신의 개발팀은 HTML, 자바스크립트, CSS 및 브라우저 프로그래밍을 전반적으로 숙지해야 한다는 것입니다.GWT를 사용하면 익숙한 Java 환경에서 클라이언트 측 코드를 작성할 수 있지만 브라우저 내에서 작업한다는 사실을 숨기지 않습니다.

우선 GWT와 jQuery를 비교하는 것은 별로 의미가 없습니다.jQuery는 DOM과 함께 작동하는 크로스 브라우저를 훨씬 쉽게 만들기 위해 만들어졌지만, GWT는 대형 웹 애플리케이션을 만들기 위해 만들어졌습니다.

따라서 일정관리, 슬라이더 등 독립적인 위젯을 가진 정적인 면이 많이 있다면 jQuery로도 충분합니다.만약 당신이 단일 페이지 앱을 만들고 싶다면, 아마도 대규모 팀과 함께라면, GWT가 더 나은 방법입니다.GWT는 후드 아래에 많은 잘 설계된 아키텍처를 가지고 있으며, 특히 MVP 패턴의 빌드, UI-Binder 템플릿 시스템, i18n 지원 등이 있습니다.

그래서 자바스크립트 개발자가 대형 GWT 앱에서 1년 이상 작업을 하고 있기 때문에 jquery로만 한 페이지 앱을 만들지 않는 것을 추천합니다.자바스크립트를 사용하고 싶다면 등뼈, 척추, 녹아웃 또는 도조를 살펴보세요.

그건 그렇고, GWT 아키텍처가 잘 구축되어 있기 때문에 자바 오버헤드가 많이 발생할 것입니다.따라서 프로젝트가 증가하면 css와 i18n 속성을 컴파일하는 시간이 성가시게 될 것입니다.

"코스용 말"

프로젝트에 가장 적합한 것을 고르십시오.고려해야 할 몇 가지 사항

  • 타임스케일이 빠듯하고 서로에게 더 친숙함
  • 다른 개발자가 선택한 도구를 사용할 수 있도록 속도와 유지보수성을 제공합니다.한 사람이 다른 사람보다 더 유행하는 것은 여기에도 영향을 미칠 수 있습니다.
  • 플러그인, 유틸리티 기능 등 프로젝트에서 이미 사용할 수 있는 코드를 가지고 있어야 합니다.

프로젝트가 무엇에 관한 것인지, 귀하의 경험이 무엇인지, 고객이 다양한 기술/프레임워크를 사용할 수 있도록 얼마나 개방적인지에 대한 구체적인 정보가 없다면 여기에는 결정적인 답이 없을 것입니다.

제가 여기서 시작한 것처럼 서로에 대한 설득력 있는 주장의 목록을 작성한 다음 프로젝트에 대해 관련된 다른 사람들과 논의하여 결론을 내가 여기서 시작한 것처럼 말이죠.

답은 쉽지 않습니다.답은 "다름"입니다.

GWT:

  • 자바를 알고 좋아한다면,
  • 당신의 서버 코드 또한 자바로 작성되어 있다면, 자바로 클라이언트 코드를 작성하는 것은 클라이언트와 서버에서 같은 코드를 사용하는 것을 가능하게 합니다.
  • 강한 유형의 언어가 제공하는 것을 좋아한다면: 컴파일 타임 유형 검사, 자동 리팩토링, 자동 코드 생성(Eclipse의 Ctrl+1), 코드 완료(Ctrl+Space)
  • 구성요소 지향 프로그래밍을 좋아하는 경우(예: MenuBar가 메뉴를 만듭니다)
  • GWT의 복잡성(jQuery와 비교)이 당신에게 문제가 되지 않는다면
  • 만약 큰 코드 생성이 당신에게 문제가 되지 않는다면.

jQuery:

  • 자바스크립트를 알고 좋아한다면
  • 클라이언트와 서버(예: 클라이언트 - JS, 서버 - Java 또는 PHP)에서 동일한 코드를 사용할 필요가 없습니다.
  • 컴파일 타임 타입 검사, 자동 리팩토링 등이 필요 없는 경우
  • 구성 요소 지향 프로그래밍이 필요하지 않다면(jQuery에서 복잡한 구성 요소를 만들려면 일련의 div를 생성하고 $($there div)를 호출해야 합니다.make XXXXControl()()
  • 심플함을 좋아한다면 (jQuery는 GWT보다 심플함)
  • 아주 작은 코드가 필요한 경우(예: 웹사이트 로딩을 더 빠르게 하기 위해)

개인적으로 대부분의 프로젝트에 GWT를 추천하고 싶지만, jQuery도 전문성이 있고 어떤 사람들은 jQuery를 선호할지도 모릅니다.

저는 러스 캠의 의견에 동의합니다. 그것은 당신의 팀이 무엇을 잘 알고 있느냐에 달려있습니다.저는 개인 비즈니스 앱을 위한 작업을 할 때 GWT를 훨씬 선호합니다. jquery를 사용해도 javascript는 성가신 객체 지향 구문을 가지고 있다고 생각합니다.UI 코드가 10,000줄인 앱이 있다면, jquery는 재사용성이 떨어지는 코드를 유지하기 어려운 엉망진창으로 만들 것이라고 생각합니다.

jquery에서 진행되는 대규모 프로젝트를 아는 사람이 있습니까?

결과 파일 크기에서 마지막 바이트를 모두 짜내려고 한다면 라이브러리를 사용하지 말고 처음부터 자바스크립트를 작성하세요(즉, 구글 홈페이지 페이드 효과).

javascript/jquery 대 gwt 관련하여 생각해 볼 것.일반적인 객체 지향 원리와 디자인 패턴을 사용한다면 gwt로 더 나은 성능의 코드를 얻을 수 있을 것입니다. 왜죠?

다형성의 예를 들어보겠습니다.자바스크립트에서 중다형성을 사용하는 앱을 작성하면 유지보수성과 코드 재사용의 이점을 얻을 수 있습니다.하지만 당신의 코드는 다형성을 사용하는 것과 같은 성능도 갖게 될 것입니다.

이제 gwt를 사용했다면 이것이 제공하는 유지보수성과 코드 재사용의 이점도 얻을 수 있을 것이지만 gwt 컴파일러는 다형성을 구체적인 클래스 사용으로 최적화하여 성능을 향상시킬 것입니다.

저는 GWT가 너무 추상적이라고 생각합니다.자바스크립트는 사실 강력한 언어입니다.객체 지향 코드를 작성하고 네임스페이스를 사용할 수 있습니다.jQuery와 같은 라이브러리를 사용하면 대부분의 작업에서 브라우저 호환성 문제에 대해 걱정할 필요가 없습니다.파이어버그와 같은 모든 주요 브라우저에서 사용할 수 있는 모든 훌륭한 브라우저 개발자 도구가 있기 때문에 자바스크립트로 작업하는 것은 매우 쉽습니다.javascript 오류가 발생하면 코드에서 발생한 위치를 쉽게 파악할 수 있습니다.(GWT와 달리) 제가 작성한 코드에 대해 작업하기 때문에 변수를 보고 모든 것을 자세히 알 수 있습니다.

GWT 대 네이티브 자바스크립트 솔루션(jQuery 또는 기타)의 주요 문제는 다음과 같습니다.

  • 최종 제품과 구분되는 추가 프로세스가 있습니다.자바에서 앱을 개발하고 자바 코드를 디버그하면 이 코드의 기계 번역 버전이 나옵니다.적당한 크기의 앱이라면 브라우저에서 실행 중인 실제 코드를 디버깅할 필요가 없을 것이라고는 상상할 수 없습니다. 코드가 아니기 때문에 골치 아플 것입니다.

  • 자바로 코드를 쓰기 때문에 자바 라이브러리를 사용하는 것이 제한됩니다.마음에 드는 JS 라이브러리를 찾는다면 GWT 프로젝트에 추가하기가 매우 어려울 것입니다. 자바 래퍼를 작성해야 할 수도 있습니다.네이티브 JS를 개발 중이라면 프로젝트에 추가하면 됩니다.

  • JS는 자바와는 다른 견고한 객체 모델을 가진 그 자체로 멋진 언어입니다.저는 HP webOS용 네이티브 JS에서 몇 가지 앱을 개발했는데 언어에 대해 가지고 있던 많은 선입견이 사실이 아니라는 것을 알고 놀랐습니다.JS에서 깨끗하고 효율적이며 유지보수 가능한 코드를 Java에서 최대한 작성할 수 있으며, JS 객체 모델을 이해하는 데 시간을 들인다면 JS 위에서 Java 및 C++와 같은 보다 일반적인 클래스/객체 모델을 모방하기 위해 지원 라이브러리를 사용할 필요도 없습니다.자바스크립트의 프로토타입은 꽤 멋집니다.

  • 모바일 플랫폼에 앱을 출시하는 것을 고려해 볼 수 있다면, 기본 JS 앱은 추가적인 노력 없이 전화 갭 안에 쉽게 감겨 여러 모바일 플랫폼에 액세스할 수 있습니다.폰갭을 위한 GWT 포장지도 있지만, 첫 번째 항목으로 돌아가서 실제 작업을 선택할 수 있다면 왜 번역/에뮬레이션이 필요한 솔루션을 선택해야 합니까?

행운을 빌어요.

JSNI에 대해 아무도 말하지 않은 좋은 팁들! 원한다면 자바스크립트를 사용할 수 있는 GWT의 기능입니다.

https://developers.google.com/web-toolkit/doc/latest/DevGuideCodingBasicsJSNI

jQuery = 낮은 수준의 이해

일반적인 자바스크립트와 다른 하나는 자바 설명 외에도 Jquery는 자바스크립트와 일대일 매핑이 더 가깝고 GWT는 추상화되어 있습니다.따라서 낮은 수준(자바스크립트)에서 코드에 무슨 일이 일어나고 있는지 더 깊이 이해하고 싶다면 jquery가 올바른 방법입니다.

GWT = 추상화 이해 = 기능보증

GWT는 컴파일러가 생성한 코드의 장점을 제공하므로 웹사이트가 정상적으로 작동하는 것을 더 보장할 수 있습니다.그러나 여느 대규모 API와 마찬가지로 이 클래스가 무엇을 하는지, 해당 클래스가 무엇을 하는지, 이 API와 호환되는지 여부를 이해하는 시간이 필요합니다.

낮은 수준의 이해가 더 유용할 수 있습니다.

개인적으로 저는 낮은 수준의 코딩을 함으로써 훨씬 더 많은 만족감을 얻습니다.저는 완벽하게 작동하는 순수 자바스크립트로 작업 중인 웹 애플리케이션을 만들었습니다.데이터베이스에서 데이터를 가져온 자바스크립트 코드를 작성하여 마이크로소프트 워드 연구 보고서를 완성했습니다.이 프로젝트의 복잡성은 자바스크립트의 낮은 수준의 파악을 요구했습니다.자바 기반 솔루션으로 쉽게 해결할 수 있었는지 잘 모르겠습니다.

GWT는 관리자를 안심시키지만 비용이 많이 듭니다.

그러나 대기업들은 java와 asp.net 을 선호합니다. 즉, Oracle과 Microsoft와 같은 더 큰 기술 지원을 선호하기 때문입니다. 또한 최첨단 관리자들은 지원 비용으로 x달러를 지불하기만 하면 A 문제를 해결할 수 있다는 것을 알고 있는 밤에 더 나은 수면을 취하는 경향이 있습니다.따라서 시스템을 채택한 후 곧 기술 지원 비용이 너무 많이 들고 더 나은 개발자에게 더 많은 비용을 지불하는 것이 더 저렴하다는 사실을 깨닫기 시작합니다.그러므로 자바나 .net 커리어는 보통 식탁에 음식을 올려놓습니다.

유지보수성

또한 GWT와 같은 API는 유지보수가 더 쉽습니다.자바스크립트 코드를 디버그해야 할 경우 누군가가 겪게 될 공포만 상상할 수 있었습니다.그러나 그것은 제가 더 나은 그리고 더 깨끗한 프로그래머가 되기 전이었고 코드의 모든 측면을 알고 있었기 때문에 b/c를 디버깅할 것이 전혀 문제가 되지 않았습니다.

낮은 수준의 코딩은 무슨 일이 일어나고 있는지 거의 100% 이해할 수 있지만, API를 사용하면 구글에서 버그 탐지 게임을 하고 StackOverflow와 같은 사이트에 질문을 게시하는 데 시간을 소비합니다.하지만 관리자들은 대부분의 컴퓨터가 프로그래머가 아니라는 것을 이해하지 못합니다.

GWT는 컴파일러(Java to JavaScript)이고 jQuery는 프레임워크입니다.둘 중에 하나를 선택할 필요는 없습니다.둘 중 하나를 사용해도 되고 둘 중 하나를 사용하지 않아도 됩니다.

예를 들어, 당신이 원하거나 기존 소스 코드를 가지고 있다면 자바로 코딩을 할 수 있고, 다른 것에는 jQuery를 사용할 수 있습니다.사용 가능한 래퍼가 있지만, GWT는 자바스크립트를 호출할 수 있습니다(그리고 그 반대도 마찬가지입니다). http://svenbuschbeck.net/wordpress/2012/06/how-to-use-jquery-in-gwt/ 을 참조하십시오.

저의 개인적인 의견은 jQuery일 것입니다. 하지만 저는 자바를 사용하지 않고 jQuery 플러그인을 사용하는 것을 정말 좋아하기 때문입니다.

활발한 사용자 그룹과 최근의 인기는 jQuery가 우승자임을 분명히 나타냅니다.

언급URL : https://stackoverflow.com/questions/1205278/why-should-i-use-jquery-instead-of-gwt

반응형