1、App 设计与 web 设计的主要区别是什么
从使用场景上,Web App用户面临比原生APP用户更严峻的问题:
1、页面跳转更加费力,不稳定感更强
思考点:如何减少跳转(扁平结构、页面布局技巧),增加数据及展示的流畅流程及稳定性(技术)。
2、更小的页面空间(由于浏览器的导航本身占用一部分屏幕空间),更大的信息记忆负担;
移动设备的屏幕要小得多。这种如同透过门缝进行的阅读增加了认知的负担。人脑的短期记忆是不稳定的,用户在滚动屏幕的过程中需要临时记忆的信息越多,他们的表现就会越差。——《贴心设计:打造高可用性的移动产品》
思考点:排版更清晰、信息更简练 (可在原生APP基础上去掉一些丰富、复杂的视觉表现)
3、导航不明显,原有底部导航消失,有效的导航遇到挑战
思考点:如何有效的提供导航?有哪些形式?
4、交互动态效果收到限制,影响一些页面场景、逻辑的理解。
思考点:比如登录注册流程的弹出、完成及异常退出,做好文字提示。
区别:APP属于手机应用客户端,移动网站可以制作成APP,APP也可以呈现手机网站。
相同点:二者都属于手机系列 区别在于:APP可以安装到手机上,而移动网站只能通这用户打开网址才能打开了解信息。如果移动网站设计成app,则二者兼合。
2、html5和原生APP开发的区别
问题,主要聚集在以下几个方面:
1、动画
动画有很多种,比如侧边栏菜单的滑入滑出、元素的响应动画、页面切换之间的过场等等,在H5之下的众多实现方法都没有办法达到纯原生的性能。一般这些的话有几种不同的选择:css3动画、javascript动画、原生动画。
css3动画非常的消耗性能,如果某一个元素用到css3动画可能还看不出来,但大面积或过场使用css3动画会让app低端手机体验非常差。最好的选择一般是通过框架调用底层的动画,但不管怎么样等于在原来的代码上包上了一层,性能还是不可避免的受到影响。
比如在一个新页面的载入上,如果调用底层动画要考虑的问题有两个,一个是本身资源页面的渲染问题,另一个是远程数据的获取。即便是这些动画能够很快的响应,但大量的css页面会导致渲染卡顿,滑入时可能会有白屏/机器卡顿的现象。为了解决这些性能问题又必须要用到预加载或模拟动画。即便是这样,滑入滑出的动画在低端的安卓机器上还是有很多问题,如果获取服务端数据处理的方式不合适,卡顿白屏的现象会更严重。具体看下面的数据获取方式。
2、获取服务端数据
3、原生app和web app的区别
原生app和web app的区别为:来源不同、开发成本不同、流畅度相对不同。
一、来源不同
1、原生app:原生app是与移动设备所安装的操作系统所使用的同一种编程语言开发的APP。
2、web app:web app是由html5所做的网站通过一些打包平台或者使用工具打包而成的软件。
二、开发成本不同
1、原生app:原生app开发成本高,需要使用单独的开发工具进行开发。
2、web app:web app开发成本低,不需要使用单独的开发工具进行开发。
三、流畅度相对不同
1、原生app:原生app完美适配移动设备,流畅度相对较高。
2、web app:web app兼容适配移动设备,流畅度相对较低。
4、web app与原生app有哪些交互设计区别
从使用场景上,Web App用户面临比原生APP用户更严峻的问题:
1、页面跳转更加费力,不稳定感更强
思考点:如何减少跳转(扁平结构、页面布局技巧),增加数据及展示的流畅流程及稳定性(技术)
2、更小的页面空间(由于浏览器的导航本身占用一部分屏幕空间),更大的信息记忆负担
移动设备的屏幕要小得多。这种如同透过门缝进行的阅读增加了认知的负担。人脑的短期记忆是不稳定的,用户在滚动屏幕的过程中需要临时记忆的信息越多,他们的表现就会越差。——《贴心设计:打造高可用性的移动产品》
思考点:排版更清晰、信息更简练 (可在原生APP基础上去掉一些丰富、复杂的视觉表现)
3、导航不明显,原有底部导航消失,有效的导航遇到挑战
思考点:如何有效的提供导航?有哪些形式?
4、交互动态效果收到限制,影响一些页面场景、逻辑的理解。
思考点:比如登录注册流程的弹出、完成及异常退出,做好文字提示。
5、使用H5开发的App和原生App有什么区别?
1.H5的性能很差,一般经常改的地方可以用H5,比如论坛,咨询之类的,而且限制也是很大,很多效果是没办法做到的。GUI框架的WebView普遍是这样的。如果一个APP全部由H5来做(不太可能,送审很可能被拒),那么会显得非常卡。
2.用iOS SDK,如果实现热更新是比较麻烦的。对于论坛,咨询这种模块,动不动就改版,做起来比较头疼,用H5就很合适了。尤其在APP跨安卓和iOS的时候,这类模块如果直接用H5,那么就很容易共用。
6、原生APP和Web APP的区别
html5封装的app与原生态app有什么区别呢?
html5又和app有什么区别呢?
为什么大型网络公司还是倾向于推广原生态app呢?
html5是有跨平台的优势,但是为什么还是不温不火,或者我们仍称之为轻应用app呢?
查找了相关的资料,梳理了一下,发现有如下区别:
1.html5的app如轻型小炮,原生态app如正规大炮,html5实现的功能有限,只能实现一些轻型的交互场景,而app则可以完美解决。
2.html5虽然可以跨平台,可是浏览器有个加载速度,对于用户体验上说,有个加载的等待,就比如你用qq浏览器打开网络,和直接使用网络app是两种体验。浏览器打开网络,还得有个加载,而网络app则ang的出下了输入框界面。
3.html5的app对于导航来说,目前有个弊端。而原生态app则在页底固定悬浮着导航菜单。我给截图,大家可以看看区分:看我红线画圈和蓝色画圈的区别。
4.html5 app也有自己的优势,比如有的app页面想要分享出来,则采用html5
app。也比如滴滴打车集成在微信里一样,如果手机中没有滴滴打车的app,则直接可以在默认浏览器上加载出来,进行打车。对于公司整体的运营来说不可少。
html5 app在设计时需要注意的一些要点,我也简单概括了一下:
1)各手机浏览器的兼容测试
2)底层服务的调取(能调取,但只有当其是核心功能时才保留 eg:新浪、美团等皆去掉了头像上传功能)
3)注意离线数据存储,减少数据请求频率。
4)考虑保存用户的哪些数据:设置、个人数据、阅读锚点、跳出页面等。【这点一般说的就是导航菜单】
5)避免动效与浏览器的交互冲突
6)按顺序 异步加载eg: 腾讯视频
7、网站制作的APP和原生开发APP有什么区别
开发方面
原生开发的App
每一种移动操作系统都需要独立的开发项目,需要独立的开发语言,使用各自的软件开发包,开发工具以及各自的控件。
手机网站打包的APP
从原生演变过来的通过APP嵌入网站来是实现的,以及服务器端语言来完成。
功效方面
原生开发的App能够与移动硬件设备的底层功能,比如个人信息,摄像头以及重力加速器等等。
网站制作的App只能使用有限的移动硬件设备功能。
8、h5做app和原生app有什么区别?
H5的优点
1、h5开发速度快,一端开发多端运行
2、如果APP用户常见页面频换,如(淘宝首页各种不同活动),那么用H5,维护起来更容易。
3、如果app中出现大量文字且格式比较丰富(比如加粗、字体大小,图文展示)等用H5比较方便
4、迭代版本时,不需要打包便可以发布(实时更新、快速迭代),与云端实现实时数据交互
原生的优点
1、原生的响应速度快
2、对于有无网络操作时,譬如离线操作基本选用原生开发
3、需要调用系统硬件的功能(摄像头、方向传感器、重力传感器、拨号、GPS、语音、短信、蓝牙等功能)
4、在无网络或者若网的情况下体验好。
9、app开发公司:HTML5和原生的区别
1、动画
动画有很多种,比如侧边栏菜单的滑入滑出、元素的响应动画、页面切换之间的过场等等,在H5之下的众多实现方法都没有办法达到纯原生的性能。一般这些的话有几种不同的选择:css3动画、javascript动画、原生动画。
css3动画非常的消耗性能,如果某一个元素用到css3动画可能还看不出来,但大面积或过场使用css3动画会让app低端手机体验非常差。最好的选择一般是通过框架调用底层的动画,但不管怎么样等于在原来的代码上包上了一层,性能还是不可避免的受到影响。
比如在一个新页面的载入上,如果调用底层动画要考虑的问题有两个,一个是本身资源页面的渲染问题,另一个是远程数据的获取。即便是这些动画能够很快的响应,但大量的css页面会导致渲染卡顿,滑入时可能会有白屏/机器卡顿的现象。为了解决这些性能问题又必须要用到预加载或模拟动画。即便是这样,滑入滑出的动画在低端的安卓机器上还是有很多问题,如果获取服务端数据处理的方式不合适,卡顿白屏的现象会更严重。具体看下面的数据获取方式。
2、获取服务端数据
首先要接受的是,这里的数据获取都是在资源页面上异步完成的,因为只有这样才能让这些资源页面完成预加载或者渲染。但是异步拿到的数据在填入页面中时可能会涉及DOM操作,众所周知,DOM操作非常消耗性能,如果页面小还好,页面稍大数据稍微复杂一点,频繁的DOM操作会导致明显的闪白。而且最重要的一点是,如果页面加载进来之后数据更新的速度太慢,也会让页面模板等待很长时间,对用户体验又不友好,总不能每次打开都像浏览器一样等待刷新是吧。
这个问题如果没有得到解决,H5APP是很难承担大规模数据的页面,在它们之中频繁切换更是难上加难,那么肯定有人也会想到用MVVM的方式,其实我也写过一些基于MVVM的H5APP,相对来说它们获取数据和更新数据的方式更敏捷更科学,但写的过程中又要注意很多H5独有的问题,这些问题在下面的页面切换里来讲。
3、页面切换
上面我们看到了几种不错的实现方式,比如预加载和模拟动画,甚至有批量的预加载,批量的截图模拟动画等等,虽然看起来很友好解决了不少问题,但事实上如果页面足够多就会引发另一个问题——页面的生存周期。
试想一下,如果引导页或者主页面缓存了5个子页面的资源,在跳转到响应的子页面时又会缓存这些子页面的下级页面资源,如此反复肯定会占据大量内存使APP的体验下降。那么怎么知道那些页面是需要的,最多缓存多少页面,什么时候结束哪些页面的生存周期呢?在我用过的很多H5APP的框架里都没有对这些问题有一个完美的解答,因此在页面较多内容较多的APP中可能会因这些资源分配的问题降低性能。
这时候我们回过头来再看看MVVM的数据加载问题,实际上不管哪个MVVM框架,写过的人都知道管理这种新型的前端代码最重要的问题是内存的问题,你既要保证代码写的足够优雅没有任何内存泄露问题,也要考虑到在页面生存周期结束时它们的控制器/页面资源是否得到释放,这对全局有没有什么影响,在多个请求时也要合理的分配资源,甚至是复用这些父级页面传过来的缓存资源等等。较小的APP可能并不会有这些问题,如果你想用纯H5来开发大型APP,这很可能会浪费你很多时间——而且结果还不会让你满意。
4、Android/iOS的区别
很多人都说纯H5APP一次编写就能编译Android/iOS两种不同的APP,大大降低了成本。实际上这个观点本身就是值得怀疑的,如果你写过这类APP就能明白我在说什么,它们既不省事,又存在很多BUG,调试时尤其繁琐。举一个很简单的例子,Android和iOS在返回上一页的处理方式上就有明显的区别,iOS的顶部bar在全屏下怎样处理,Android机器出现smart bar怎样处理页面的布局,调用底层硬件时怎样区分不同的场景等等,你需要写一个又一个机型和系统的判断,然后分别在Android和iOS下调试,最后你却发现这并没有卵用,累的要死却什么没学到,只有一堆不知道什么时候会过时的经验。
现在做H5混合APP开发的人很多,但是纯H5却很年轻,很多问题都没有很好的解决,这几个是我在做这些APP时考虑最多的问题。当然大家也不必担心,随着ES6的推行,硬件发展越来越快,纯H5APP未必没有一席之地。最后说一个很少人注意到的H5优势,大家大谈H5APP时都是快速开发、低成本、多平台等等,但我却觉得它和很多APP开发方式相比有一个不同之处——图文混合的排版。正是这些复杂多变的CSS样式消耗了性能,但是它带来了排版的多样性,能够细致到每一个字宽行高和风格的像素级处理,才是H5的优异之处。
10、app中html5页面和原生native页面的区别
你想说的是怎么判断app里面哪些是app原生写的哪些是html代码是么?
要是是这样的话。有一种可以试一试。也就是你把手机的网络断掉。然后点开你的页面。然后可以正常显示的东西就是原生写的。显示404或则错误页面的是html页面