前端:移动端和PC端的区别

  在阿里的几回面试中,老是被问到移动端和PC端有什么区别,当时回答的时候主要是回答了在兼容性、网速、适配、页面布局等方面的不一样,可是仍是很不系统,因此这里作一个总结。前端

 

第一: PC考虑的是浏览器的兼容性,而移动端开发考虑的更多的是手机兼容性,由于目前无论是android手机仍是ios手机,通常浏览器使用的都是webkit内核,因此说作移动端开发,更多考虑的应该是手机分辨率的适配,和不一样操做系统的略微差别化。jquery

 

第二: 在部分事件的处理上,移动端多出来的事件是触屏事件,而缺乏的是hover事件。 另外包括移动端弹出的手机键盘的处理,这样的问题在PC端都是遇不到的。 android

 

 

第三: 在布局上,移动端开发通常是要作到布局自适应的,我使用的一直是rem布局,感受很好。ios

 

 

第四: 在动画处理上,PC端因为要考虑IE的兼容性,因此一般使用JS作动画的通用性会更好一些,可是CSS3作了很大的牺牲, 而在手机端,若是要作一些动画、特效等,第一选择确定是CSS3 既简单、效率又高web

 

第五:  微信的一些接口组好能去实现一遍,熟悉一下确定是有好处的,好比经过微信分享文章,title、description、icon等图标的配置,这些仍是要会的。面试

 

第六: 百度地图的一些API接口,也得去实现一下,这些对于移动端来讲,LBS是一个很是重要的特性,因此地图这块确定是要了解的,在加上百度地图这块已是一个比较成熟的平台了,因此学起来也比较容易。浏览器

 

 

第七: CSS3的动画必定要比较熟练,这在移动端用的仍是比较多的。 缓存

 

 

第八: 通常pc端用jquery,移动端用zepto,由于移动端的流量仍是比较重要的, 因此引入的资源或者插件,能小则小,一个30k的资源和一个80k的资源,在移动端的差异仍是挺大的。性能优化

而未压缩的jquery是262kb, 压缩的jquey是83kb,可见二者的差异之大。微信

 

 

第九:最好能掌握一套完整的前端开发架构,好比模块化、打包、压缩、缓存、有条件的还能够作一下自动化测试等等,比较好用的有fis,另外,想要快速提高本身的前端开发技术,钻研前端架构这块是一个很是好的方向。

 

第十: 性能优化,包括首屏的打开速度、用户响应延迟、渲染性能、动画帧率等在手机上都须要特别注意。

 

第十一: 好比在手机上的300ms的延迟,这在PC端是没有的,若是咱们但愿作成webapp,那么天然就不须要这300ms的延迟,因此可使用hammer-time.js来移除这300ms的延迟。

 

 

 

 

 

 

 

本文整理自:知乎

相关文章
相关标签/搜索