The mobile technology has become more and more mature, and it has evolved from a ridiculous situation in 2012 to now. For the Chinese engineers, we are more concerned about such a few points, hotfix, performance, development efficiency, App size and data-driven products. These aspects have already had very good solutions at present, but also emerged some excellent framework like RxJava, CanaryLeak. This topic is very big, and also out of this book scope.

By the immense prosperity of App technology, I recall my first job in 2004, the IT industry was transitioning from CS to BS. CS is a Client/Server architecture. For example, if you install a client of Lianzhong game center on Windows system, you can get the client of Texas Hold'em poker. After the technology of the Internet grew up, you start to move the original system into the website. This is BS, the full name is Browser/Server architecture.

To compare with CS, BS was a thin client, many features were not supported by BS. It came up with the concept of a SmartClient, which is a smart client. Outlook is a good sample. You can read and write E-mail offline without network, when the network is available, it send a written e-mail automatically.

Then, Flash was become hot. This was a tool for three webmasters originally, but it became the originator of the web-rich client. Based on Flash, there will be Flex, and now some companies are adopted Flex. At this time, Microsoft also came in and created a Silverlight, which is also similar to Flash on the web. At the same time, JavaScript is also working hard and gradually replacing the former and becoming the final winner of the rich client. A book was very popular at that time, it is called "JavaScript Design Patterns."

JavaScript was only used to do web visual effects in 2004. Ten years later, JavaScript has experienced with ajax, jQuery, ECMAScript from 1 to 6, Webpack packaging, and so on. The frameworks of Angular, React, Vue have become extremely powerful and have been packaged due to javascript as a "object-oriented" language.

Compared with web technology, the App is also taking the same development path. First, it mute for a few years. Many of the technologies on the website are moved to the App, just like what we do today. The next stage is the transition from CS to BS. The Hybird technology is the above-mentioned BS, but there are many defects, especially the bad performance of Web browser, then there are React Native, HTML 5 is also slow, but you can translate HTML 5 into Native code . It is not clear for me to make such kind of progress, but the future is very clear. Android and iOS technology will not die; on the other hand, HTML 5 will become the main method of App development in following years.

1.9 From Native to HTML5的更多相关文章

  1. 基于webview的Hybrid app和React Native及html5

    基于webview的Hybrid app和React Native及html5 React Native 结合了 Web 应用和 Native 应用的优势,可以使用 JavaScript 来开发 iO ...

  2. 实时视频直播客户端技术盘点:Native、HTML5、WebRTC、微信小程序

    1.前言 2017 年 12 月,微信小程序向开发者开放了实时音视频能力,给业内带来广阔的想象空间.连麦互动视频直播技术在 2016 年直播风口中成为视频直播的标配,然而只有在原生的 APP 上才能保 ...

  3. native和html5的通信方案

    一.jsbridge 重写WebView中WebChromeClient类的onJsPrompt()方法 二.url里面带参数 三.在js里面写全局函数,在native中调用

  4. HTML5 game engines

    The following are few examples of game engines implemented with HTML5 and JavaScript: Construct 2: O ...

  5. [Mugeda HTML5技术教程之1] HTML5: 生存还是毁灭

    [Mugeda HTML5技术教程] 开篇: HTML5 - 生存,还是毁灭 摘要:HTML5并不试图解决所有问题.但是在很多适合的场合,HTML5是不二选择. To be, or not to be ...

  6. QQ空间玩吧HTML5游戏引擎使用比例分析

    GameLook报道/“Cocos 2015开发者大会(春季)”于4月2日在国家会议中心圆满落下帷幕.在会上全新的3D编辑器,Cocos Runtime等产品重磅公布,给业界带来了Cocos这款国产引 ...

  7. 【grunt整合版】30分钟学会使用grunt打包前端代码

    grunt 是一套前端自动化工具,一个基于nodeJs的命令行工具,一般用于:① 压缩文件② 合并文件③ 简单语法检查 对于其他用法,我还不太清楚,我们这里简单介绍下grunt的压缩.合并文件,初学, ...

  8. 【grunt第三弹】grunt在前端实际项目中的应用

    前言 [grunt第二弹]30分钟学会使用grunt打包前端代码(02) [grunt第一弹]30分钟学会使用grunt打包前端代码 经过前两次的学习,我们了解了grunt打包的一些基础知识,对于压缩 ...

  9. 去它的h5,我还是用js写原生跨平台app吧

    智能手机功能越来越强大,已经在逐渐替代电脑的作用.百度.腾讯.阿里的移动端日活数也在逐步的赶上甚至超越电脑端用户.叫喊着“mobile first”的公司越来越多,App开发者应运而生,且队伍日趋庞大 ...

随机推荐

  1. SP283 NAPTIME - Naptime

    SP283 NAPTIME - Naptime 题意: 在某个星球上,一天由N小时构成.我们称0-1点为第一个小时,1-2点为第二个小时,以此类推.在第i个小时睡觉能恢复Ui点体力.在这座星球上住着一 ...

  2. 2141:2333(zznuoj)

    2141: 2333 时间限制: 1 Sec  内存限制: 128 MB提交: 77  解决: 17[提交] [状态] [讨论版] [命题人:admin] 题目描述 “别人总说我瓜,其实我一点也不瓜, ...

  3. javascript封装函数入门

    封装函数的入门 一.使用函数有两步: 1.定义函数,又叫声明函数, 封装函数. 定义函数的三个要素:功能,参数,返回值. function 函数名(形参){ 函数代码 return 结果} //2.调 ...

  4. Justoj 2388最短区间 贪心

    2388: 最短区间 Time Limit: 1 s      Memory Limit: 128 MB Submit My Status Problem Description 有M种不同颜色的气球 ...

  5. redis安装使用

    Redis是一个开源的使用ANSI C语言编写.遵守BSD协议.支持网络.可基于内存亦可持久化的日志型.Key-Value数据库,并提供多种语言的API. 它通常被称为数据结构服务器,因为值(valu ...

  6. [原创]大数据:布隆过滤器C#版简单实现。

    public class BloomFilter { public BitArray _BloomArray; public Int64 BloomArryLength { get; } public ...

  7. JMeter中添加dubbo相关插件异常问题解决

    从网上下载了一个dubbo的插件,然后放到JMeter的/lib/ext目录下: 然后启动直接异常 发现启动不了,然后下载了一个全新的JMeter3.2将dubbo插件放到同样的目录,启动,没有问题: ...

  8. 机器学习之--kmeans聚类简单算法实例

    import numpy as np import sklearn.datasets #加载原数据 import matplotlib.pyplot as plt import random #点到各 ...

  9. linux 启动springboot项目

    1.启动 nohup java -jar train-manager.jar --spring.profiles.active=test > out.log & 2.查看进程 ps -e ...

  10. vue获取当前对象

    <li v-for="img in willLoadImg" @click="selectImg($event)"> <img class=& ...