一、我是做什么的?
我是一名工作在一线的前端开发攻城狮,中间也做了一年左右的服务端,总共加起来差不多有三年多了。作为一名技术人员,虽然工作中用到的技术是有限的,并且工作中也不会那么贸然一味地追求新技术,尤其是对于时间比较久的公司,但是我还是经常关注各种新奇的技术框架与技术亮点。
在感叹技术框架越来越多、技术革新越来越快的同时,我其实也为我们前端开发感到惬意,现在的前端已经和以前的前端大不同了,前端技术能做的事儿也越来越多了,前端开发者的出路也越来越广了。二、初识快应用:真的这么好?
说起来,最开始认识快应用反倒并不是我自己浏览博客、论坛、产品认识的,而是公司要推快应用版的产品。
大概理由是一方面国内安卓用户群体大,直接基于十大厂商手机,流量大;另一方面,体验远远好于H5版和原生版,底层能力也强,开发成本也不大,最关键的是,当时快应用市场的应用数量并不多,我们刚好可以趁此机会去推一推我们的产品。 于是我就抱着“真的这么厉害吗?”的心情去开始了解快应用。三、Hello World
前面的那么好其实说到底还是我们的产品和市场同事们的看法,我当时就立马开始学习快应用,去查看了官方文档,并自己做了第一个快应用Demo。首先第一感觉:
好的方面
- MVVM的模式非常顺手,对于熟悉Vue.js开发的童鞋来说,学习成本比较小,就是标签稍有些差异。
- 支持async/await写法,会很大程度地解决回调地狱问题,这个对于经常写ES6、ES7的童鞋来说,又是一大便利,不用纠结于繁杂的客户端业务中了。
- 兼容性问题:在后续的开发过程中,虽然也会偶尔出现一个仅在某个厂商机型中出现的问题,但是相比较H5开发而言,兼容性问题已经少之又少了。
- 丰富的API:虽然不一定全部用得到,但是当我看到官方文档中丰富的API时,还是不禁感叹快应用的底层能力这块儿确实比其他同类型的产品强的多,并且是直接基于安卓手机厂商的,不需要担心某一天某些权限就被禁用的情况。
- 支持Less,前端开发可能都有体会,写过Less或者Sass之后,就不想写普通的CSS了,因为前者能力更强,代码可读性也更强,比较规范和系统化,所以快应用支持Less这个着实也蛮方便的。
不好的方面
其实也不能算是不好的方面,可能有的是我自己开发不习惯而已:
- flex布局:我之前做过半年的Andriod开发,前端的flex布局就和Andriod布局比较像,实际上是非常非常便利的,但是完全使用flex布局还是稍有些不适应。
- 不能实时预览,虽说watch模式可以实时监听修改并重启应用(后来版本新增了‘仅刷新’的功能),但是还是诸多不便。
- 不支持断点调试:在1020版本后开始支持断点调试,但是调试是在编译后的JS中调试,经常会出现卡死的情况,总是输出log来调试也挺不方便的。
四、总结
总的来说,对快应用的第一印象还是非常好的,就像我开篇说的,对于一名前端开发人员来说,前端技术能做的东西越来越多了,前端开发者能做的事儿也越来越多了,这是十分值得庆幸的。
笔者在写这篇文章的时候,公司的快应用产品已经上线了2款了,我会在后面篇幅中跟大家分享我实际产品开发中遇到的难题以及解决办法。如有错误请大家不吝指正~