Web    Native App  微信小程序

WebApp是指基于Web的系统和应用,其作用是向广大的最终用户发布一组复杂的内容和功能。webapp 框架是一种简单的与WSGI兼容的网络应用程序框架,可以与 App Engine 配合使用。不必为了使用 App Engine 而使用 webapp:网络服务器支持任何使用 CGI 的 Python应用程序。webapp 提供一种简单的方式来开始为 App Engine 开发应用程序。应式网页设计的大部分技术,是可用在WebApp开发中的。

Native App是一种基于智能手机本地操作系统如iOS、Android、WP并使用原生程式编写运行的第三方应用程序,也叫本地app。一般使用的开发语言为JAVA、C++、Objective-C Native App。因为位于平台层上方,向下访问和兼容的能力会比较好一些,可以支持在线或离线,消息推送或本地资源访问,摄像拨号功能的调取。但是由于设备碎片化,App的开发成本要高很多,维持多个版本的更新升级比较麻烦,用户的安装门槛也比较高。但是比较乐观的是,App store培养了一种比较好的用户付费模式,所以在Apple的生态圈里,开发者的盈利模式是一种明朗状态,其他market也在往这条路上靠拢

微信小程序我们提供了一种新的开放能力,开发者可以快速地开发一个小程序。小程序可以在微信内被便捷地获取和传播,同时具有出色的使用体验。 微信小程序就是运行在微信内部的应用程序,没有 App 一样的安装、卸载过程,但是同时具备出色的使用体验,看到这时我就怀疑小程序应该不是基于纯 web 的应用,因为起码目前来说 web 应用体验还是比较差的,从圈内人与微信内部人员获得的信息得知,微信小程序果然跟猜想的一致,技术上是使用一种类似 React Native 的框架来保证原生的体验。

微信小程序由于出于微信框架,所以受到一些限制,所以才叫小程序,只能做些小应用,适合微信小程序的我认为是一些工具类的应用,比如天气、日程、缴费、订票等,还有一些娱乐类的小游戏,这种低频同时又有刚需的我认为是最适合微信小程序的。相反,你在微信内部刷个微博、知乎等,一方面微信内部肯定各种限制,另一方面肯定没有去这类 App 直接体验更爽。App 有他天生的优势,没有微信的限制,更加自由,功能、体验更加友好,微信小程序是基于类似 React Native 的框架来开发的,用 html + javascript 来做开发。

其中小程序开发完后并不能直接发布,需要提交给微信团队进行审核,审核方式类似于 App Store。由于微信小程序受到微信框架的限制,虽然其操作简单,很容易上手,但是我觉得随着智能手机越来越流行,而且人们对手机流畅程度的要求越来越高,微信小程序只能火一段时间,不能长久的发展下去,微信小程序只适合于一些开发程序的新手,由此来锻炼自己,原因是开发成本低,操作简单,容易上手。

由于NativeApp专业性很强,对要求极高,而且要求手机,pc端需要安装应用,而且由于系统性缘故,有的系统可能不支持,对有的系统需要单独开发新的应用,这就大大增加了开发成本,由于其专业性很强,基于人们未来对应用的需求越来越大,这就使得开发人员不足以适应整个市场,所以未来这个也未必是大流的开发。

由此而来,WebApp就将成为未来的主流,并且走在历史进程之前的 HTML5,从 2013 年左右开始出现 HTML5 行业的创业者,一直以来的印象都被固化到了「小游戏」和「小广告」的层面,尴尬的定位和贫瘠的市场需求都阻碍了行业成长。现在通过微信来教育市场,HTML5 行业毫无疑问会以空前的速度发展,同时资本市场也会开始关注这一领域。对于「小程序」这样的 Web App 来说,可见的未来中慢慢脱离于 Native App 的制约而独立迭代,更快的进行技术演进。App 最终会消失,所有 app 都会演变成为特定情景服务的工具,但在此之前必然还有很长的路要走。无论微信的野心是要变为OS 也好,Web App 的野心是要推翻 Native App 也罢,这一切都还需要技术、市场、用户习惯的演进和沉淀。

对于未来,我觉得由于人们消费的需求,对手机,PC性能的一些需求,很可能许多APP将不会存在,取而代之将是Web,到时候很可能PC端只用一个浏览器处理就可以了,到时候就加大对浏览器端的数据处理就可以,大大节约了手机的性能,而且随着云时代的到来,很可能到时候PC端的数据也租用云服务器处理,处理速度特别快,满足了人们的许多需求。

并且web的开发大多以Javascript为主,这个上手容易,因为人们的需求多,而又容易上手,满足了市场需求,所我觉得未来web会越来越受欢迎,而且也是未来的主流,虽然现在微信小程序非常火,但是由于其只适用于Android用户,对于iOS并不是很适用,但是iOS用户也是不小的一部分消费群体,但是对于Web来说,不论什么系统都可以用,而且使用方便,开发不费事,满足所有需求,所以未来是Web的未来。

应用程序开发 WebApp NativeApp 微信小程序的更多相关文章

  1. 支付宝小程序开发之与微信小程序不同的地方

    前言: 本文仅汇总微信小程序移植支付宝小程序过程中遇到的一些不同的地方,详细请参考官方开发文档. 网络请求: 对于网络请求,基本上改动不大,也就支付宝小程序没有responseType属性及响应码字段 ...

  2. 小程序开发-iView Weapp微信小程序UI组件库入门使用

    iView Weapp UI组件库 今天来试试iView Weapp 这个微信小程序组件库,看看好不好用~~ 官网地址: http://inmap.talkingdata.com/wx/index_p ...

  3. 微信答题小程序 微信小程序 答题 demo 头脑王者这样的答题小程序开发 答题的微信小程序开发经验 微信答题比赛小程序

    最近随着王思聪的我撒币,我快乐,直播答题非常火.同时知乎的答题小程序头脑王者也非常火爆.大家在微信和微信群里玩的不亦乐乎. 好吧,快乐总是属于你们,我却只能埋头写代码... 公司要求赶紧开发一个这样的 ...

  4. 【小程序开发总结】微信小程序开发常用技术方法总结

    1.获取input的值 <input bindinput="bindKeyInput" placeholder="输入同步到view中"/>   b ...

  5. 微信小程序开发公测,小程序账号申请办法攻略

    11月3号晚上 10 点,微信公众平台发布公告,宣布微信小程序正式开放公测.此次小程序公测允许开发者将产品提交至微信公众平台审核,但是暂时不支持发布,也就是说普通消费者若想体验小程序,还需要等待一段时 ...

  6. 移动开发之【微信小程序】的原理与权限问题以及相关的简易教程

    这几天圈子里到处都在传播着这样一个东西,微信公众平台提供了一种新的开放能力,开发者可以快速开发一个小程序,取名曰:微信公众平台-小程序 据说取代移动开发安卓和苹果,那这个东东究竟是干吗用的?但很多人觉 ...

  7. 微信小程序的开发:通过微信小程序看前端

    前言 2016年9月22日凌晨,微信官方通过"微信公开课"公众号发布了关于微信小程序(微信应用号)的内测通知.整个朋友圈瞬间便像炸开了锅似的,各种揣测.介绍性文章在一夜里诞生.而真 ...

  8. 零基础开发一款微信小程序商城

    零基础开发一款微信小程序商城 一个朋友问我能不能帮忙做个商城?我一个完整网页都写不出的 菜鸟程序员,我该怎么拒绝呢?好吧,看在小程序这么火的形势下,我还是答应了!找了个开源项目,差不多花了三天时间搞定 ...

  9. 微信小程序开发教程 #043 - 在小程序开发中使用 npm

    本文介绍了如何在微信小程序开发中使用 npm 中包的功能,大大提高微信小程序的开发效率,同时也是微信小程序系列教程的视频版更新. 微信小程序在发布之初没有对 npm 的支持功能,这也是目前很多前端开发 ...

随机推荐

  1. Hadoop、Hive【LZO压缩配置和使用】

    目录 一.编译 二.相关配置 三.为LZO文件创建索引 四.Hive为LZO文件建立索引 1.hive创建的lzo压缩的分区表 2.给.lzo压缩文件建立索引index 3.读取Lzo文件的注意事项( ...

  2. 零基础学习java------39---------json格式交互,Restful(不懂),静态资源映射,SSM整合(ssm整合思想,application.xml文件详解(声明式事务管理),)

    一. json格式交互(知道) 1 . 回顾ajax基本语法 $.ajax({ url:"", // 请求的后台路径 data:{"":"" ...

  3. deque、queue和stack深度探索(下)

    deque如何模拟连续空间?通过源码可以看到这个模型就是通过迭代器来完成. 迭代器通过重载操作符+,-,++,--,*和->来实现deque连续的假象,如上图中的 finish-start ,它 ...

  4. Oracle LOB类型

    一.Oracle中的varchar2类型1.我们在Oracle数据库存储的字符数据一般是用VARCHAR2.VARCHAR2既分PL/SQL Data Types中的变量类型,也分Oracle Dat ...

  5. Oracle中建表及表操作

    一.创建表 Oracle中的建表语句:create table 表名( 字段名1 数据类型 列属性,字段名2 数据类型 列属性,...... ) 如:创建表OA_DM.DM_GY_USER https ...

  6. GO瞬间并发数控制

    var wg2 sync.WaitGroup wg2.Add(nums) xc :=0 parallelNum := plt.MaxParallel var waitCount int32 = 0 f ...

  7. Gitlab安装操作说明书

    一.Gitlab安装操作步骤 登录官方网站https://about.gitlab.com/downloads/根据你所需要的系统版本,作者使用的是centos6, 检查您的服务器是否符合硬件要求.g ...

  8. Linux后台启动服务

    systemctl 启动/关闭/启用/禁用服务 总结 启动服务 systemctl start test.service 关闭服务 systemctl stop test.service 重启服务 s ...

  9. Maven的聚合工程(多模块工程)

    在开发2个以上模块的时候,每个模块都是一个 Maven Project.比如搜索平台,学习平台,考试平台.开发的时候可以自己管自己独立编译,测试,运行.但如果想要将他们整合起来,我们就需要一个聚合工程 ...

  10. 11.Vue.js-事件处理器

    事件监听可以使用 v-on 指令: <div id="app"> <button v-on:click="counter += 1">增 ...