Amaze UI是一款完全针对HTML5开发的轻量级、模块化、强调移动优先的开源跨屏前端框架,通过拆分、封装了一些常用的网页组件,让开发者只需复制代码便可将这些跨屏组件写入到自己的应用中。相比国外框架,Amaze UI更关注中文排版优化,强调浏览器兼容性,在GitHub上线半年的时间,便已获得2300+Star。
CSDN:最初决定打造Amaze UI这样一框架有着哪些初衷和考虑?
陈本峰:Amaze UI是我们整个云适配产品的一部分,希望引领推广最新的技术,带领大家走向未来的趋势方向。现在在国外对于Web开发有一个非常热的理念,就是Web组件化,这是Google在2013年提出的新概念。开发者不需要再花费时间精力去编写日历等的代码,可以直接引用组件。
在开发云适配的过程中,我们积累了包括菜单、轮播图等在内的大量针对手机端的UI控件,但其兼容性维护及复杂的屏幕适配还需要花费很多时间去进行,而我们也希望能够与别人共享,所以最终决定将其开源,在共同形成这么一个库的同时,也让大家都能受益。
CSDN:在云适配的产品线中,Amaze UI有着什么样的定位?
陈本峰:首先,云适配可以说是Amaze UI的一个用户,它就等于把Amaze UI打包到整个云适配系统中。相对而言,云适配的产品定位是针对现在已有的PC网站,将这些PC网站转换为一个能同时支持手机、平板的跨屏网站,而Amaze UI则是直接帮助开发者开发一个跨屏跨平台的网站。
CSDN:作为开源项目,Amaze UI是如何吸引开发者参与代码提交和建立生态的?
陈本峰:在国外,开源是一项非常热门的运动,在GitHub上有着很多这种类型的开源贡献开发者。但我们确实也感觉到,开源这件事在中国还是处于早期的萌芽阶段,许多程序员可能并没有太多的时间去做贡献。当然,Amaze UI自出现以来,还是有挺多的开发者完全出于兴趣来贡献代码,主要的代码还是我们自己在更新维护,上线不到半年的时间,Amaze UI在GitHub上已经名列国内最受欢迎的开发框架TOP10,有了两千多的Star。
CSDN:您曾说“Amaze UI是最懂中国程序员的开源HTML5跨屏前端框架”,能否从其功能或设计等方面举例说明?
陈本峰:“最懂中国程序员”主要突出一个点,就是我们的本土化。国外有许多非常有名的HTML5框架,但他们的字体都是英文,对中文字体没有任何设置。而对开发者来说,做一个网页,如果不设置字体的话,那么在不同的浏览器或操作系统下,显示出来的效果就是完全是默认的,排版会特别糟糕,而Amaze UI则专门针对中文做了很多优化。
其次,浏览器的兼容性也是一大问题。Amaze UI强调移动优先,先考虑移动平台上的诸多浏览器。今时今日,浏览器的概念与过去IE、火狐等独立浏览器俨然不同,只要是能够打开HTML5页面的容器都可以叫浏览器,而现在最大的浏览器非微信莫属,但国外的框架根本不可能想到对微信做兼容。除此之外,我们还会对手机百度,以及UC、QQ、360、傲游等手机浏览器进行兼容,这些都是非常具有本土特色的。
Amaze UI还有很多非常具有中国特色的组件,比如说菜单,国外的移动端菜单一般都是上下横线,按IE的规则将菜单收起来,强调简单,而中国的很多手机网站菜单都是直接平铺出来,整个网页内容很丰富,而我们做的这些界面特色非常适合中国的程序员,云适配就是帮助企业将PC网站转换为手机端网站。截止目前,我们大概已经转换了十几万的企业网站,同时也接触了大量的企业客户,对中国的市场需求最为了解,所以,我们说自己是最懂中国程序员的开发框架,因为中国程序员开发一个网页,势必会碰到这些问题。
CSDN:与jQuery等其他框架相比,Amaze UI上手难易度如何?有哪些优势?
陈本峰:在上手难易度这块,我们比较大的优势就是官方文档都是中文的,而国外框架的官方文档虽然有人翻译,但并不能涵盖全部,此外,我们还会直接在页面及文档中为开发者提供社区支持,这也是一种本土化的考虑。
Amaze UI与jQuery并不矛盾,而是互补关系。jQuery主要是让开发者去调用浏览器顶层的JavaScript API,中间有一层是调用底层的浏览器API。jQuery也有一个UI框架——jQuery UI,主要针对PC端,不跨屏,UI风格也比较老派,还有很多类似于弧形3D的效果,但如今在移动端的整体设计趋于扁平化,无论是iOS还是Android,都是扁平化设计。Amaze UI不仅能直接跨屏,其设计风格也非常符合现在移动端的需求。
CSDN:支持跨平台,为Amaze UI本身的研发带来了哪些技术挑战?
陈本峰:Amaze UI不止是跨平台,我们把它叫做跨屏跨平台,跨屏是指不同屏幕。Amaze UI有一个很大的好处就是开发者的网站一旦完成,手机、平板、PC三个屏幕适配也就全都有了,不用开发者再劳心劳力地去开发三个网站,而跨平台相对来说是HTML5本身的优势。
说到技术挑战,Amaze UI采用响应式设计(Responsive Design),将屏幕切分成12个网格,而其风格与网格链数会随着屏幕大小而发生变化,这就是响应式设计的概念,我们在设计网格系统时,会考虑到很多因素,以中国社区更容易理解的方式,在各种应用场景下,网格系统如何才能更好地服务。
CSDN:前段时间HTML5的定稿对于开发者和类似Amaze UI等前端框架分别具备哪些意义?
陈本峰:Amaze UI是中国第一个HTML5开源框架,我们从很早以前就开始在推行HTML5,但那个时候,相对于Native App而言,HTML5还处于一个比较劣势的状态。但从2014年下半年开始,尤其到年底,整个HTML5市场关注度越来越高,越来越多的人去从事HTML5开发,主要类型为游戏和广告,在去年,诸如神经猫等的HTML5游戏刷爆了朋友圈,而HTML5广告也开始出现。相对于得靠耗钱刷榜才能跻身排行榜的各大应用商店而言,微信朋友圈已经成为了开发者们的一个重要战场,只要做一个比较有意思的内容,就会有很多人帮你传播,而其成本要低很多。
所以,现在越来越多的企业开始转向HTML5,尤其是去年年底的HTML5定稿,又大幅地增加了开发者们对于HTML5的信心。我们明显感觉到,大家对HTML5的关注度一下子提升了许多。这样对我们的框架肯定有着非常积极的促进作用,因为当开发者们都在开发HTML5应用时,Amaze UI能够帮助他们节省很多时间,并提高开发效率。
CSDN:2015年关于Amaze UI会有哪些进一步的举措?
陈本峰:在Google提出Web组件化不久,W3C便将其作为一个标准来制定,而Facebook、雅虎等巨头公司也都加入进来,我认为这个标准是大家都公认的,它将是未来Web开发的一个趋势。Amaze UI在2015年的重点工作就是Web组件,打造这么一个Web组件开发规范,将所有组件标准化。
此外,我们还将引入一种现下非常流行的Web App开发框架。网页开发分为Web App和Web Site两种不同的概念,网站是由一个个页面组成,而Web App则完全是App的体验,使用HTML5开发,未来的发展肯定会朝向Web App,因为这个体验更好,但目前相对而言开发门槛比较高,作为一款框架,Amaze UI将做一种最基础性的工作,降低门槛,让程序员开发Web App比以前更简单。
本文为CSDN原创文章