webapp和混合app(app与web模式有何区别与联系)

  近几年前端领域不断地涌现出新的技术,旧的技术也不断地进行更新换代。随着技术的不断进步,前端开发涉及的领域,也变得越来越广,接下来跟小编一起来了解一下前端几个重要的领域吧。

  PC

  PC (Personal Computer) 即个人电脑。目前电脑端仍是前端一个主要的领域,主要分为面向大众的各类网站,如新闻媒体、社交、电商、论坛等和面向管理员的各种 CMS (内容管理系统)和其它的后台管理系统。

  其实早期并没有 "前端工程师" 的称号,那时候一般叫做 "网页设计师" 或 "美工"。记得最早接触到的网页设计软件是微软开发的 "Frontpage",后面才接触到 "网页三剑客" (Dreamweaver、Fireworks、Flash) 中的 Dreamweaver,直到现在的各种 IDE (集成开发环境),如 Sublime Text、WebStorm、Visual Studio Code 、Atom 等。

  对于前端工程师来说,开发 PC 端项目,最痛苦的事情莫过于解决浏览器兼容性问题,特别是 IE 浏览器不同版本的问题。值得高兴的是,针对现代浏览器不同特性的兼容问题,可以借助构建工具的插件来实现自动添加不同浏览器的特性前缀,比如 Post CSS 的 Autoprefixer 插件。

  接下来我们来看一下,PC 端第一个网页长啥样:

  Web App

  Web App 是指使用 Web 开发技术,实现的有较好用户体验的 Web 应用程序。它是运行在手机和桌面端浏览中,随着移动端网络速度的提升,Web App 为我们提供了很大的便利。此外近两年 Google 提出了一种新的 Web App 形态,即 PWA(渐进增强 Web APP) 。

  PWA 意图让 Web 在保留其本质(开放平台、易于访问、可索引)的同时, 在离线、交互、通知等方面达到类似 App 的用户体验。PWA 其具体技术包括 Service worker、 Web App Manifest、 Cache API、 Fetch API、 Push API、 Web Push Protocol、 Notification 等等。

  Web App 的主要优点:

开发成本低

内容更新快

升级无需通知用户,自动升级

能够跨多个平台和终端

  Web App 的主要缺点:

用户体验短期内还无法超越原生应用

离线工作的能力较弱

消息推送不够及时

无法获取系统级别的通知,提醒,动效等等

  WeChat

  WeChat (微信) 这个平台,拥有大量的用户群体,因此它也是我们前端开发另一个重要的领域。微信的公众号与订阅号为市场营销和自媒体从业者,打造了一个新的天地。我们以微信公众号为例,来分析一下微信公众号的主要作用:

信息推送

用户服务

用户互动

  此外除了公众号与订阅号外,微信又推出了微信小程序。微信小程序是一种全新的连接用户与服务的方式,它可以在微信内被便捷地获取和传播,同时具有出色的使用体验。

  微信小程序的主要优势:

不用安装,即开即用

相比于 App 开发来说,小程序开发成本更低

UI 和操作流程比较统一,降低用户的使用难度

基于微信平台,推广更容易、更简单

  Hybrid App

  Hybrid App (混合应用) 是指介于 Web App、原生 App (主要是 Android 或 iOS )之间的 App,它兼具原生 App 良好用户交互体验的优势和 Web App 跨平台开发的优势。

  混合应用功能按网页语言与程序语言的混合,通常分为三种类型:多View混合型,单View混合型,Web主体型。最早的混合应用开发技术,是基于 Phonegap/Cordova 技术。Cordova 为开发者提供了一组设备相关的 API,通过这组 API,移动应用能够以 Java 访问原生的设备功能,如摄像头、麦克风等。

  目前主流的混合应用开发框架有:React Native、Onsen UI、Ionic、Framework 7、Native 和 Weex 等。这里就不详细展开,对各个框架进行详细对比和分析,有兴趣的读者可以自行查阅一下相关资料。接下来我们来了解一下混合应用的优缺点。

  混合应用的主要优点:

webapp和混合app(app与web模式有何区别与联系)

开发成本低

节省跨平台的时间和成本

可以访问硬件设备的功能

可以打包成 App,发布到 App Store 或各大安卓应用平台

  混合应用的主要缺点:

用户体验不如原生 App

应用性能也不如原生 App

技术还未成熟

  Game

  HTML5 游戏从 2014 年 Egret 引擎开发的神经猫引爆朋友圈之后,就开始一发不可收拾。不过现在游戏开发变得越来越复杂,需要制作各种炫丽炫丽的效果,还要制作各炫丽于 2D 或者 3D 的场景。为了降低游戏的开发难度,加快游戏的开发进度,国内外不同厂商推出了众多游戏开发引擎。

  HTML 5 主要的开源游戏引擎:

phaser

pixi.js

Babylon.js

whs.js

egret

cocos2d-html5

  Desktop

  桌面应用软件,就是我们日常生活中电脑中安装的各类软件。早期要开发桌面应用程序,就需要有专门的语言 UI (界面) 库支持,如 C++ 中的 Qt 库、MFC 库,Java 的 Swing、Python 的 PyQT 等,否则语言是没办法进行快速界面开发。

  随着 Web 技术的不断发展,目前借助 NW.js、Electron 等开发框架,前端也可以开发桌面应用了。其中口碑不错的开源 IDE - Visual Studio Code 就是使用 Electron 开发的。使用 Web 技术,主要的优势是它的跨平台能力和开发效率。但也有它对应的缺点,就是运行效率不如使用专门语言开发的桌面应用。

  Server

  Node.js 一发布,立刻在前端工程师中引起了轩然大波,前端工程师们几乎立刻对这一项技术表露出了相当大的热情和期待。看到 Node.js 这个名字,初学者可能会误以为这是一个 Java 应用,事实上,Node.js 采用 C++ 语言编写而成,是一个 Java 的运行环境。

  Node.js 让 Java 能够运行在服务端,这个想法简直太棒了。 这使得前端开发人员不用再去学服务端开发语言,如 PHP、Java、Ruby 和 C# 等,也可以进入服务端的开发领域。当然学习的过程可能对于大多数纯前端开发人员来说,会比较痛苦和漫长。

  Node.js 主要的 Web 开发框架:

Express

Koa

Egg

Nodal

Sails

Loopback

  当然前端涉及的领域,还不止这些。较新的领域还有,数据可视化、IOT (物联网)、机器学习等。网上也有大神专门整理了前端开发人员的技能图谱,有兴趣的读者可以参考一下,但一定要做好心理准备,不要被吓到哦。里面介绍的是综合的技能,对于初学者的话,只要先学 HTML/HTML5、CSS/CSS3 和 Java 的基础知识,等入门后在参考技能图谱,好好规划一下学习或进阶线路哟。

  最后,小编想说的是,写这篇文章的目的不是为了炫耀前端开发有多牛逼,只是想作为有意向入行前端或刚入门前端人员的参考资料。俗话说得好,术业有专攻,希望新时代的前端开发者,能先专攻某个领域,然后再扩展其它领域,即先有深度再有广度。

  鲤鱼IT工程师软件培训中心,是许昌地区最大最专业的IT培训机构,立志于为许昌当地的IT爱好者和想要从事IT行业的社会人员提供科学系统的IT技能培训。并提供一线互联网企业的就业岗位。帮助学员找到一份高薪、体面、稳定的工作。

  目前开设的课程有:PHP课程、WEB前端课程、JAVA课程。 鲤鱼IT工程师培训中心成立以来,以IT技能培训和人才输送对接为核心,致力于打造互联网高端人才一站式服务。与国内百家互联网用人企业达成长期人才战略合作,为整个互联网、IT行业输送互联网高级技术人才超过1000人,全部就业。

  公司承诺:100%学会,学不会免费重新学,学会为止,100%就业,不就业免费重新学,就业为止

  官网:www.liyuit.com

  地址:许昌市八一东路许昌学院创新创业学院2楼

1、本网站名称:源码村资源网
2、本站永久网址:https://www.yuanmacun.com
3、本网站的文章部分内容可能来源于网络,仅供大家学习与参考,如有侵权,请联系站长进行删除处理。
4、本站一切资源不代表本站立场,并不代表本站赞同其观点和对其真实性负责。
5、本站一律禁止以任何方式发布或转载任何违法的相关信息,访客发现请向站长举报
6、本站资源大多存储在云盘,如发现链接失效,请联系我们我们会第一时间更新。
源码村资源网 » webapp和混合app(app与web模式有何区别与联系)

1 评论

您需要 登录账户 后才能发表评论

发表评论

欢迎 访客 发表评论