程序员|聊聊「小程序」的幕后、现在和未来

程序员|聊聊「小程序」的幕后、现在和未来

编辑删除转载2016-10-27 13:32:48

标签:itjava北京尚学堂编程程序员

版权声明:本文为北京尚学堂原创文章,未经允许不得转载。​

小程序生态是原生生态的下一代替代品,是时代的进化产物。windows原生应用当然也不会消失,但大部分服务都在互联网上了。小程序看中的也是这块,邮件客户端什么的就不要在小程序里用了,但你目前在PC浏览器里使用的各种服务,全部会纳入小程序的生态范围。

对「小程序」不仅了如指掌,还有很多想法想和大家分享。在 Mind 现场的直播里,揭秘了「小程序」不为人知的一面。​​

满满的干货你还要错过吗?快扫描下方二维码获得更多!!!

以下是分享内容:

在小程序这个消息出来之后,相信很多人会问:为什么会有小程序呢?

我想这个问题最佳的答案,当然是来自于微信的掌舵人张小龙先生。在小程序发布后,他第一时间在朋友圈里分享了一段话:​

那些与小程序类似的应用,今何在​

说到小程序,不得不提及那些与它有不少共同点,或者说有同一目标的应用。首先登场的是,由世界上最大的 404 站点 Facebook,在 2010 年的 6 月 8 号发布的一款名为 FBML 的编程语言。

今年,世界上另一个巨大的 404 站点 Google,也在 Google news 发起了一个叫 AMP 的项目,领导一众媒体,聚焦在怎么使移动互联网的浏览体验变得更加的顺畅的问题上。

在国内,人人网也曾模仿 Facebook 制作了 Subset 定制化语言,推出了相应的工具,但没有几个人听说过人人曾经做过这样的事。​

无论这些项目现在的状态存亡与否,我们都能清楚地看到这些不同的项目,都在尝试解决同样的问题。

比如 Google,它想解决互联网的尴尬处境,让网速赶上越来越丰富的应用体验、交互模式发展的速度,落实变革。所以今年微信也从它的角度提出了对这一问题的解决方案。

一场关于小程序实现方式的赌局,争论多​

在小程序发布后不久,华南地区的技术人员拉了个几百人的群,在群里面对小程序的实现机制进行了各种猜想和讨论。

慢慢,讨论又变成争论,最后演变成一场关系到很多杯咖啡的赌局,这个赌局的双方分别是 Native 和 Web。更多精彩内容关注微信公众号:北京尚学堂。​

在小程序发布后不久,华南地区的技术人员拉了个几百人的群,在群里面对小程序的实现机制进行了各种猜想和讨论。​

微信在 Web View 的基础上,用 Native 对地图等四类块级元素进行绘制和交互。​

我想有开发经验的人都知道,当你在一个布局里,实现一些网页元素和原生组件的绘制时,是会存在一些问题的。小程序为了解决这些问题,把 Native 和 Web 混合,替换部分块级元素,使稳定性提升到生产水平,是一种进阶式的发展策略。​

剖析小程序的技术框架,干货多

微信小程序的技术架构我们可以把它拆解成三层。

上层 Native 是用于平衡性能;下层的 JSSDK,为微信的 Web view 提供 Native 功能,实现上传文件、获取设备、定位等功能,是微信已经布局了将近三年的技术框架。

值得一提的是,中层 Web view 解决主要的渲染工作,微信在 Web view 的基础上加入了 Virtual dom 的技术。有人曾质疑微信抄袭 React Native,因为 Facebook 曾提出过 Virtual dom 概念。​

而无论是 React native、Phonegap 还是 AMP 也好,它都是开放的,允许开发者去用原生的FBML、HTML 语言。

但微信小程序却只用自己的一套标准,用户不能使用熟悉的 Dom、Window 和 Document,只能使用微信的 Text/Footer/View/Flexviews 等自定义组件。

小程序为什么放着好好的开发标准不用,要自己造一套标准、一堆文字呢?

从技术层面出发,微信创造小程序,想解决的问题是,怎么让用户用最简单无负担的方式,使用一个 APP。小程序要尽可能地缩短使用一个APP的过程,让用户使用 APP 的过程中,体验尽可能接近原生,达到一种平衡。

为了让 Native-web 混合模 式达到理想的平衡状态,微信用自己制定的标准和组件,明显会有更多提升空间。他们有更多的掌控权,和更少的试错的成本。

微信小程序现阶段要达成的目标,就是用一些小工具实现他们提出来的愿景,即用即走、零负担。

为了让负担降到更低,小程序限制了代码的大小,总共不能超过 1 MB 。以此控制被分发到用户微信上的一个小程序的包,总大小不超过 5MB。这提示了开发者,如果现阶段想使用小程序实现想法的话,应制作轻便的、简单的工具。

小程序推出对开发者利好,优势大

现阶段微信小程序的优势和劣势分别是什么?

一位来自百度的工程师曾赞叹道,微信小程序里的地图组件,使用体验和原生毫无差异,给他们的景区小应用的效果带来了很大提升。可见小程序的优势之一,就是性能接近原生态。

当然最大的优势,还是微信流量的红利,以及零软件运营成本。

对于开发者而言,小程序的推出是非常利好的消息。以前开发一个 Web APP,简单算下来,域名的费用、EC 实例的费用,再加上这个传播的费用等,初期就有很多不必要的花费。而这一切在微信小程序上都不需要,因为它替你做了 CDN、预加载。

然而这也是小程序的天生劣势—— Wechat only,你只能在微信里使用,无法在浏览器里运行,场景受限。现阶段微信想开发者做的还是偏向简单的小工具。

小程序在努力开放互联网,降门槛

发布后轰动一时的小程序,究竟能够做什么?随着它的开放发展,未来又会变成什么样子?

就像四年前发布的公众号,2012 年的时候,谁想到公众号会有今天的成就。

或许对于你来说,公众号只是众多阅读渠道中的一个,但是对于我们平时不太关注的群体而言却非常重要,像小县城的公众号,你只要观察一下,就会发现一个惊人的事实。很多小县城的公众号文章能轻松过 100000+ 阅读量,而阅读这些文章的,正是留守在农村或者五六线的小县城的农村人,我们的父辈、叔辈。

微信公众号真正地解决了这些人,对互联网资讯的获取。像小县城的政府或者运营机构,他们能运营平台发布内容。

如果从这个角度出发,我们会发现小程序正式向公众号降低内容的获取与发布的门槛一样,他在解决工具的开发和获取使用的门槛,而这个门槛的降低,我想它有着我暂时无法预知的未来。

有了小程序后,编程不再是难事,未来有可能人人可编程、人人都要会编程。我期盼在不远的将来,我家乡的那些父辈们、叔辈们,能和我们一样,用上或制作出精彩实用的工具,享受互联网的各种福利。

互联网的本质是开放的,有些人认为微信推出小程序制造标准,是在开历史的倒车,是在搞封闭。

但如果换一个角度看,微信通过它自身的占有率、触达率,让那些条件不如我们的人们,和我们一样获取互联网的资讯、功能和服务。我认为微信,是在努力开放互联网,实现人人可以获取、触达、消费的伟大愿景。

想象下一切触手可得的上帝感,手机里全是可以放心的、高品质的、无需适应的APP、不用登陆注册的服务,触手可得、用完即走,太爽了。

更多Java培训,Java视频,Java教程尽在北京尚学堂Java培训,关注北京尚学堂官方微信,获得一手Java最新知识。

更多猛料!扫描上方二维码关注北京尚学堂官方微信公众号 (资料领取验证消息:156

转载于:https://my.oschina.net/u/2947706/blog/776552

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值