什么是前端呢?大部分人都停留在‘前端就是切页面,而且页面开发没什么技术含量,很简单!’,事实上前端不仅仅只限于此。
不同时期对互联网技术的看法是不一样的,对前端的认知一也是不一样的。在互联网早期时,小车还是比房子贵的,烧饼和粉丝还只是用来吃的,菊花还只是用来泡茶的。那时的页面设计风格相对单一,对应的页面需求比较简单,并且当时的浏览器也基本是IE6的天下,javascript也只是网页特效的代名词,HTML页面本身没有引起太多人关注,似乎只要能用div甚至table加css辅助把图片定好位,把页面内容预留好就OK了,所以我们不能把认知停留在过去,随着互联网的发展,前端技术早已发生天翻地覆的改变。交互复杂性的增加,AJAX的应用,浏览器的更新换代,移动端的应用等等。
优秀的前端需要具备那些?
实现效果图是最基本的工作
把视觉稿通过页面代码的方式表现出来包含两个基本诉求:1. 能够真实反映视觉稿;2.能够通过浏览器的兼容。这两个诉求的达成需要我们有追求细节的态度和一定的页面功底,能完成这两个内容就可以初步进入页面前端的从业者行列了,但这仅代表前端工作才刚刚开始!
与项目的参与者的沟通
沟通很重要。前端开发除了要与设计师参与沟通外,还有跟后台程序编码进行沟通。可谓是 UI 跟后台的一个中间桥梁。
良好的页面结构
页面结构的编写好比盖房的地基建设,其好坏会直接影响到CSS代码的质量、js开发、后台开发还会影响到以后的页面拓展、迭代和页面调整。拿到视觉稿后,不要忙着动手开始,多观察思考。先分析布局,划分框架,然后规划结构,编写代码。特别在大型项目中,合理使用模块化的开发不论从整体进行还是拓展维护都有相当大的好处。
关于hack
很多同学在页面开发时上网搜索最多的就是hack了,是否我们完全要依赖hack来实现页面兼容性,答案是否定的。大家经常比喻IE6向我们撒了一个谎,结果我们要再撒一百个谎来圆这个谎。不否认IE6经常让我们口吐鲜血,但不代表我们用更多的“谎言”来弥补就可以心安理得。大部分情况下可以通过变换思路调整HTML结构,或使用一些虽然无法解释但相对安全的css来干掉hack。谁都无法预计使用hack什么时候会让我们栽一个大跟头。比如触发layout或position:relative就可以帮助解决很多IE6的问题。
优美的代码
现在很多web项目功能复杂,代码规模也变得很庞大,如何更好地进行协同开发和维护是我们面临的一个问题。需要考虑完善统一的规划,还有要养成良好的代码开发习惯才会在面临各种情况时游刃有余。翻阅页面代码,看到合理的标签使用、良好的注释、清晰的代码结构、用意准确的css,不仅犹如欣赏一个艺术品,更为下游开发和协同开发降低了不小的沟通成本,我们有什么理由不去这么做呢?举个反面例子:div滥用是现在比较典型的一个问题。数数看自己使用的标签有多少个呢?不同的语义都该使用对应的标签代码,特别是HTML5提供了更丰富的语义化标签,它们都苦苦地在等待战场上的冲锋号,让我们去解放它们吧!
无障碍页面开发
可访问性与易用性是非常主观且人性化的东西。普通人看上去上完美呈现的页面在特殊群体中不一定显得那么贴心。当盲人用读屏软件在页面某个区域内陷入循环时,我们应该感到内疚。只能说目前国内网站对此的重视程度还远远不够,这就需要我们共同努力,让更多的人感受到我们的热情。
保障效率
作为项目开发中比较靠前的一环,页面开发可能需要尽早完成为项目争取时间,这就需要我们尽可能提高效率。“工欲善其事,必先利其器”,除了实战经验和代码习惯的形成可以帮助我们提高效率外,想要提高对自己开发的进度掌控能力,还有很多辅助工具帮助我们进行页面开发。比如使用Less或Sass可以帮助我们拓展和组织CSS,大大提高CSS的编写效率,增加可维护性。比如可以通过zen coding的自动完成和自定义代码块让你可以剑指如飞。甚至还见过通过自定义输入法的代码块关键字来提升开发速度的。多多发掘,一定会找到最合适自己使用的工具。
针对服务器的优化
页面开发也需要了解服务器优化,尽量减小服务器负担。比如css sprite就是一个典型减小服务器请求数的例子。在网易邮箱的页面前端开发中大家不停地做着各种优化,比如一直在寻求文件大小与服务器请求数的平衡;为了尽可能提高缓存利用率采用了补丁升级;对class名进行了混淆压缩避免命名过长的冗余;应用base64减少请求数量等等措施。这些都是综合权衡的结果,需要考虑各个方面整体优化。因为当页面访问量达到一定的数量级时,再小的一点优化都会达到可观的效果,再小的问题都可能会形成巨大的灾难。
拥抱HTML5
这是一个充满机会的时代,HTML5时代的来临伴随着移动互联网的兴起,创造了更大的机会,还有太多的东西值得我们去学习去发现。HTML5提供了丰富的JS API接口,需要我们去研究;CSS3的绚丽吸引了足够多的眼球,需要我们去研究;移动设备上如何开发更加适配的页面,需要我们去研究……
总之一句:‘learn little use every where’.
(PHP开发、web前端、UI设计、VR开发专业培训机构--V客IT学院版权所有,转载请注明出处,谢谢合作!)