微信小程序分析见解
前两天朋友圈都快被小程序给刷爆了;
对于小程序这方面, 由于没有公测的资格。所以翻阅了许许多多的资料,来了解一下小程序;
微信小程序:
小程序是一种不需要下载安装即可使用的应用,它实现了应用“触手可及”的梦想,用户扫一扫或者搜一下即可打开应用。也体现了“用完即走”的理念,用户不用关心是否安装太多应用的问题。应用将无处不在,随时可用,但又无需安装卸载。
据传是张小龙发在朋友圈对小程序的评论
下面是禅叔的观点:
小程序原理就是用JS调用底层native组件,和React Native非常类似。恰恰又证明了,凡是能用JS开发的最终都会用JS开发。
证明:凡是能用JS开发的最终都会用JS开发
解:
据我多年经验,这句话是一个真命题。
语言的设计者是有两个派系的,有些人认为程序员语言应该防止程序员干蠢事,另一些认为程序员应该可以用编程语言干一切他们想干的事。 C/Java语言是前一个阵营的代表, JS是后一个阵营的代表。
往往第一个阵营的语言强调性能, int就是int,double就是double 还第二个阵营就是强调便利性 ,int是var , double还是var。
选择语言的时候,其实就是在做选择题。是选择便利还是选择性能。
往往新出的语言便利性都很强,是因为硬件性能提高了,从而可以为了便利性放弃性能要求。
编程语言的主要矛盾就是程序开发的便利性和硬件水平的矛盾。
如果能够穿越回到70年代(首先在中南海西面买块地), 那时候你坐在庞大的计算机面前写代码的时候,无意间小手一抖,多敲俩空格,然后程序oom。
不要感觉上面的事情不可思议,那时候内存低的可怜,每一个字符都是严格定义的,不允许任何浪费。能运行java虚拟机都是天方夜谭,怎么可能会有java语言。
节俭是一种美德,浪费不一定是坏事情
随着硬件性能的提高,出现了越来越多的编程语言,新出的语言往往性能上浪费,便利性上提高。要是按照几十年前的标准衡量,有一些使用新语言开发的热门应用程序对硬件资源浪费非常惊人。
不仅编程语言有这种现象,这实际是一种普遍的历史趋势, 随着技术的发展,每一代人都在做上一代人觉得浪费的事情。你可以想象下30年前打个长途电话,而现在,别说长途电话了, 有的人都就坐飞机去约炮了,这个在以前很难想象。
浪费可以分成好的浪费和坏的浪费。用更多的浪费换来简单的设计,并不是什么坏事。
如何才能充分利用新硬件更强大的性能最有利地“浪费”他们?
这时候问题就回到了开始, 证明:凡是能用JS开发的最终都会用JS开发
JS这种语言扩展性极强, 性能比起其它语言只能呵呵了。 但是硬件速度会提高很快。
Paul Graham算过,如果摩尔定律一直成立。一百年后计算机的运行速度是现在的74乘以10的18次方倍。(准确地说是73 786 976 294 838 206 464倍)
终有一天,你会在选择的时候忽略性能,选择便利性。
以前上学的时候,经常去网吧玩大话西游和传奇。而现在随便一个页游就能做出这种游戏效果。10年前你很难想象在网页上能玩这种游戏。
你现在就可以尝试想象一下若干年后,打开网页能玩魔兽世界。这并不是不可能实现的。
强调性能的语言还能否生存
我们都知道C/C++ 就是强调性能的语言, 我们做游戏或者视频播放的都是要求性能的。他们会不会被新的语言取代呢?
我可以郑重证明,不会的。
虽然上面我说的Java语言属于强调性能的第一阵营的语言。但是相对于C/C++ 它显然是增强了便利性。
语言是发展的,是迭代的, 随着硬件性能提高,基本上每个节点下都会产生新的语言,相对于之前的语言浪费性能,增强便利性。
但是很难取代之前的语言,对性能要求高的程序依然会出现的, 即使以后可以在网页上玩魔兽世界,但是还会出现 超级魔兽世界,泰坦世界, 宇宙世界 等等一大堆新的对性能要求较高的游戏。
微信小程序会取代其它APP吗?
问题回到我们的主题微信小程序上,微信小程序会取代其它APP吗?
我的观点很明确,
现在不会取代,以后会,但是以后会出现以后的微信取代不了的;以后的以后会取代以后的,但是以后的以后会出现以后的以后的微信取代不了的 …..
其实也不难解释,10年前我们不能在网页上玩传奇, 但是现在可以。但是现在又有了魔兽世界,也许10年后网页上就能玩了,但那时候肯定还会出现 超级魔兽世界之类的游戏不能在网页上玩。
而小程序出来之后, 个人感觉将会无限方便;
像在学校的同学们,想使用其他软件,免不了浪费流量去下载一个App,而之后使用了一下。觉得又不想使用,太浪费内存,只好删除。
无线的繁琐,浪费流量。
而小程序的出来,让这种问题大大的解决了;
虽然现在公测了,但是具体到用户的体验上更便捷,更全面,觉得今年将无望了吧;;
考虑到微信在社交领域的强大影响力,不少开发者对此也颇为期待,相信小程序会给未来的程序开发和应用带来非常大的影响,不少开发者已经迫不及待的通过各种途径为自己充电,准备在新一轮的科技热点到来之前蓄势待发。那么,如何开发小程序呢,今天,我们就为大家整理了一份开发小程序的必备技能图谱,
精华内容一瞥:
- 全面解析JavaScript中的事件绑定、事件冒泡、事件捕获和事件执行顺序
- 利用滚动事件window.onscroll与position:fixed写兼容IE6的回到顶部组件
- 解析Javascript事件冒泡机制
- 深入了解JavaScript闭包及其机制
- JavaScript中的event对象之总结
- 全面解析Javascript中事件捕获、事件冒泡以及事件委托机制
精华内容一瞥:
- HTML5+CSS3实现类似网易云音乐的移动版播放器
- 逼真的HTML5 3D水波动画 可多视角浏览
- HTML5 Canvas绘制转盘抽奖
- HTML网页之坦克大战游戏
- 让HTML5来为你定位
- 炫酷实用的10个HTML5动画应用
- HTML5 3D衣服摇摆动画特效
- 避坑宝典:如何选择HTML5游戏引擎
- Hybrid H5跨平台性思考
- HTML5游戏开发专题视频集
精华内容一瞥:
- React-Native系列Android——通信数据模型分析
- React Native导航Navigator组件基本使用方法
- React Native之Android Tabbar的实现
- React-Native系列Android——Native与Javascript通信原理(一)
- React-Native系列Android——Native与Javascript通信原理(二)
- React-Native系列Android——Native与Javascript通信原理(三)
- React native 实战系列教程之影片数据获取并解析
- 基于React Native的Android开发框架搭建
- React Native调试技巧与心得
- React Native学习实践:动画初探之加载动画
- React:组件的生命周期
- 一个资深iOS开发者对于React Native的看法
- 阿里巴巴开源前端框架–Weex实践
- Web:一张图读懂Flux
- Windows10环境下React Native打包的个人实践
以上仅仅个人观点;欢迎批评指正;
参考文档 http://blog.csdn.net/yulianlin/article/details/52621413
参考文档 http://geek.csdn.net/news/detail/103138
微信小程序分析见解的更多相关文章
- 原创:去繁存简,回归本源:微信小程序公开课信息分析《一》
以前我开过一些帖子,我们内部也做过一些讨论,我们从张小龙的碎屏图中 ,发现了重要讯息: 1:微信支付将成为重要场景: 2:这些应用与春节关系不小,很多应用在春节时,有重要的场景开启可能性: 3:春节是 ...
- 软件产品案例分析——福州大学微信小程序
一 .调研,评测 评测 第一次上手体验: 刚进入看到菜单界面,感觉还是比较生动清晰的,功能很多,也很全面,包涵了大部分学生所需要的功能,就是第一次身份验证那里找了半天. bug: 1.点击进入学生证附 ...
- 微信小程序、安卓APP、苹果APP对比分析
今天的话题主要是关于微信小程序.安卓APP.苹果APP对比分析.既然是对比分析肯定是将它们一个一个说明. 本篇不涉及技术话题,只讲解微信小程序.安卓APP.苹果APP它们各自的优缺点及其应用场景. 一 ...
- 从程序员的角度分析微信小程序(编程语言:用到什么学什么)
从程序员的角度分析微信小程序(编程语言:用到什么学什么) 一.总结 一句话总结:微信小程序原理就是用JS调用底层native组件,和React Native非常类似.(需要时,用到时再学) 1.选择语 ...
- 从程序员的角度分析微信小程序
昨天朋友圈被微信小程序刷爆了. 我赶快在书架上拿出三年前买的书,把上面的土擦干净,压压惊. 作为一个并不是资深的程序员. 从程序员的角度分析一下微信小程序,欢迎指点. 首先吐槽 微信小程序只发了200 ...
- 微信小程序应用安全分析及设计
针对微信关于小程序安全设计的分析 针对微信小程序开发配置及部分配置机制分析微信小程序安全设计: AppSecret 管理员生成AppSecret,在与微信后台交互过程中部分接口使用,如 auth.co ...
- 微信小程序开发常见问题分析
距离微信小程序内测版发布已经有十几天的时间了,网上对微信小程序的讨论也异常火爆,从发布到现在微信小程序一直占领着各种技术论坛的头条,当然各种平台也对微信小程序有新闻报道,毕竟腾讯在国内影响力还是很大的 ...
- [微信小程序]初试——成绩分析小程序问题总结
文件类型说明 第一次打开微信小程序的开发者工具,就是下面这个样子. 好多已经存在的默认文件 .js .json .wxml .wxss 首先当然要搞懂这些文件都是干什么的 app.js是小程序的脚本代 ...
- 微信小程序尝鲜一个月现状分析
概述 曾记得在微信小程序还没有上线的时候,大家都是翘首以待.希望在张小龙,在企鹅的带领下,走出差别于原生开发的还有一条移动开发的道路,我也是一直关注着.知道1月9号,微信小程序最终对外开放了,作为第一 ...
随机推荐
- 在三维场景中加载shp(skyline)
在场景中添加shp图层有两个方法: (1)直接调用Command命令,SGWorld.Command.Execute(1013,5);这样的话,和在场景中的工程树中右键添加特征图层的过程是一样的.有个 ...
- Golang Learn Log #0
Print/Printf 区别 Print: 可以打印出字符串, 和变量 fmt.Println(var) //right fmt.Println("string") //righ ...
- 转:IO模型-- 同步和阻塞,异步和非阻塞的区别
源地址 http://hi.baidu.com/deep_pro/item/db0c581af1c1f17e7b5f2534 这些词之间的区别难倒了很多人,还有什么同步阻塞, 同步非阻塞, 异步阻塞, ...
- 【agc019f】AtCoder Grand Contest 019 F - Yes or No
题意 有n个问题答案为YES,m个问题答案为NO. 你只知道剩下的问题的答案分布情况. 问回答完N+M个问题,最优策略下的期望正确数. 解法 首先确定最优策略, 对于\(n<m\)的情况,肯定回 ...
- 015-WebDriver API
1. 从定位元素开始 8种元素定位方法 id find_element_by_id( ) name find_element_by_name( ) tag find_element_by_tag_na ...
- textarea标签中多出的空格
//这么写才能被正确渲染 <textarea></textarea> //这样就会有空格 <textarea> </textarea> 不能换行,涨姿势
- 读书笔记--Head First PMP目录
1.引言 2.阻止.约束和项目 3.过程框架 4.项目整合管理 5.范围管理 6.时间管理 7.成本管理 8.质量管理 9.人力资源管理 10.沟通管理 11.项目风险管理 12.采购管理 13.职业 ...
- logo 编程
玩了一把logo语言,好学易懂,小朋友有兴趣是个挺不错的玩意.当然也可用于一些机器人等控制 apt install ucblogo ;一个多边形 l 边长 n 边数 to sj :l :n repea ...
- 基于HHT和RBF神经网络的故障检测——第二篇论文读后感
故障诊断主要包括三部分: 1.故障信号检测方法(定子电流信号检测 [ 定子电流幅值和电流频谱 ] ,振动信号检测,温度信号检测,磁通检测法,绝缘检测法,噪声检测法) 2.故障信号的处理方法,即故障特征 ...
- Spring boot随时获取ApplicationContex
@Service public class SpringManager implements ApplicationListener<ContextRefreshedEvent> { pr ...