您的位置:首页 > Web前端

移动前端开发和 Web 前端开发的区别是什么?

2015-03-10 10:48 537 查看
前端是个很大的概念,我的理解是用户能够看到,直接接触到的层面都算是前端,比如IOS客户端界面,安卓客户端界面,网页界面,甚至PC/MAC 桌面端软件界面;现在最常见的说法一般是指Web前端,也就是针对于网页端开发的工作。

也有个说法就是前端就是大前端嘛,如果你的工作真的那么赞的话,那就包括了web啦安卓啦ios啦甚至pc mac客户端的界面啦。但我觉得现在一般大家都还是有专攻的。

Web App指的是【Web
application】,也就是以浏览器作为客户端的软件。比如你要写文档,一般会打开Office
2012之类的本地软件;但是你也可以选择在浏览器里输入一个网址,比如我很喜欢StackEdit — *smart* markdown editor ,然后直接在里面写东西直接发布到gist上;
再比如用桌面客户端来收发邮件,但你也可以直接用浏览器登陆gmail亦或者QQ邮箱,直接把这个当客户端用。总之就是使用网页版代替本地软件。

Mobile Web App 当然就是指在手机端打开的Web App啦。我推荐看看Gmail的移动版。

感觉楼主问的问题还挺模糊的,所以我大概照我的理解依次解释下:
移动客户端的开发类型(因为我是个前端所以我是站在前端立场上来说的哈),主要是三种:

Native App(原生APP),也就是完全使用移动设备系统语言写的客户端,iPhone
iPad就是纯Object-C,安卓就是纯JAVA, 就是用户看到的界面啦体验到的交互啦都是原生的。这是性能最棒的开发方式,但灵活性就没下面的好。

Web App,
这个就是在移动浏览器里打开的,纯HTML+CSS+JS,说白了就是个网页,只不过非常的富应用,比如手机浏览器访问的GMAIL啥啥的。但说白了就是在浏览器里打开的页面。。IOS支持可以在桌面创建访问的快捷方式,但是说到底还是打开Safari跑。。而且对设备硬件的接口什么的挺薄弱。

Hybrid App.[HTML5
in mobile devices]
我觉得这个更为合适一些。实际上是使用原生写了一个容器,然后使用HTML+CSS+JS来实现用户界面和交互。Web App的短处便可以克服(因为自己写的容器可以辅助暴露偏底层的接口,比如本地存储或者麦克风控制之类),同时比起纯原生的java或者object-c开发灵活性要高(更新可以更快更迅速,也不依赖于市场,因为说白了,就是自己下载更新网页资源。。)实际上这种方式已经不限于移动端。。豌豆荚其实是个pc端的hybrid app 哇~~~ 而且说实在的,桌面开发的性能就现在来说要比移动好很多。。

以上三种开发方式的比较和分析谷歌里面一搜一大堆我就不废话啦哈。我记得2011年的Google io上就有一场talk是android native和web app等开发方式的大PK。。看俩工程师吵还是很有意思的。我顺手找着了 [ http://www.youtube.com/watch?v=4f2Zky_YyyQ ] 

题主似乎是想学移动方向的前端开发?那是针对哪个方向的捏?个人觉得其实如果还是html+CSS+js的话核心都是一样的,只不过移动端可能在页面建构时有些关于尺寸方面(物理像素css像素设备独立像素这一堆)的细节需要注意下,包括图片处理之类的,这些可以参见苹果和安卓的官方文档,虽然是针对原生开发者的,但很多地方前端是完全该知道的;此外js方面可能就是注意性能方面的问题,我觉得就眼下的情形来说国内要做依赖于html
css js又要非常富应用和高性能的移动端可能不太现实。。。而且我觉得移动端开发就目前现状而言。。拼的完全是痛苦的设备测试和调试。。

然后我跑题感慨下。。。这种遍地都是坑的节奏。。。在我刚开始高兴哈哈不用兼容IE了的时候,我发现webkit和安卓碎片化的坑才是最大头的。。。

转自http://www.zhihu.com/question/20269059
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: