原文轉自:http://www.csdn.net/article/2013-05-27/2815450-google-polymercss
摘要:開發者Axel Rauschmayer在本身的博客上詳解了Google Polymer的設計理念與組成架構,深得Polymer開發者的認同。他認爲Polymer這樣高互操做性的設計才應該是Web開發的將來。html
雖然今年的Google I/O也已結束,但會上揭曉的新技術、新工具仍然讓開發者興奮不已。其中Web開發方面尤以Ploymer和Web Components爲重。html5
Polymer由加盟Google的原Palm webOS開發團隊打造,是一套以「一切皆組件、最少化代碼量、最少框架限制」爲設計理念的Web UI框架。Web Components則提供了一種更完全的解耦方式,更加方便了UI的開發和模塊化,能夠說是Polymer的基礎之一。css3
開發者Axel Rauschmayer在本身的博客上詳解了Polymer的設計理念與組成架構,深得Polymer開發者sjmiles(Scott J. Miles)的認同。CSDN編譯以下:git
在剛剛結束的Google I/O 2013中,Google發佈了一個新的Web UI框架——Polymer,彷佛爲全部Web UI框架指明瞭發展方向。angularjs
Polymer由如下幾層組成:github
其中,基礎層使用瞭如下技術:web
以上第3-5個API都是Web Components的一部分。很明顯,Web Components對Polymer的重要性非同通常。瀏覽器
platform.js的做用在於代替瀏覽器提供這些API,它在通過充分壓縮後僅僅31KB。而根據已公開的信息,咱們還知道Polymer的目標之一就在於測試這些未標準化的HTML5 UI API。session
Polymer自己很是像原生的HTML5:「attributes in, events out」。以UIwidget(widget)polymer-panels爲例:
能夠看出其結構很是「面向組件(component-oriented)」,全部組件都是HTML元素。有的元素自己並不提供UI,好比animations元素並不提供UI,可是你能夠將它與UI元素相關聯,實現動畫效果。此外,Polymer的不少widget中都內建了響應式設計,也就是說,他們會依平臺的不一樣變化成最適合的形狀。
Polymer設計得像菜單同樣,能夠按需選擇。得益於Web Components,其元素都具備很是高的互操做性。在I/O大會上咱們就看到了這樣的例子:Mozilla項目中的元素X-Tag(一樣基於Web組件)與Polymer協同得很是好。
Polymer目前還是一個Alpha預覽版,所以不建議在公共項目中使用。可是,做爲一個開源項目,你能夠隨時使用它的代碼。
Polymer並非爲終結其它框架而生,相反,現有的這些框架也能夠構建在一樣的基礎層之上。若是你已經嘗試過Ember.js、AngularJS這樣的UI框架,必定會發現不少API很是熟悉。AngularJS甚至在在Twitter上宣佈:」Angular將基於Polymer開發widget,這會是一個共贏的方案。「
沒有人會想要使用框架,咱們只是想高效地開發Web UI而已,只不過框架偏偏知足了咱們的需求。與之相反,原生HTML卻缺少這些功能:
就目前看來,各大框架仍難以互相兼容:各自使用各自的工具鏈、繼承API、widget基礎構架等等。本文中描述的開發模式,以及ECMAScript 6中的類與模塊,都指明Web開發的將來應該是更高的互操做性。這對Web開發生態系統的益處顯而易見。
若是你想更深刻地瞭解Polymer,能夠訪問如下網址:
原文連接: 2ality