大師之間的論戰 jQuery之父談YUI3差在哪
近日,有人在Quora上提了一個問題:“YUI3如何提升其影響力?”,這個問題引起社區的熱議。而本次討論的***亮點在于jQuery之父John Resig和YUI3架構師Nicholas C. Zakas也參與討論之中,同時Nicholas C. Zakas對John Resig的某些觀點進行了反駁。
兩位大佬直接對話實屬難得,辯論暗涌澎湃精彩至極,希望對有志于開發“庫/框架”的同仁們有所啟迪。
如何提升YUI的影響力,John Resig通過回答下面兩個的問題,表達了自己的觀點:
1. YUI應當如何改進,以便更多的人來使用?
2. YUI如何提升才能改善和jQuery的競爭力?
在回答***個問題時,John Resig表示:
和其他JavaScript庫相比,YUI的確很贊,但由于它的域名分散、代碼庫過多且引入方式太多,這就導致了YUI無法更多的去占領市場。
在假設目前的YUI3版本已經“足夠優秀”,YUI文檔和論壇也已經足夠完善,足以吸引更多的用戶來使用YUI3的情況下,他提議把分散的域名合并成一個;把多代碼庫合并成一個代碼庫;把YUI的引入方式縮減至一種。簡單講,YUI項目應當保留一個整體的方向性,重點太分散,則會事與愿違。
YUI3架構師Nicholas C. Zakas對John Resig的觀點表示十分贊同,他說:
我承認,分散的站點的確是YUI的一個問題,不止一個人曾經糾結于到底應該訪問YDN呢還是訪問YUILibrary.com?這是YUI首先要解決的問題。同樣,John對于簡化YUI文檔首頁上的引導信息的建議也相當不錯,是個好主意。
關于YUI該如何提升才能改善和jQuery的競爭力,John Resig則稱首先YUI項目本身依然存在著諸多結構性問題,需要改善。他表示:
如今,如果YUI直接和jQuery進行競爭,YUI和它的子項目的運作方式都需要做出調整。因為現在的YUI項目運作方式與YAHOO的工作方法是背道而馳的。鑒于目前的管理方式的極差的操作性,YUI項目著實是一個不幸的犧牲品。
John Resig本人還特別希望YUI官方網站能夠重構,讓人們更快的找到他們想要的組件,包括那些社區提供的組件。重新定制首頁,讓訪問者一眼就能看到SimpleYUI,再從YUI組件庫中挑選一些很酷的組件放在首頁下方,并直接引導用戶能進入到YUI Gallery。
Nicholas C. Zakas對此觀點不是很同意,他說:
“我不認為YUI和jQuery之間存在你死我活的競爭關系”。
他表示不想將YUI搞成另外一個jQuery。這兩個庫各自都有優點,且重合度極小。jQuery更適合小網站使用,畢竟它很簡單、大眾、人人都可以快速上手,因此jQuery有著龐大的設計師群體。但他不愿意拿jQuery來搭建Yahoo首頁。因為對于可擴展的Web應用,YUI的確更勝一籌。他認為僅憑一個單一的產品很難滿足所有用戶多樣化的需求。jQuery在其專注的方面的確富有想象力,他寧愿將YUI的關注點放在解決復雜Web應用方面的問題上。
John Resig表示YUI要提升與jQuery的競爭力,還要建立開源的社區制度。他說:
開源社區是YUI可持續發展的關鍵所在,它會帶來更多的反饋和熱情的開發者,YUI的影響力也在開源社區中潛移默化的影響這其中的每個人,Yahoo不應是其唯一的維護者,維護者應當來自于更廣闊的開源社區。
YUI項目有強大的YAHOO全職全薪的開發團隊進行獨立開發,YUI的命運掌控在YAHOO手中。至今還沒有非雅虎的YUI社區,很多非雅虎的開發者為YUI貢獻了很多不錯的代碼,但他們都沒有提交權限,他表示這是一個嚴重的問題。反觀jQuery的成功,在很大程度上得益于開發者的反饋和幫助,jQuery從社區中得到了大量的滋養。鑒于YUI自身獨立、開源的特性,他提議YUI應當從YAHOO剝離出來,建立一個持有YUI 100%版權的非營利組織,并讓非官方的開發者來負責項目的運作,這對 YUI 的發展和提升其在社區的活力有著非同一般的意義。
Nicholas C. Zakas對此觀點十分反對,他表示:
正是得益于雅虎的庇佑,YUI才如此價值連城。
他說將YUI從Yahoo剝離出來,才真正剝奪了它的戰略優勢。當YUI專注于這些高端項目和某些私有項目的時候,就沒辦法同時顧及到那些開源社區了。同時他更不贊同“Yahoo不應當“操縱” YUI的命運”的說法。他認為是Yahoo讓YUI閃光的。任何一個開源項目都有一個核心的開發團隊,他們的工作除了維護項目源碼之外,還負責培養開發者、并為他們提供學習路線圖。雅虎為YUI的開發者們支付薪水,這并不能改變項目的本質。
至于YUI是否可以改進社區的形式和貢獻代碼的模式?Nicholas C. Zakas表示當然可以,而且不必與Yahoo切斷聯系。他稱YUI3是一個高質量的產品,在不斷壯大的開源社區中有著強勁的生命力,如果硬要指責YUI團隊的不稱職的話,也只是他們忽視了市場營銷的重要性,和缺乏行之有效的推廣手段,而這兩方面正是jQuery的強項,這也是YUI需要向jQuery學習的地方。
淘寶前端工程師王保平對于上面Nicholas C. Zakas和John Resig之間的爭吵,有一些自己的感想:
“我的感覺,NCZ并沒有很好的領悟到John Resig的建議。Resig的建議里,只有一個關鍵點:Simplicity is key。并且很想傳遞出一個理念:簡單比復雜更具挑戰,可惜Resig并沒有有效傳遞出來。”
【編輯推薦】