如题所述
前端是个很大的概念,我的理解是用户能够看到,直接接触到的层面都算是前端,比如IOS客户端界面,安卓客户端界面,网页界面,甚至PC/MAC桌面端软件界面;现在最常见的说法一般是指Web前端,也就是针对于网页端开发的工作。
也有个说法就是前端就是大前端嘛,如果你的工作真的那么赞的话,那就包括了web啦安卓啦ios啦甚至pcmac客户端的界面啦。但我觉得现在一般大家都还是有专攻的。
WebApp指的是【Webapplication】,也就是以浏览器作为客户端的软件。比如你要写文档,一般会打开Office2012之类的本地软件;但是你也可以选择在浏览器里输入一个网址,比如我很喜欢StackEdit—*smart*markdowneditor,然后直接在里面写东西直接发布到gist上;再比如用桌面客户端来收发邮件,但你也可以直接用浏览器登陆gmail亦或者QQ邮箱,直接把这个当客户端用。总之就是使用网页版代替本地软件。
MobileWebApp当然就是指在手机端打开的WebApp啦。我推荐看看Gmail的移动版。
感觉楼主问的问题还挺模糊的,所以我大概照我的理解依次解释下:
移动客户端的开发类型(因为我是个前端所以我是站在前端立场上来说的哈),主要是三种:
NativeApp(原生APP),也就是完全使用移动设备系统语言写的客户端,iPhoneiPad就是纯Object-C,安卓就是纯JAVA,就是用户看到的界面啦体验到的交互啦都是原生的。这是性能最棒的开发方式,但灵活性就没下面的好。
WebApp,这个就是在移动浏览器里打开的,纯HTMLCSSJS,说白了就是个网页,只不过非常的富应用,比如手机浏览器访问的GMAIL啥啥的。但说白了就是在浏览器里打开的页面。。IOS支持可以在桌面创建访问的快捷方式,但是说到底还是打开Safari跑。。而且对设备硬件的接口什么的挺薄弱。
HybridApp.[HTML5inmobiledevices]我觉得这个更为合适一些。实际上是使用原生写了一个容器,然后使用HTMLCSSJS来实现用户界面和交互。WebApp的短处便可以克服(因为自己写的容器可以辅助暴露偏底层的接口,比如本地存储或者麦克风控制之类),同时比起纯原生的java或者object-c开发灵活性要高(更新可以更快更迅速,也不依赖于市场,因为说白了,就是自己下载更新网页资源。。)实际上这种方式已经不限于移动端。。豌豆荚其实是个pc端的hybridapp哇~~~而且说实在的,桌面开发的性能就现在来说要比移动好很多。。