1. 将来webapp会取代原生app吗
不管是web app还是原生app,都有其适用场景。
比如,现在我们APP的下一个版本,需要做一个新的频道,这个频道现在就是在用web app来开发,成本低,开发快,升级容易,这些都是web app的优势。
其实我们的公司的APP现在就是web app 和 原生app混用(hybird app)的形式!不单是上面说的新功能。。
而原生APP的优势也很明显,可以方便地访问手机各种传感器各种设备,体验相对web app来说也会好很多。
2. WEBAPP的发展趋势是怎么样的
回答这个问题,我们可以先看一下web app具备有怎样的优势。
对于普通用户来说,Web App最大的方便之处在于免去了频繁更新的麻烦。但这不意味着Web App是一成不变从不更新的,它只是将更新的工作从前端移到了后端,由应用开发者在后台更新,推送到用户面前的都是全新的版本。这就好比网站改版,用户无需操作,但获取的都是最新的体验。事实上,Web App能够免去更新的麻烦,完全是因为它根本就无需安装。Web App的运行环境就是寄生于浏览器之中,而浏览器是唯一的事实上在所有手机上安装的运行环境,和任何私有生态环境无关。这就牵引出了Web App的又一个优势——跨平台的高兼容性。Web App的多平台兼容性使开发者仅需要研发一款适用于浏览器应用的产品即可满足不同操作系统的使用需求,开发成本与难度大大降低。
然后,我们再看看web app又面临怎样的困境。
由于Web App的开发几乎完全构建在Webview的基础之上,因此在Webview上对事件的处理以及响应的能力就直接决定了用户的体验,Web Apps的性能问题将是其最大的阻碍。就目前的情形来看,Web App在用户体验上还是不能达到Native App的高度。单从流量上来看,同一款应用上Web App就要比Native Apps消耗更多的流量,这对用户来说是很直观也是很现实的问题。另外,Web App对于网络的依赖性在一定程度上制约了它的发展,移动Web App对带宽等基础设施要求很高,但短期多数用户仍难以摆脱低网速。既然Web App对于网络有如此强的依赖性,那么离线问题就不得不被提上桌面。现在的情况是,Web App一旦脱离网络就完全处于废弃的状态,根本无法工作,这对用户来说是很难接受的情况。除此之外,由于没有一个相对明确的开发平台,Web App的开发更多的是处于一种分散的状态,开发者也是在黑暗中摸索。
我们了解完Web App自身具备的优势和将要面临的一系列问题,那现在可以说一下未来的发展趋势。
目前,以UC浏览器为平台的一批Web App已经开始出现,UC优视总裁俞永福也表示将极力发展自身平台,为Web App开发者提供一个稳定开放的平台。在不久前结束的2012全球移动互联网大会上,网络副总裁王劲表示,Web App正处在一个良好的孕育环境中,促进Web App发展的四个条件正在形成。Html 5技术的发展、产业链对Html 5的普遍接受、带宽环境的提升以及云计算的推出,将从根本上改变Web App的接受程度。而到2014年,Web App将进入一个井喷期。作为中国最重要的搜索引擎,网络在框计算、个人首页基础上持续发力Web App,多次举办各类大会对开发者进行步道,鼓励开发者将应用Web化,希望通过搭建开发平台加强搜索作为入口的优势。Web App目前正在曲折中前进,在开发平台的逐步完善、产业链的认同和开发者的努力下,一定会拥有一个美好的未来。就如UC优视总裁俞永福所预言,未来Web App将代替Native App成为主流的APP平台,但是未来两年的发展中,客户端将和Web App共同发展、共同成长。
3. 原生app比webapp有什么优势
原生的功能性更细吧,就是调用设备的一些驱动如摄像机,感光等等,webapp都是通过第三方去调用的,要等三方出来了才行。
4. Web App 和 Native App,哪个是趋势
webapp是趋势,因为webapp的“性工能”障碍已经解决,现在nativescript,reactnative,native.js都给js提供了API,让你可以用JS调用HTML5的增强功能及手机OS的API,说白了,现在的JS已走出浏览器,做以前只有原生可以做的事了,原生的优势已荡然无存,而webapp的优势突显出来,什么跨平台啊,跨设备,跨尺寸,即时更新,流量入口等等,这些全是webapp的优势。附带说一下Javascript,这门早期的蹩脚语言,未来有一统江湖的趋势,以前js只局限在浏览器内使用,node.js把js带到了服务器端开发,nw.js把js带到了桌面端开发,espruino,tessel把js带到了嵌入式和物联网开发,reactnative把js带到了移动端开发,而web前端更是有jquery,bootstrap等一大堆优秀js框架供使用………………总之,js热火朝天,有可以进行全栈开发的趋势,有一统江湖的趋势。然而,此时天上却出现一朵乌云:webassembly,大佬门总是不希望世界安稳,因为你们安稳了他们就无利可图,所以总是不停的制定各种分裂、碎片化、不兼容、新产品…………,让大家疲于奔命疲于学习跟进,八大金刚在山顶笑…………
5. 手机webapp目前主流开发技术是什么
App开发公司【商侣软件】认为,目前手机webapp主流的开发技术是HTML5语言,这一技术语言支持直接在网页上进行调试和修改,所以广受手机App开发者的青睐,并且html5开发技术还具备众多优势,让更多的开发者喜欢用这种技术来开发webApp应用软件。
6. 前端开发时遇到过什么坑尤其是webapp开发时
过去,应用开发需要注重大量的专业知识,程序员只需关注单一的语言(比如COBOL、RPG、C++等),并利用该语言创建应用。Web不再是单单关注独立的一面。相反,一个现代化的Web应用开发者应该是“样样精通”。他们不仅要理解开发方面还要明白Web应用安全漏洞问题,了解如何与其他设备集成在一起等等。往深了说,他们还需要了解这些应用程序是如何运行在平板电脑和智能手机上的。
换句话说,Web应用开发正变得更加复杂化。它迫切需要一个不断增加以及不断发展的配套技能。
掌握六大技能后,估计Web应用开发时候就会避免一些坑。
1. 安全
过去,企业在内部安装应用,基于防火墙背后的应用无法与第三方服务或应用进行通信。而随着软件的发展,现代Web应用能够与其他设备进行集成,并存储在云服务器上或者访问多种类型设备。因此,安全问题显得尤为重要。
“作为一名应用开发者(web/desktop),深入理解应用程序的安全性是最为重要的技能之一。”Veracode首席安全顾问Stephen Jensen说道,“在当今世界,有关安全问题的新闻不绝于耳,大多数是揭露数以百万计的人们的敏感信息。因此,Web应用开发者必须知道如何预防常见的漏洞,比如Cross-Site Scripting (XSS),SQL注入等。为了确保应用在创建过程中免受安全问题的恶意攻击,同时也为了保护用户潜在的敏感信息问题,这也是所有开发者应当学习的必备基础技能。”
2. 用户体验(UX)设计
“随着移动设备用户需求量的不断增加,开发者需要充分理解用户体验设计显得愈发重要。”Raster Media CEO Michael Smith说,“设计团队单独负责某款应用的用户体验的日子已经一去不复返了。开发者必须考虑互动、动画、速度以及各个APP之间的通信等问题。”
我完全赞同这一观点。用户体验设计有几大重要因素,首先,用户的期望有所上升。用户下载一款新的应用,他们想立即知道它是如何运行的。他们希望从业务应用中获取相同的体验。其次,用户有选择的余地。如果不喜欢这款应用,他们会寻找另一款代替。由于用户的期望值增加以及竞争的加剧,更为直观的界面需求比以往显得更加重要。
3. 自适应/响应式设计
谈及UX设计,Web App开发者必须建立可随处运行的应用程序。现在的问题不再是“用户如何与我的应用进行交互?”而是演变成“用户与我的应用如何在每款设备类型上进行交互?”
想要做到这一点并不容易。你必须回答以下这些问题:“智能手机上的按钮设置在哪里?你如何在小屏幕上格式化数据表?当设备从人像模式切换至风景模式会发生什么?”总之,Web开发者必须知道让Web应用适应不同屏幕大小的方法。
针对跨平台/设备,响应式设计和自适应设计主要两大方法:
响应式设计使用流体网格以及CSS3媒体查询来适应各种屏幕大小/类型上的应用。你可以通过Web找到各种响应式设计案例。例如TheNextWeb就是个典型的案例。你会发现,当你调整浏览器大小时,该网站会自动适应新的尺寸。
自适应设计根据不同的设备提供不同的HTML页面。比如,一款独立的Web应用可能需要3个独立的表示层(HTML):一个是PC端,一个是平板电脑,另一个则是智能手机。例如,在不同的设备上访问Web App,外观和行为显示的均各不相同。
那么哪一种方法最好呢?我想说它们有各有各的优势。响应式方法对于Web网页设计以及Web应用信息来说是个不错的选择;而自适应方法可更好的适用于数据驱动Web应用,尤其是包含那些数据表的应用。为什么?这是因为它让开发者能够更好的控制数据结构和样式,而不是试图去适应多种屏幕尺寸上的单个表格,自适应设计方法可让你为每款设备创建不同的表单。
4. JavaScript
开发者总会为他们选择的编程语言而争论。你无法说服一个Java程序员称赞PHP是最好的,反之亦如此,就像你也无法说服一个PHP程序员赞同Java是最好的,但在Web应用中开发者大多数会选择使用JavaScript。
“随着移动和Web桌面应用的发展,JavaScript已快速成为最为重要的计算机语言。” Coordinato创始人Ben Bakhshi表示,“不少业内人士认为利用JavaScript编码将在未来10年内显着增加。”
5. Web应用架构
在Web开发上,应用架构变得比以往更加重要。应用体系架构直接影响到应用可扩展性、灵活性,以及集成其他Web服务和应用的能力。如果开发者想要创建一款有用的、可持续性的应用,那么理应深刻掌握Web应用架构知识。
“Web应用开发者应该充分关注Web应用架构”,MRC软件开发经理Tyler Wassell说,“开发者应该了解,所开发的应用程序如何与所有系统组件进行交互,以及底层架构将如何影响诸如可移植性、可维护性、可用性等性能情况。”
6. API集成
现如今,API已发展成为Web开发一个重要的方面。从本质来讲,API让不同的Web服务之间相互通信。开发者可以通过其他应用/服务上调用数据创建应用。
SimpleCollegeRecipes网站创始人兼CEO Brendan O’Connor认为,“API集成已成为现在Web应用开发者必备的技能。API允许你从其他网站上整合内容和信息。可以说,API使人人受益,包括终端用户,API供应商以及程序员自己。”
总结:
Web应用开发正在不断演变,Web开发所具备的技能也在不断更新变化中。开发者唯有不断进取、学习新的知识才能在开发行业中站住脚。当然,想要掌握每一种Web(移动Web)技能,几乎是不可能的,大部分公司无法为员工给予Web以及移动开发方面不同的解决方案,不可能做到面面俱到。
7. 如何区别一个 App 是 Native App,Web App 还是 Hybrid app
nativeapp是一个原生程序,一般运行在机器操作系统上,有很强的交互,一般静态资源都是在本地的。浏览使用方便,体验度高。在实现上要么使用Objecttive-c和cocoaTouch Framework撰写IOS程序,要么选择java+Android Framework撰写android应用程序。
hybridapp是一个半原生程序,伪造了一个浏览器的apk/ipa原生程序,把地址写死了,然后里面运行了一个webapp。里面是WebView UI 。但是还是运行在机器的操作系统上,交互较弱,资源一般在本地或者网络都可以。浏览体验度次之。
webapp是生存在浏览器里的应用,所以只能运行在浏览器里,宿主是浏览器,不再是操作系统。
8. WebAPP与Native APP到底有什么区别
1.什么是原生APP(Native App)
原生APP是用原生程式编写运行的一种第三方应用程序,它是基于移动设备(智能手机、平板电脑等)操作系统(如IOS、Andriod、WP)使用,用户通过应用市场或应用商店进行下载安装到自己的智能设备上。但是该开发针对IOS、Android等不同的手机操作系统要采用不同的语言和框架进行开发,工程量大。
2.什么是Web App
Web App能够为移动设备提供特定功能的Internet应用程序。该程序通常由“HTML5云网站+APP应用客户端”两部分构成,APP应用客户端只需安装应用的框架部分,而应用的数据则是每次打开APP的时候,通过移动设备的浏览器去访问,把云端取数据呈现给手机用户(类似淘宝、天猫、京东等)。
WebAPP与Native APP的区别:
(1)用户界面
一些公司选择开发原生APP和Web APP时,不清楚界面的区别。其实,原生APP和Web APP在外观和感觉上,两者之间没有什么区别。
(2)开发方面
原生APP。每一种移动系统都需要独立的开发语言,Java(Andriond)、Objective-C(ios)以及V计算量C++(Windows Mobile),并且需要各自的软件包,开发工具以及各自的控件。
Web APP。只需要一个开发项目,没有标准的SDK,还有一些跨平台的开发工具。
(3)对接范围
对于原生APP,能够与移动硬件设备的底层功能对接,比如个人信息,摄像头以及重力加速器等等
对于Web APP,只能使用有限的移动硬件设备功能。
(4)货币化变现途径
原生APP。开发人员设定收取下载价格,应用商店通常会处理支付过程(应用商店和开发者有一定的比例分成)
Web app。可以通过网站广告和订阅费来获益,同时要求开发者建立自己的付费墙或者自己建立订阅收费系统
(5)获取方法
对于原生APP。用户必须手动通过应用市场(如360应用市场等)或应用商店直接下载到移动智能设备,以独立的应用程序运行
对于Web APP。从移动智能设备上的浏览器就可以访问,无需下载安装额外的软件,而且软件更新只需要服务器就够了。
(6)版本控制
原生APP。用户可以自由地选择是否更新软件版本,所以会出现不同用户同时使用不同版本的情况
Web APP。所有用户都是用同样的版本
(7)优势
原生APP。因为原生APP有缓存,所以比移动Web App运行快一点,而且用户必须去卖场下载APP.
Web APP。跨平台开发,用户不需要去卖场来下载安装APP,因为不需要官方卖场的审核;可以频繁的更新;开发周期短。
(8)缺陷
原生APP
开发成本高,尤其是当需要多种移动设备来测试;
因为是不同的开发语言,所以开发,维护成本高;
因为用户使用的APP版本不同,所以你维护起来也很困难;
官方卖场审核流程复杂且慢,会严重影响你的发布进程;
开发周期长;
Web APP
无法使用很多移动硬件设备的独特功能
有网络就可以很快运行,没有网络将不能访问
要同时支持多种移动设备的浏览器,让开发维护成本也不低,但是相比原生APP的开发维护就低一点。
对于现在的企业,一般都会同时制作webapp和native app。商领云的saas+paas系统可以在线制作APP(ios和Android)、移动网站、小程序和微商城。
9. 为什么选择 Cordova webapp
过去这些年,HTML5颠覆了PC互联网的格局,优化了移动互联网的体验,接下来,HTML5将颠覆原生App世界。这听起来有点危言耸听,但若认真分析HTML5的发展史,你会发现,这个世界的发展趋势确实就是这样。
熟知历史才能预知未来,先让我们来看看HTML5为什么诞生、这8年是怎么过来的。
一、 HTML5的诞生
自W3C于1999年发布HTML4后,Web世界快速发展,一片繁荣。人们一度认为HTML标准不需要升级了。一些致力于发展Web App的公司另行成立了WHATWG组织,直到2007年,W3C从WHATWG接手相关工作,重新开始发展HTML5。
HTML5的发展史,有用户的需求在推动,有技术开发者的需求在推动,更有巨大的商业利益在推动。
在互联网的早期,对用户而言,能打开浏览器接入到互联网世界就是一个神奇的事情,但互联网发展到2005年前后,开始出现下一个变化,就是宽带互联。
随着宽带的普及和电脑性能的增强,人们不再满足于单纯的通过互联网看新闻、收发邮件,消耗更高带宽的娱乐产品开始出现,就是流视频和网页游戏。其实视频和游戏是古老的需求,在互联网不普及的时候,需求的满足方式是离线传输的VCD和游戏光盘;后来互联网逐渐普及,人们更改了使用方式,通过下载软件+本地媒体播放器来看视频,下载体积较大的端游玩游戏。
但是对消费者体验更好的新方式还是出现并颠覆了以前的一切,那就是流媒体和网页游戏。Youtube等公司把握住潮流飞速崛起,各种页游公司也如雨后春笋。
但是HTML标准没有把握住产业的变化及时演进,浏览器产品也未升级,这块新需求被浏览器插件满足了,那就是Flash。这个部署在亿万浏览器里的商业插件俨然成为事实标准。2005年Adobe巨资收购Macromedia,把Flash收归旗下,紧接着大幅推广FLV流媒体和action script语言,很明显这桩收购可以列为IT并购的经典案例,FLV流媒体和Flash游戏风靡互联网,Adobe在新的产业升级中攫取了大量的利润。
除了Flash这个商业产品成为了事实标准,W3C还面临一个尴尬,就是另一个私有扩展协议的制造者—IE。IE当时在桌面浏览器占有垄断地位,并且扩展了大量的IE Only语法,开发者完全不知道这些语言是谁定义的。整个web世界,就被两家公司微软+Adobe绑架了。
很多IT巨头都坐不住了,尤其是苹果和Google。PC操作系统的世界难有突破,Web浏览器被苹果寄予厚望,而且第一代iPhone只支持网页,那时还没有Appstore,Safari是乔布斯非常看重的产品;新贵Google虽然大量赞助Mozilla,但并未对IE的地位产生实质影响,收购了YouTube后发现底层被Adobe控制,也是非常难过,而且Google每年给IE的搜索框和Adoble FLV缴纳的费用真不是小数目。
既然大家都是W3C的主席单位,好吧,我们重新开始做HTML5吧。
是的,HTML5其实就是这么诞生的。那是2007年,IE和Flash由盛转衰的转折点。
二、 HTML5第一阶段: Web 增强与破垄断
自HTML5诞生以来,一共经历了两个阶段,分别是Web增强和移动互联网。我们先从Web 增强说起。
web体验的丰富增强主要表现在:1. webapp,比如gmail;2. 流媒体;3. 游戏。我们就这3个方面来讲HTML5做了什么。
1. webApp
HTML5新增了离线存储、更丰富的表单(比如Input type=date)、js线程、socket王乐、标准扩展embed、以及很多css3新语法…
2. 流媒体
HTML5新增了audio、video
3. 游戏
HTML5新增了canvas、webgl
当然还有Google努力在HTML5中推进Header和Section等标签,以利于搜索引擎分析,这些不多述。
HTML5补充流媒体和游戏能力后,加上苹果强势拒绝在iOS上引入Flash,成功的遏制了Flash的发展,然后就该遏制IE私有语法了。
在HTML5标准的升级过程中,苹果和Google同时也看到了浏览器市场重新洗牌的机会,他们一方面参与HTML5的规范,一边在浏览器产品上发力。Apple首先开始大力发展Safari,建立WebKit开源项目,Mac、iOS、Windows多平台齐发力;Google起初是赞助Mozilla开发Firefox,后来自己开发了v8引擎,合并WebKit,于2008年正式推出Chrome。“IE的私有规范+Flash不是标准,我们才是标准”这样的口号在新一代浏览器大战中打响,IE瞬间成为千夫所指的垄断代表,甚至成了阻碍Web发展的罪人(当时IE6已数年未更新,并且丝毫不惧Firefox的发展)。
偏偏微软此时也出了晕招,推出了一系列即不完整支持规范又互相不兼容的IE7、8、9、10,彻底失去了开发者的心。
Adobe的Flash被遏制,与Web霸主的位子擦肩而过;IE的私有标准被遏制,并且造成IE市场份额不停下滑,直到IE最新的移动版本反过来开始支持WebKit私有语法,真是令人唏嘘。不知道HTML6是不是该打倒WebKit垄断了。
三、 HTML5第二阶段: 移动互联网
随着Chrome和Safari的高歌猛进,以及IE+Flash的衰落,HTML5告一段落,进入了下一个时代——移动互联网。HTML5的跨平台优势在移动互联网时代被进一步凸显。HTML5是唯一一个通吃PC、Mac、iPhone、iPad、Android、Windows Phone等主流平台的跨平台语言。Java和Flash都曾梦想这个位置,但梦断于iOS。此时人们纷纷开始研究基于HTML5开发跨平台手机应用。很多人当时认为,原生应用只是过渡,就像当年从C/S结构转变为B/S结构一样。而且学习Objective-C和Java很费劲,我既然会网页开发,为何不试试HTML5。
W3C此时成立了Device API工作组,为HTML5扩展了Camera、GPS等手机特有的API,然而麻烦的是,移动互联网初期的迭代太快了,手机OS在不停的扩展硬件API,陀螺仪、距离感应器、气压计。。。每年手机OS都有大版本更新。而W3C作为一个数百家会员单位共同决策的组织,从标准草案的提出到达成一致是非常复杂的过程,跟不上移动互联网初期的快速迭代。
PhoneGap的出现,给开发者打开了一扇窗。很多人期待PhoneGap不停扩展API,来补充浏览器的不足。Adobe看到PhoneGap仿佛看到了重振江湖地位的希望,但在Adobe收购PhoneGap后,又发现这个东西可商用性不足,而且开源使得Adobe无法像Flash那样获取商业利益,于是就把PhoneGap捐给了Apache,改名为Cordova。
因为各种原因,Cordova的定位最终没有成为浏览器的强化,而走向了混合式开发。基于当时的背景,他们认为原生是不可替代的,“原生+HTML5”的混合模式更有意义。所以现在Cordova的使用模型是“原生工程师+HTML5工程师”一起协作完成App。
这时Facebook加入了W3C,牵头成立了Mobile Web工作组。Facebook是混Web圈的,并且在手机OS上没有自己的领地,他不喜欢被苹果和Google掌控的原生应用生态系统。Mobile Web这个工作组的重要目标就是让HTML5开发的网页应用达到原生应用的体验。然而,事与愿违,它不努力也就算了,结果是努力了却失败了。2012年,Facebook放弃了HTML5的新闻充斥了全世界的IT媒体,HTML5瞬间被打入冷宫。
Facebook为何放弃HTML5?核心是当时基于HTML5真的做不出好的移动App。对比Twritter等竞争对手的原生App,Facebook的HTML5版本实在无法让用户满意。比如Push功能,到现在HTML5的推送和原生的推送体验差距依然巨大,更不用说HTML5应用的页面切换白屏、下拉刷新/侧滑菜单不流畅等众多问题。看着原生工程师轻松实现摇一摇、二维码、语音输入、分享到朋友圈等功能,更是让HTML5工程师感觉自己站错了队。
即使Facebook不喜欢被控制,也不能拿被用户抛弃来冒险。而且Facebook并没有掌握关键点—手机浏览器内核。如果浏览器不跟上,徒然定一堆标准草案落不了地。
而浏览器在手机上的表现是什么呢?先看Google,Chrome性能虽高,但Android上的浏览器却并非Chrome,而是WebKit改出来的一个蹩脚的Android浏览器;再看苹果,iOS上不允许其他浏览器引擎上架App Store,而且其他使用Safari引擎的应用也无法调用苹果自己的JavaScript加速引擎Nitro。结果是苹果和Google不但不在浏览器上积极实现HTML5关于移动App所需的规范,反而对HTML5做出种种限制。
不管是当时硬件能力不足,还是手机OS厂商的故意限制,总之结果就是:在移动互联网的初期,一定是原生应用生态系统的天下,iOS和Android首先自己的地盘稳固后,产业才会向下个阶段升级。
Facebook也好,PhoneGap也好,想在移动互联网初期就分一杯羹是分不到的,但坚持下来,机会往往会出现。
10. outlookwebapp相比于outlook端的优势在哪
Outlook web app相比端来讲不挑设备,只要能浏览WEB界面都可以使用OUTLOOK WEB APP,但端需要特定系统支持。