android通用框架设计与完整电商app开发_发现一个神奇的移动跨平台开发框架
相当多的小伙伴对我的印象都是——Qt大神,嘿嘿,这是因为我凭一己之蛮力写作并出版了两本Qt方面的书《Qt on Android核心编程》和《Qt Quick核心编程》,在当时的Qt圈子里砸出了一点小浪花。很少有人知道,我还做过Android开发和iOS开发,是使用Qt这个跨平台框架哦——Qt从2013年开始支持移动平台了。不过用Qt开发移动端APP,有两个不大好的地方:1)安装包体积太大...
相当多的小伙伴对我的印象都是——Qt大神,嘿嘿,这是因为我凭一己之蛮力写作并出版了两本Qt方面的书《Qt on Android核心编程》和《Qt Quick核心编程》,在当时的Qt圈子里砸出了一点小浪花。
很少有人知道,我还做过Android开发和iOS开发,是使用Qt这个跨平台框架哦——Qt从2013年开始支持移动平台了。
不过用Qt开发移动端APP,有两个不大好的地方:1)安装包体积太大,会比原生APP增加40M左右;2)界面风格与原生平台适配较为麻烦。
鉴于这两个原因,强大的Qt在移动端的发展有些缓慢,后来我自己也没怎么用Qt开发移动端应用了,不过移动端跨平台开发真的是非常方便,对小公司、小团队来讲也真的是非常经济的选择,所以我一直在关注各种跨平台开发框架,比如Cordova、React Native、Weex、Flutter、Xamarin等,都有所了解。

最近在GitHub上浪的时候,忽然发现了一个新的框架——MLN(https://github.com/momotech/MLN),项目页面上介绍说MLN是一个高性能、小巧、易上手的移动跨平台开发框架。而且神奇的是,它居然是基于Lua语言的框架!
你知道吗?我在2008年时用过Lua ,还在CSDN上写了一系列的博客(见下图)。
当时还采用Lua作为脚本化的语言为我们的WebOS系统设计了一个热更新的插件框架。所以当我看到MLN可以使用Lua开发时,兴趣一下子被调动起来,赶紧浏览它的GitHub主页,发现项目的README这么介绍MLN:MLN是一个移动跨平台开发框架,让开发者用一套代码构建Android、iOS应用。MLN设计思路贴近原生开发,客户端开发者的经验,可以迅速迁移到MLN上,轻易构建出跨平台移动应用。
- 易上手,MLN专为客户端开发者设计,iOS、Android程序员非常容易上手。使用MLN不需要学习Node.js、npm、vue、ES6这些对客户端开发陌生的前端技术,也不强迫使用响应式框架。花几个小时了解下lua语言和文档就能轻松上手,客户端开发者的整个技术栈在这里都派得上用场。
- 增加包体积极小,1.2M。
- 真正的原生性能。跨平台往往意味着性能受损,得益于lua虚拟机的高性能和MLN优化,我们极大减少了中间介质影响,即使在低端安卓手机加载页面也极快。
- 支持热更新。
页面加载速度测试结果:
页面刷新帧率(fps)测试结果:
内存占用测试结果:
测试结果整理成表格如下:
由此可见,在安卓平台上,相比Weex、Flutter、React Native,使用MLN开发的APP,安装包体积增量最小,fps和页面加载速度都更接近原生APP。再来看iPhone 6 的测试结果。安装到手机后包大小测试结果(增量):
页面加载速度测试结果:
页面刷新帧率(fps)测试结果:
内存占用测试结果:
测试结果整理成表格如下:
由此可见,在iOS平台上,相比Weex、Flutter、React Native,使用MLN开发的APP,安装到手机后包大小增量最小,页面加载速度和内存占用都更接近原生APP。综合两个平台,可以发现,采用MLN框架开发的APP,的确具有其项目首页(https://github.com/momotech/MLN)上所说的易上手、性能高、增加包体积超小等特点。除了显著性能优势,MLN上手门槛也不高,甚至可以说非常低——它从页面布局方式到开发模式,都贴近客户端程序员开发习惯,通常一天就能上手。说到这里可能有小伙伴会有疑问,这么好的移动跨平台开发框架,适合在什么场景下使用呢?一个典型的场景是,MLN更适合嵌入到已有开发工程里使用,进行混合式开发。这种模式下,它能实现热更新并显著提高开发效率。第二个典型场景是,使用MLN独立开发完整APP。这个也经过验证,可以明显节省人力并能达到原生一样的高性能。到这里,又有小伙伴会问:有没有App在用呢?其实推出MLN的陌陌公司,其App就有多处是用MLN开发的,包括陌陌APP的首页(陌陌第一帧)、直播帧(陌陌第二帧)、直播页面在线榜单等,陌陌里面的附近群组、僵尸派对、聊天室等,也是用MLN开发的。可能很多人对陌陌的印象还停留在陌生人社交软件这个标签上,而实际上,陌陌的产品最近几年有很多变化,短视频、直播、游戏等,都有涉猎,而这些产品的发展,也打磨出一支实力雄厚的研发技术团队。MLN就是陌陌技术团队的对外技术输出,已经在陌陌的商业化场景下验证过,是经得起考验的框架,值得一试。◇最近文章推荐将近30岁,为什么还是这穷?2019完蛋了,来聊聊你的高光时刻选高薪不喜欢的工作,还是喜欢但低薪的这些面试的坑,你知道几种?
更多推荐

所有评论(0)