微信‘小程序’: web前端的春天 or 噩梦?

最近大家看到这张图是不是都快吐了?这两天一睁眼就被这张图刷屏了

喵了咪的,点到哪里都是这个报道和新闻

最近因为工作 和生活略忙,爱吹文章的我,更新频率也低了,在这里抱个歉,希望大家理解和包容,希望“粉丝们”(装逼完成、跑….),不要离开我这么帅的人!

此文观点声明先:

  • 只通过技术角度分析讨论 【小程序】对程序员、web前端、后端人员技术路线的影响
  • 不从产品角度 展望【小程序】以后的发展和方向– 这个都被媒体或专业市场分析人员分析烂了

「 微信应用号是什么?」

张小龙曾表示,用户关注一个应用号就如同安装一个App一样,而微信应用号就相当于另一个App Store,主要功能就是应用推广。

此图也被看烂了是吧?好吧,关于【小程序-应用号】 的概念和解释,我相信大家已经在各大头条网站了解的很清楚了,各种推送和刷眼球,真是腥风血雨!我就不多做解释了。

如果你还不知道 微信‘应用号’是啥意思,那么请你从山洞里出来好吗?赶紧回到这个残酷的商品信息时代吧!



「 微信应用号可以做什么」

简单说,微信“小程序”可以为开发者提供基于微信的表单、导航、地图、媒体和位置等开发组件,让他们在微信的网页里构建一个 HTML 5 应用。同时微信还开放了登录和微信支付等接口,让这个“小程序”可以和用户的微信账号打通。

简单地说,目前微信“钱包”中的“大众点评”、“京东商城”、“滴滴出行”等第三方服务就是应用号的一种雏形。

还有支付宝里的 “生活缴费”,“城市服务”等,都是这种范畴,只不过是直接集中在app里面。

根据参与本次内测的“小道消息”创始人 Fenng 提供的信息,微信小程序向开发者开放了下列 API 接口:我们再来刷一张图

1.微信的目的似乎很简单,就是希望把用户使用App的动作都集中在微信上。

2.从开放接口看,这不就是 web app?混合app么?

3.小程序就是一个依托微信,来开发网页APP的关系户。

4.html 、css3、js 又泥煤的更重要、更露脸了(笑 ?)



「 小程序对 原生APP 开发人员的影响」

1.Android 、IOS 开发者饭碗会丢吗?

呵呵,这个问题讨论了多少年了?HTML5 API第一版标准出来的时候,都在展望设想,现在呢?手机主流不还是原生APP 的天下,虽说一定程度上网页应用占了不少河山,原生app里面也嵌入了大量web app 页面程序。但归根结底还是原生APP的范畴。一谈到体验、性能问题,就是硬件在发达,还是会想到原生app

另外 App 天生的优势,和硬件直接打通、自由奔放,功能、体验更加友好。

微信是一个大平台,在怎么折腾还是小马哥 说了算,哪天说给你接口封了就封了,说给你下了就下了,你只不过是去上边尝了尝鲜。

所以,Android 、IOS 开发人员完全不必担心会丢饭碗(短时间内),小程序也不会取代原生APP。

2.原生app 人员应该学习 HTML5 、JavaScript吗?

我以前文章早就说过,以后会很长时间甚至可能一直都是 “前端年”,丝毫不夸张。如果身为技术人员不拥抱变化,不get新技能,可能工种不会淘汰你,时间就会淘汰了你,

而且现在 Hybrid App 开发方式如此流行和轻便,各种框架+语言 都可以无压力操作原生接口开发,比如 react native(火爆程度直逼安卓原生,甚至有超越趋势),而且体验也是极好的。

所以劝只会原生开发的小伙伴,有空学习 JavaScript吧!

「 小程序 对 web前端开发人员的影响」

身为 web前端开发里最帅的人,今天我从 专业前端开发者的角度,来分析下 【微信-小程序】会对我们有什么样的影响

首先,它的出现不会影响到我的颜值(放心了);

然后,我们前面说了,这基本上就是 我们现在总是接触到的 Hybrid App方式,你颤抖了吗?HTML+CSS+JavaScript 快要一统河山了?单单从这方面来讲的话,我们web 前端工程师 是应该高兴还是高兴,还是忧虑呢?

我们先简单分析一下 开发移动混合APP 的方式,根据此网络图分析:

  • 左边一类(A)是继续坚持使用HTML+CSS进行界面布局,通过对页面渲染进行优化和对标准JS进行原生扩展来实现跨平台App开发。框架例如 MUI 、SUI、jquerymobile、ioinc
  • 右边一类(B)是放弃使用HTML+CSS的界面布局,选择一种第三方的中间语言(如JS,C#等)来映射成Android和iOS的系统调用,从而实现跨平台。这种方式的界面布局需要通过中间语言组合系统UI组件来完成,渲染性能比HTML+CSS的方式要好,但这样也失去了HTML+CSS布局的标准性和灵活便捷。但为了性能一切都忍了,至少目前这种方式已经占据了市场和开发狗的心。 如 React Native

A类特点:简单 快速,模版布局现成,一般熟练 html5 css 的前端开发人员根据api都可以胜任、调用基本的原生接口 如相机、扫描、地理定位也够用。但渲染太耗内存、性能堪忧。

B类特点:完全映射底层接口。通过中间件打通视图 和底层借口,利用中间语言 JS 来开发应用程序。渲染性能比HTML+CSS的方式强悍许多,但布局和开发已经不是原生的 html+css+js了,这增加了难度和便捷性。

但此方式还是比原生app开发周期短很多,属于web开发范畴,只不过开发方式包装了一些技巧。性能直逼原生(原生小伙伴们,还不学前端?)



【小程序】是哪种开发方式和技术栈

那么分析完了,这2种方式原理,我们回到主角,【小程序】到底是通过什么方式来开发和渲染的呢?来跟着我来分析,没错的!

第一时间已有神人在github开源了 内测小程序的应用包,猜测估计是 内测200名额里面的某公司的开发人员,并且把他破解开源了(不得不说,国人手速是真快)

从上边一些截图 可以一目了然确定,前端开发的福利 稳了!控制台、dom结构、js文件、require包含模块

但当我看到这个文件的时候。。我tm 合不拢嘴了,这不就是 vuejs 、react吗这 MVVM家族的子孙吗。

完全组件化、自定义组件标签、数据双向绑定。

现在我根据以上代码结构分析,我可以确定 小程序 是属于 B类,也就是React Native 方式的开发模式,简直和现代的web前端技能无缝对接了。



微信‘小程序’: web前端的春天 or 噩梦?

前面喷了那么多,都是为我们这个问题来的。小程序的发布对 web前端的春天 or 噩梦呢?

  • 不言而喻,上边经过我的分析,傻子也能看出来是满篇的好处和福利了 也就是春天。html+css+js +各种前端框架经验,你他喵的 小程序简直是web前端开发人员的定制福利。
  • 值得担忧的问题:福利好自然压力大,以后前端开发又得多掌握一份技能 和 一套微信体系开发工具了,微信开发必须在微信提供的 宝宝箱 sdk里开发,而且也不是原生js语法 和react 、angular语法,它是 WXML 和 WXSS ,微信自体系。
  • 进入全面 js时代,也不远了

    Any application that can be written in JavaScript, will eventually be written in JavaScript.

    ‘ 能用js写的东西,就全部用js写 ’,所以 以后入门门槛 会更高,后端 、原生app开发人员也都要掌握一些 JavaScript 技能。

    本身这些混合开发框架 就是用c++ /c 语言调用的硬件接口来映射给js 调用的,所以以后前端人员的竞争可能会变大,越来愈多的后端 或者原生APP开发人员会进入 JavaScript 的学习大军,那么本来普遍逻辑能力就强的他们,会不会侵蚀一部分前端开发的福利呢?

那么以前企业项目 可能需要 一个wap、wap app、企业号,以后 会 + 一个 ‘应用号’开发。 工作量大了,企业成本也增高了,那么涉及到我们个人, 工资会不会随着业务量、工作量的增长而增长,这个才是关键问题。

总结:

拥有5-8亿 用户的微信,无疑成为了世界数一数二的移动互联网最大入口。它的一举一动,堪比国家经济动荡,发布一个东西就是一个行业,滋生无数机会。

所以我们是无奈的,接受就好,让市场来考验,让用户来决定。

APP开发人员不必跟风媒体恐慌,你只要保持自我,不断学习,肯定是不会被淘汰的。

web开发人员高兴之余,也不要忘形,因为这意味着以后你会承担更多的压力和工作量,和更多其他行业进来的竞争者们,大家都准备好了吗?

末尾福利 : github 开源 【小程序】 链接奉上 里面有一切关于这个demo、工具和文档、新闻,谢谢最初收集者

小程序 - demo :https://github.com/xwartz/wechatApp-demo

开发工具破解:@zhujin

下载:https://pan.baidu.com/s/1geTeKNp 密码: 5nge

关注我微信号,给我留言 “小程序” 字眼的 我会发送更多 资源和工具连接。请大家排好队了!嘿嘿!

最后 ,容我说一件事:经过不懈努力,微信终于邀请我开通了 文章【赞赏】 功能;

所以原创很不易,每次写完文章,累得半死,所以大家有钱的出个喝水钱,没钱的点个赞 转个发 支持下都可以的,这样我更有动力 来和大家一起分享。

长按扫码,关注我的公众号额

时间: 2024-12-09 19:35:56

微信‘小程序’: web前端的春天 or 噩梦?的相关文章

通过微信小程序看前端

前言 2016年9月22日凌晨,微信官方通过“微信公开课”公众号发布了关于微信小程序(微信应用号)的内测通知.整个朋友圈瞬间便像炸开了锅似的,各种揣测.介绍性文章在一夜里诞生.而真正收到内测邀请的公众号据说只有200个. 虽然内测名额十分稀少,但依赖中国广大开发者的破解和分享精神,在网络上很快出现了开发工具的破解版本和API文档.然而可能是微信的妥协或者早已预料,9月24日微信官方发布了不需要破解就可以使用的微信小程序开发者工具和文档,对于费劲心思破解完的开发者来说应该瞬间整个人都不好了. 以下

web前端的春天 or 噩梦

「 微信应用号可以做什么」 简单说,微信“小程序”可以为开发者提供基于微信的表单.导航.地图.媒体和位置等开发组件,让他们在微信的网页里构建一个 HTML 5 应用.同时微信还开放了登录和微信支付等接口,让这个“小程序”可以和用户的微信账号打通. 简单地说,目前微信“钱包”中的“大众点评”.“京东商城”.“滴滴出行”等第三方服务就是应用号的一种雏形. 还有支付宝里的 “生活缴费”,“城市服务”等,都是这种范畴,只不过是直接集中在app里面. 根据参与本次内测的“小道消息”创始人 Fenng 提供

原创:微信小程序+WEB使用JS实现注册【60s】倒计时功能

1.效果图: 2.页面仅仅利用了JS的相关功能,包含:wxml.js.wxss 2.1wxml页面代码: <text>绑定手机</text> <form bindsubmit="bindMobile"> <view class="form_group"> <text>手 机:</text> <input type="number" placeholder="请

微信小程序,前端大梦想(五)

微信小程序之综合应用-访问网络加载数据 移动端访问网络加载数据时必不可少的功能,本章将接入豆瓣电影API,以列表的形式展现数据,支持下拉刷新及点击查看详情.重点包括: l 访问网络 l 跳转画面及传参 l 下拉刷新的方法 一. Wx.request(object)访问网络 l wx.request发起的是 HTTPS 请求,不支持http请求 object参数说明: data 数据说明 最终发送给服务器的数据是 String 类型,如果传入的 data 不是 String 类型,会被转换成 St

微信小程序,前端大梦想(三)

微信小程序的事件及生命周期 继续下节课,今天我们还是从四个方面来了解小程序: ●常用事件和事件冒泡 ●配置 ●app生命周期及app对象的使用 ●页面的生命周期 一.事件的绑定: 事件一方面可以理解成用户的行为,当用户对UI层做了某些操作时,程序可以捕捉到操作的类型.如:点击.长按.移动等.另一方面事件也是一种通讯方式,比如当程序运行时来电话.短信通知时会改变当前程序的生命周期.常用的事件类别主要有: ●点击事件:Tap ●长按事件:longTap ●触摸事件:touchstart.touche

微信小程序WEB工具安装

1.下载工具链接:http://mp.weixin.qq.com/debug/wxadoc/dev/devtools/download.html?t=201715 2.安装完成后图片样式如图: 3.新建项目  说明:选择目录的时候尽量新建微信独立的工作空间[个人习惯] 4.打开项目效果图如下

微信小程序上传图片(前端+PHP后端)

一.wxml文件 <text>上传图片</text> <view> <button bindtap="uploadimg">点击选择上传图</button> </view> <image src='{{source}}' style='width:600rpx; height:600rpx' /> 二.js文件 Page({ /** * 页面的初始数据 */ data: { //初始化为空 source

微信小程序前端源码逻辑和工作流

看完微信小程序的前端代码真的让我热血沸腾啊,代码逻辑和设计一目了然,没有多余的东西,真的是大道至简. 废话不多说,直接分析前端代码.个人观点,难免有疏漏,仅供参考. 文件基本结构: 先看入口app.js,app(obj)注册一个小程序.接受一个 object 参数,其指定小程序的生命周期函数等.其他文件可以通过全局方法getApp()获取app实例,进而直接调用它的属性或方法,例如(getApp().globalData) //app.js App({ onLaunch: function ()

微信小程序测试总结

概述 由于项目中,微信前端和后端对接出现错误.所以Alpha测试分为微信小程序前端,管理员web测试. 测试工具选择 微信小程序的前端使用微信小程序开发工具测试. 管理员web使用web测试. 测试工具使用 打开微信小程序,填写AppID,项目地址和项目名字开始调试. 管理员web登陆账号密码均为:admin . 测试用例文档 编号 发布者 标题 类别 信息说明 图片名称 发布时间 03 孙敏铭 自行车 找回 黄色自行车.知道的请联系我.电话:136552 自行车.jpg 2017-12-04