jQuery를 언제 업데이트해야합니까?


19

jQuery / jQuery UI 업데이트를 권장 할 때? 즉 , jQuery / jQuery UI 업데이트에 대한 모범 사례는 무엇입니까?

적어도 1 년 이상 걸릴 긴 프로젝트를 진행하고 있습니다. 그 기간 동안 jQuery / jQuery UI가 여러 번 업데이트 될 것이라고 확신합니다.

업데이트가 릴리스 될 때마다 jQuery / jQuery UI 파일을 업데이트하도록 권장합니까? 아니면 프로젝트가 끝날 때까지 특정 버전을 고수하는 것이 더 낫습니까?

코드 변경을 "중단"하는 것이 두렵고 업데이트가 릴리스 될 때마다 모든 것을 테스트해야합니다. 시간이 너무 많이 걸립니다. 그러나 반면에, 내가 업데이트하지 않으면 나중에 나에게 물릴 버그가 두렵습니다.

이 프로젝트는 ASP.MVC이며 jQuery를 많이 사용합니다.

이견있는 사람?


이 문서에서는 관련 될 수있다 : 그것은 촉구 항상 구글 호스팅 버전으로 연결하여 끝 부분에있는 : encosia.com/...
알렉스 Feinman

답변:


19

새 버전에 포함 된 새로운 기능이 필요한 경우에만 jQuery 버전을 업데이트하십시오. 그렇게 간단합니다.

jQuery를 사용하여 자주 개발하는 경우 공식 블로그 에서 업데이트가 언제 릴리스되고 제공되는지 확인하십시오. 예기치 않은 버그가 발생하지 않도록 최신 버전으로 업그레이드하기 전에 몇 주 정도 기다리십시오.


1
+1 가장 안정적인 방법입니다. 업그레이드를 위해 업그레이드하면 버그와 싸울 때 전반적인 개발 시간이 늘어납니다.
Nicholas Smith

2
또한 플러그인을 주시하십시오. 때때로 플러그인의 버그 수정에는 핵심 jQuery 코드를 업그레이드해야합니다.
Adrian J. Moreno

12
이 답변에 동의하지 않습니다. 질문과 같이 제품이 아직 개발중인 경우 jQuery의 각 새 릴리스로 업그레이드하십시오. 제품이 생산중인 경우이 답변에 동의합니다. 업그레이드가 필요한 경우에만 업그레이드 (버그 수정, 새로운 기능 등)
Chuck Conway

@ChuckConway : 잘 말했다.
Jim G.

20

jQuery의 각 릴리스로 업그레이드해야합니다. 업데이트 하기 전에 업데이트 로그 를 살펴보십시오 .

jQuery 팀은 API 변경 사항 및 더 이상 사용되지 않는 호출을 문서화하는 데 매우 능숙 합니다 . 이 시점에서 대다수의 API는 상당히 안정적이며 변경되지 않을 것입니다. 대부분의 변경 사항은 외부 API에 영향을 미치지 않는 비하인드 버그 수정입니다. 최신 릴리스 (1.8 이상)에서 특히 그렇습니다.

업데이트해야 할 또 다른 큰 이유는 프로젝트에 남아 있는지 여부에 관계없이 프로젝트를 완료 한 후에 누군가가 해당 프로젝트를 유지 관리하기 때문입니다. 최신 버전으로 업그레이드하면 미래 개발자 및 사용자에게 유리합니다. 최신 버전의 jQuery는 이전 버전을 물에서 날려 버릴 수 있으므로 계속 진행하십시오.


4
이것은 받아 들일만한 대답이어야합니다. 최종 업그레이드를 원할 때 더 큰 버전으로 이동해야한다는 것을 의미합니다.
Daniel Little

5

아무 것도 깨지 않고 최대한 빨리 업그레이드하십시오. 새로운 기능, 버그 수정, 새로운 기능이 모든 반복에 도입되었습니다.

최신 기능이 필요하지는 않지만 필요한 경우 새 기능이 없어지지 않도록 모든 새 버전의 유효성을 검사해야합니다.

조금씩 증가 시키면 5 개의 주요 릴리스를 업그레이드하지 않고도 모든 것을 최신 상태로 유지할 수 있으며 모든 것을 한 번에 5 시간 동안 테스트 할 수 있습니다.


1
1.4.x에서 1.7.x로 업데이트해도 문제가 발생하는지 여전히 파악하려고합니다.
styfle

4

최신 버전의 JQuery에 포함 된 새로운 기능이 필요하십니까? 귀하의 사이트가 오늘 예상대로 작동합니까?

첫 번째 질문에 "아니오", 두 번째 질문에 "예"라고 대답 한 경우 jQuery를 업그레이드하지 마십시오.

새로운 기능이 필요한 경우 테스트 비용 증가 및 새로운 문제 발생 가능성과 균형을 이루어야합니다.

현재 버전의 JQuery에 문제가있는 경우 최신 버전으로 문제를 해결할 수 있지만 새 버전이 다른 문제를 일으키지 않도록해야하므로 테스트 부담이 여전히 커집니다.

그렇기 때문에 우수한 단위, 기능 및 기능 테스트가 필수적입니다.


2

위험이 그만한 가치가 있는지 결정할 수 있습니다. 개인적으로 저는 최신 정보를 유지하고 싶습니다. 그러나 업그레이드 할 때 몇 가지 버그가 발생하여 무언가가 부러졌습니다 (또는 이상한 동작이 발생했습니다). 1 년의 개발 기간이 있기 때문에 어쨌든 최종 QA를 거쳐야 할 가능성이 있습니다.

나는 최신 상태로 유지한다고 말합니다. 한 번에 큰 것보다 연속적인 작은 통합을 수행하는 것이 훨씬 쉽습니다.


0

테스트. 시험, 시험, 시험, 시험, 시험.

프로젝트에서 jQuery UI 버전 (현재)을 사용하고 텍스트 필드를 JSON 데이터 소스에 연결하여 자동 완성 기능을 수행하는 .autocomplete라는 외부 플러그인을 사용했습니다. 많은 장소를 사용했습니다.

그런 다음 몇 달 후, 최신 버전에서만 제공되는 슬라이더 컨트롤을 추가해야했습니다. 불행히도, 그 최신 버전에는 기본 자동 완성 기능이 추가되었습니다.이 기능은 내가 사용한 플러그인의 영적 후임자 였지만 완전히 다른 방법론, 기능 및 데이터 요구 사항을 사용하여 내가 사용한 모든 페이지에서 자동 완성 필드를 깨뜨 렸습니다. 새 슬라이더를 켭니다.

이 새로운 기능을 개발하고있는 페이지는 자동 완성 기능을 사용하지 않았기 때문에 눈치 채지 못했습니다. 내 고객이 전시회 전에이 기능을 사용하기 위해 서두르고 있었기 때문에 준비 및 테스트를 통해 서두르고 깨진 자동 완성 프로그램으로 생산에 들어갔다.

결국, 그것은 내 테스트의 실패였습니다. 그리고 교훈은 jQuery와 jQuery UI가 이전 버전과의 호환성에 거의 관심이 없다는 것입니다. 이는 개발자로서 테스트 및 테스트 및 테스트에 대한 요구 사항입니다.


-1

필자의 경험에 따르면 새 버전의 jQuery는 일반적으로 호출 코드 (귀하의 코드)와 관련된 코드 청결 요구 사항에서 더 엄격합니다.

더 이상 사용되지 않는 항목이 많이 있습니다 ( http://api.jquery.com/category/deprecated/ ). 불행히도 페이지에 더 이상 사용되지 않는 태그가 없습니다. 오래된 지원 중단으로 인해 문제가 발생할 가능성이 높습니다.

가장 눈에 띄게, :checkbox셀렉터와 toggle()기능은 더 이상 사용되지 않습니다. 얼마 전,이 변경은 내 (가장 오래된) jquery 코드에 영향을 미쳤습니다. 나는 이것이 한동안 깨닫지 못했다.

반면에 최신 jQuery 릴리스는 일반적으로 성능이 크게 향상되었습니다. 변경 로그 또는 John Resig의 프레젠테이션 중 하나를 확인하여 성능 향상이 실현 된 위치를 확인하십시오. 당신이 그들로부터 이익을 얻으려면 ... 결정하는 것은 당신에게 달려 있습니다.

당사 사이트를 사용함과 동시에 당사의 쿠키 정책개인정보 보호정책을 읽고 이해하였음을 인정하는 것으로 간주합니다.
Licensed under cc by-sa 3.0 with attribution required.