YUI 2 대 -3 전환의 상태 확인

년 | 11시 6분에서 2010년 11월 5일 에릭 Miraglia에 의해 오전 개발 , YUI 3 갤러리 | 7 코멘트

YUI이 자바 스크립트와 CSS 라이브러리는 우리가 2006 년에 그것을 출시된 이후 4 더하기 년만에 엄청난 성공적인 제품이되었습니다. YUI 두 배포판은 야후 또는 Google CDN 중 하나에서 대신 당기는, 본 파일을 다운로드하지 않고 2 개 이상 만회하고 오늘 YUI를 사용하는 개발자의 수천을 다운로드하고 있습니다. 야후 CDN에서 YUI 트래픽 년 동안 꾸준히 성장했습니다 우리가 공개, 오늘 만들어진 이후 우리 것으로 예상 yui.yahooapis.com 약 15 억 파일이 매달 제공하고 있습니다.

그것은 야후의 YUI 엔지니어가 작업을 오늘날 그들의 에너지의 대부분을 보내고있다는 사실이 다 아는 사실이지 YUI 3 년 동안 YUI 엔지니어들이 배운 교훈을 많이 적용, 후속 프로젝트 YUI 2, 한 우리는 YUI를 구축하는 동안 2. YUI 3 오늘날 강력하고 풍부한 기능입니다. 유틸리티 수준 (애니메이션, XHR, 드래그 앤 드롭 등)로서는 YUI 2의 기능 수준을 초과했습니다. 위젯 수준에서 어디 YUI 2의 다양한 포트폴리오와 함께 인기가있다, YUI 3은 여전히​​ 따라잡고있다. YUI 2의 DataTable의, 편집기, 메뉴, 버튼 및 캘린더는 아직 표준이며, 현재 동일한 기능을 찾고 YUI 3 사용자에게 안내하고 있습니다 YUI 2-3 사업 을 쉽게 포함 YUI 2에서 활용할 수 있도록, YUI 이내 3 구현. 이것은 쉽고 안전하지만, 그것은 또한 최적 아닙니다 : 우리는 두 가지 API를 전환할하지 않기를 원합니다, 우리는 두 도서관 코어를 로딩의 런타임 오버헤드를 초래하지 않기를 원합니다.

우리는 다음주에 대비로서 YUIConf 2010 , 그것은 YUI 2 대 YUI 세 전환의 상태를 검토하기 위해 좋은 시간처럼 보였다. 우리는에서 YUI 세 시대에 일년 넘게 조금이고, 좀 부족해 올해 YUI 세 갤러리 의 개시. YUI 야후에서 팀과 YUI 커뮤니티 기여 부품 (총 거의 100 contribitors)에서 분들 사이에, 어떻게하는거야?

대답은 당신을 놀라게 수 있습니다.

같은 프로젝트를 통해 LifeRay의 AlloyUI 과 갤러리를 채우지 독립적인 참여자 수십, 우리는 지금 우리가 YUI 2 제공된 것보다 훨씬 YUI 3의 위젯 수준에서 사용 가능한 많은 옵션이 있습니다. 아래 표는 두 라이브러리 사이에 기능과 일치하고 기능 범주의 측면에서 두 라이브러리를 비교하는 방법의 감각을 준다. 주의 사항 :

  • 몇 행 1:1 비교입니다. 전 기능이 지원한다고했을 때, 나는 그것이 정확히 같은 방식으로 또는 두 가지 모두 codelines에서 동일한 기능 수준에서 지원되는 것은 없습니다.
  • YUI 3 모두 지원되지 않는 기능은 YUI 2-에서-3를 통해 액세스할 수 있습니다.
  • 제가 뭔가가 커뮤니티 / 갤러리를 통해 지원된다는 지적했습니다 곳에서, 나는 갤러리 콘텐츠의 기능 완전성에 대해서는 아무것도 얘기가 아닙니다 - 단지 커뮤니티가 그 요구에 대응하고 생산적인 솔루션을 공유했다고.
  • 이 테이블 갤러리에 내용의 일부만 포함되어 있습니다. 모든 갤러리 내용을 포함 truer 사진가, 구성 요소 옵션 면에서 YUI 세 압도 YUI 2를 보여줄 것이다. 저는 YUI 2, YUI 3의 상응하는, 그리고 YUI 3 세계 (갤러리에 부상 주요 부품 부문 포함)의 주요 신규 개발의 기본적인 기능에 여기에 자신을 감금했습니다.
핵심 구성 요소
구성 요소 YUI 2 YUI 3 노트
도서관 코어 야후 글로벌 객체 YUI 모듈 OOP와 랭 - YUI 두 기능 중 일부는 다른 모듈로 이동되었습니다.
로더 YUI 로더 로더 모듈 YUI 3의 로더가 본질이다 (자동으로 호출된다)과 갤러리에 대한 지원이 포함되어 있습니다.
DOM 지원 DOM 컬렉션 노드 모듈 YUI 3 "노드 중심"입니다 - 노드 API를 통해 일하는 것은 YUI 2와 3 사이의 패러다임의 변화입니다.
브라우저 및 사용자 정의 이벤트 이벤트 유틸리티 이벤트 모듈
구성 요소 재단
구성 요소 YUI 2 YUI 3 노트
속성 관리 AttributeProvider 속성 모듈
이벤트 관리 EventProvider 사용자 지정 이벤트 모듈의 EventTarget
구성 요소 기반 베이스 모듈
확장 모델 베이스 모듈
플러그인 모델 플러그인 및 플러그인 호스트 모듈
위젯 기초 요소 유틸리티 위젯 모듈 YUI 2의 요소 유틸리티 YUI 3 기본 / 위젯 시스템에 포함된 구성 요소 개발을위한 라이프 사이클 패턴을 부족합니다.
유틸리티
구성 요소 YUI 2 YUI 3 노트
아약스 / XHR 연결 관리자 유틸리티 IO 모듈
애니메이션 애니메이션 유틸리티
  • 애니메이션 모듈
  • 변환 모듈
YUI 3 지원되는 곳이 하드웨어 가속 변환을 지원 변환 모듈을 통해 CSS의 전환에 대한 지원을 추가합니다.
자산 Prefetching
비동기 Queueing AsyncQueue 모듈 통해 실행될 함수 콜백의 사슬에 대한 지원 setTimeout . 이 기능의 YUI 2의 배송은 일반적인 사용을 위해 충분히 세분화하지 않습니다.
인증
캐시 캐시 모듈 지역 JS 메모리에 키 / 값 쌍을 저장하는 지원.
쿠키 쿠키 유틸리티 쿠키 모듈
데이터 관리 유틸리티를 데이터 원본
  • DataSchema (베타)
  • 데이터 원본 (베타)
  • 데이터 형식 (베타)
두 (.; YUI 세 모듈은 베타에 남아 예를 들어, 큐잉은 YUI 3에서 지원되지 않습니다) 사이의 정확한 기능 패리티가 없습니다
드래그 앤 드롭 유틸리티를 가져다 놓기 DD 모듈
이벤트 부가 기능
  • 이벤트 위임
  • 이벤트 시뮬레이션
  • 이벤트 위임
  • 이벤트 시뮬레이션
  • 제스처
  • 합성 이벤트
  • 터치 이벤트
YUI 3의 이벤트 지원 터치와 제스처에 대한 좋은 관념으로, YUI 2 분기를 초과했습니다.
양식 유효성 검사
위치 정보
타 (스크립트 / CSS 로딩) 유틸리티를 가져오기 모듈 가져오기
이력 관리 역사 유틸리티 역사 모듈 YUI 3의 역사 모듈은 HTML5 지원을 포함합니다.
ImageLoader (이미지로드 스마트 deferral) ImageLoader 유틸리티 ImageLoader 모듈
국제화 구성 요소에 따라 다릅니다 국제화 모듈 YUI 3의 i18n 모델은 더 강력하지만, 위젯 시스템 전반에 걸쳐 자사의 이점을 모두 실현해야 할 일이 있습니다.
JSON JSON 유틸리티 JSON 모듈 YUI 3 YUI 3의 샌드 박스 패턴 내에서 JSONP 콜백 작업을위한 시설을 제공 JSONP 모듈을 포함하고 있습니다.
크기 조정 유틸리티를 크기 조정 갤러리 AlloyUI 구현은 도서관의 핵심으로 채택되었으며 3.3.0 릴리스의 일부가 될 것입니다.
스토리지 (클라이언트측) 스토리지 유틸리티 (플래시 대체 포함) 스토리지 Lite는 플래시 대체를 지원하지 않습니다.
스타일 시트 (JS를 통해 조작) 스타일 유틸리티 스타일 시트 모듈
SWF 관리 SWF 유틸리티
SVG 지원
지원 취소 / 다시 실행
YQL 래퍼 YQL 쿼리 모듈
UI 위젯
구성 요소 YUI 2 YUI 3 노트
아코디언 YUI 2 기반 위젯으로 마르코의 구성 요소는 공식적으로 YUI 세 갤러리에 있지 않습니다.
자동 완성 자동 완성 제어 YUI 3 자동 완성 YUI 3.3.0로 발송됩니다. 하지만 여기 AlloyUI 구성 요소를 간과하지 마십시오 - 그것은 기능이 풍부하고 오늘날 사용할 수 있습니다.
단추 Button 컨트롤
달력 달력 컨트롤 AlloyUI 구현하지만, 일반적인 사용 사례를위한 탁월한 선택입니다; 캘린더 위젯 / 날짜 선택은 3.4.0 이상까지 YUI 3 배포판의 일부로 예상되지 않습니다.
회전 목마 회전식 제어 Gopal 오랫동안 YUI 2.x에서 회전식 코드베이스를 소유하고 있으며, 그의 YUI 3 갤러리 모듈 생산 야후! 제품에 올해 것이다.
차트 차트 제어 트립 저자와 플래시 기반이다 YUI이 차트 컨트롤의 관리자 중 하나입니다. 플래시에 의존하지 않는 YUI 3 차트 작업은, 정기적으로 갤러리에 적용되고 트립의 작품은 최신 YUI 3.3.0의 일부로 베타 버전으로 출시될 것이다.
색상 선택기 색상 선택기 컨트롤
DataTable의 DataTable의 제어 몇 가지 플러그인 모듈을 포함 앤서니의 프로젝트는, 야심 YUI 두 DataTable의 컨트롤과 기능 패리티를 갖게 될 수밖에 없습니다. YUI 3하여 DataTable에있는 YUI 팀에 의해 수행되는 작업은 3.3.0에 베타 형태로 나타납니다.
이미지 자르기 ImageCropper 제어
레이아웃 (전체 화면 응용 프로그램 관리) 레이아웃 관리자
Menuing 메뉴 제어 간단한 메뉴 YUI 2에서 제공하는 포괄적인 menuing 지원 등의 풍부한 기능으로하지 않습니다. 현재 YUI 팀은 3.4.0 기간 동안의 YUI 3 메뉴 컨트롤에 대한 작업을 계획하고있다. 노드 MenuNav은 YUI 3 배포판의 일부이지만 그것은 현재 베타 버전으로 유지하고 공식적인 UI 컨트롤에 새로운 작품의 찬성 사용중지됨 수 있습니다.
오버레이 컨테이너 패밀리
쪽수 매기기 Paginator 제어
진행 바 ProgressBar 컨트롤 Satyam는 YUI 2 ProgressBar 컨트롤을 쓴, 그의 YUI 3 구현은 갤러리에없는지만 사용할 수 있습니다.
평가
서식있는 텍스트 편집 서식있는 텍스트 편집기 YUI 3.3.0 야후는 새로운 야후 메일 베타 버전으로 사용하는 기본 편집기 컨텐츠를 포함합니다 - 그건 우리가 YUI의 일환으로 제작 중에 가장 고급 편집기입니다. 그러나 편집기 도구 모음 (대부분의 implementers에 대한 구성 요소의 중요한 부분입니다) 적어도 3.4.0 때까지 표시되지 않습니다 버튼과 Menuing 기능에 의존합니다.
ScrollView ScrollView 모듈 이것은 모바일 개발을위한 중요한 구성 요소입니다.
슬라이드쇼 이 범주 YUI 갤러리가 될 수 있는지의 좋은 예입니다. 우리가 강한 YUI 세 슬라이드쇼 구성 요소를 가진 적이 반면, 우리는 이미 YUI 3 세계에서 선택할 4 가지 우수한 모듈이 있습니다.
슬라이더 슬라이더 컨트롤 YUI 3.3.0 야후 디자이너 및 엔지니어 제프 Conniff의 슬라이더 상호 작용 패턴, 예의에 대한 흥미로운 새로운 추가가 포함됩니다. 3.3.0 프리뷰 릴리즈 표시로에 대한 자세한를 알려드립니다.
TabView 제어 TabView 모듈
나무 TreeView 컨트롤 야후 엔지니어 곤잘로 콜데로 현재 YUI 3 TreeView 구현에 노력하고 있습니다. 그것이 3.3.0 준비에 없지만, 그것은 3.3.0 릴리스 이후에 갤러리에서 사용할 수와 3.4.0 초부터 배포를위한 후보가 될 것으로 예상된다.
업로더 (다중 파일의 진행 상황 추적과 업로드) 업로더 제어 업로더 모듈 YUI 2 YUI 3 구현 모두 플래시가 필요합니다.
비디오 (HTML5)
CSS의 구성 요소
구성 요소 YUI 2 YUI 3 노트
재설정 CSS를 재설정 CSS를 재설정
기지 CSS 자료 CSS 자료
글꼴 CSS의 글꼴 CSS의 글꼴
격자 CSS 격자 CSS 격자 새로운, 더 유연한 YUI 세 CSS는 격자 패키지가 3.2.0 월에 릴리스되었습니다.

참고 사항 :

  1. Configurator YUI이 종속성은 당신이 스크립트를 디자인하고 CSS가 야후 또는 Google CDNs 하나를 포함하는 데 도움이됩니다.

공유하고 확장할 수 : del.icio.us에 북마크 | 디그 그것! | reddit!

7 개의 댓글

  1. 이런 shnikies는 그 AlloyUI 구성 요소 약은 있습니다. 확실히 내 다음 응용 프로그램에 합금을 시도한다. :)

    댓글 작성자 조쉬 패 - 2010년 11월 5일 #을

  2. YUI2에 비해 YUI3 단점은 standart 키트 (전용 커뮤니티 위젯)에 UI 위젯의 부족이다. 모두 (나를 위해), DataTable의, 나무, 서식있는 텍스트 에디터, 레이아웃 (전체 화면 응용 프로그램 관리), 버튼 첫째. 이러한 위젯은 매우 중요하고 자바 스크립트 framworks 경쟁에 포함되어 있습니다. 그들은 YUI3의 전체 개발자 키트에 포함되어야한다. 나는 지역 사회 프로젝트에서 코드의 고품질 잘모르겠어요, 그래서 그것을 사용하기 겁나요. YUI3의 다음 버전을 기다 리면서.

    세르게이에 의해 코멘트 - 2010년 11월 7일 #을

  3. @ 세르게이 모든 yui2 위젯 및 기타 구성 요소 통해서 yui3 사용할 수 있습니다.

    2010년 11월 21일 - 조 댓글 작성자 #

  4. 우리는 비동기 대화 상자의 본문에 양식을 제출 YUI2 대화의 능력을 사용합니다. 이 기능은 우리의 응용 프로그램 전체에서 사용됩니다. 제가 갤러리에있는 AlloyUI 대화 또는 앤서니 작은 옹기병의 대화 모듈에서이 기능이 표시되지 않습니다. 이러한 YUI2의 기능이 풍부한 대화 등 YUI3에 추가 오버레이를 추가할 수있는 계획이 있습니까?

    션에 의해 코멘트 - 2011년 1월 7일 #

  5. @ 숀, 윈도우 구성 요소 (패널, 대화 상자 등) YUI3 위해 2011 로드맵에 있습니다. 우린 그들이 후에 도착할 것입있는 릴리즈 밖으로 다림질하지 않은,하지만 그들은 미정 어딘가 중순 년 주위 예정이다.

    YUI2 대화 상자가 지원하는 비동기 양식 제출은 간단한 YUI3 플러그인을위한 이상적인 후보입니다, 당신 (또는 지역 사회에서 다른 사람이) 한번 포기하고 갤러리에 추가하는 환영 때문에.

    정말 IO의 양식을 지원 주변 단지 가벼운 래퍼입니다. 그것은 YUI 3 구현 그냥 될 가능성이 높습니다 - 중첩의 내용에 사실은 형태를 적용 중첩을위한 플러그인.

    우리가 한 해의 시작으로 일반적으로, 우리는보다 효과적으로 지역 사회에서 로드맵 입력 (오픈 시간을 통해)를 수집하는 방법을보고, 그것을 유지하고, 그것을 게시, 그럼 당신이오고 무엇에 더 많은 통찰력을 가질 수있어 언제.

    Satyen Desai에 의해 코멘트 - 2011년 1월 7일 #

  6. 의견을 보내주셔서 대단히 감사 Satyen. 나는 YUI3 좀 더 성숙해질 때까지 우리가 YUI2 마저 읽을 래요. 이렇게 될대로 마이 그 레이션 YUI3 부품 및 YUI2/YUI3 혼합 환경에 2입방인치를 사용할 수 있겠지만, 난 투자 수익 (ROI)을 정당화 수 없다 중요한 우리의 애플 리케이션의 많은 부분을 다시 작성합니다. 우리는 많은 YUI2 구성 요소를 사용하지만 DataTable의 / ScrollingDataTable와 대화가 가장 중요한 두 가지입니다. 이러한 구성 요소가 완전히 YUI3으로 마이 그 레이션하고 나면, 내가 관리로 마이 그 레이션 작업을 제안합니다.

    션에 의해 코멘트 - 2011년 1월 11일 #

  7. 안녕! LayoutManager와 ImageCropper은 갤러리에있다.

    ImageCropper : http://yuilibrary.com/gallery/show/imagecropper
    레이아웃 : http://yuilibrary.com/gallery/show/axo-layout

    댓글 작성자 후안 - 2011 년 7 월 8 #을

죄송합니다, 코멘트 양식은이 시간에 문을 닫습니다.

야후 주최

저작권 © 2006년부터 2012년까지 야후 주식 회사 판권 소유. 개인 정보 보호 정책 - 서비스 약관

에서 제공하는 워드 프레스 에서 야후! 웹 호스팅 .