从10个方面探讨页面前端的开发,突破瓶颈

实现效果

但凡从事互联网的人基本都会写几行html,用过Word的人用Dreamweaver也能做出规整的页面,所以大部分人会很自然地认为“页面的开发没什么技术含量,很简单”。不仅有这种普遍的认知,对从业者来说也有很多疑惑:做页面前端实现,没问题;兼容性,小case;1.能够真实反映视觉稿;2.能够通过浏览器的兼容。这两个诉求的达成需要我们有追求细节的态度和一定的页面功底,能完成这两个内容就可以初步进入页面前端的从业者行列了,但这就代表着我们可以胜任页面开发的工作了?不,才刚刚开始!

与设计师的沟通和项目的参与

沟通很重要。先抛出几个问题:我们有没有和设计师探讨过某些效果对低端浏览器渲染效率影响比较大?有没有探讨过部分效果可以用CSS3实现从而使得结构更加简洁清晰?有没有在代码和视觉中寻追求过平衡?页面前端的开发向基本用户,编写的代码也直接作用在浏览器上,我们有义务对页面的稳定性和渲染效率负责。我们也经常碰到项目在总体进度压力下导致的设计与页面前端开发同步进行,这时更有必要尽量多地获取项目信息,了解我们还要做些什么,这些可以帮助我们充分考虑重用和框架拓展。

良好的页面结构

页面结构的编写好比盖房的地基建设,其好坏会直接影响到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的绚丽吸引了足够多的眼球,需要我们去研究;移动设备上如何开发更加适配的页面,需要我们去研究……

stay Hungry, Stay Foolish

水是越舀越多了,却发现原来下面还深不见底,上面的内容越是深入研究就越会发现更多山川需要翻越。保持饥饿状态,用眼睛去努力发现发掘,不断丰富技能才能找到定位,突破瓶颈,正所谓“唯有高屋建瓴方可水到渠成”。形成本文是因为之前和同行讨论到瓶颈的问题,想给自己,给页面前端的同学一起找找定位,梳理一下思路。拿苹果ceo在斯坦福演讲的一句话“stay Hungry, Stay Foolish”和大家共勉。

by Lemon

文:网易邮箱前端技术中心

本文来自投稿,不代表【】观点,发布者:【

本文地址: ,如若转载,请注明出处!

举报投诉邮箱:253000106@qq.com

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2024年5月3日 17:14:05
下一篇 2024年5月3日 17:16:11

相关推荐

  • java网站布局,java页面布局代码

    java窗体都有那些布局?,特点各是什么? 窗体中的信息可以分在多个节中。所有窗体都有主体节(主体节:用于包含窗体或报表的主要部分。该节通常包含绑定到记录源中字段的控件,但也可能包含未绑定控件,如标识字段内容的标签。),但窗体还可以包含窗体页眉。 正如我们在上一小节结束的时候说的一样,各种布局管理器都有自己的缺点,没有一种能够真正地完全满足我们编写GUI程序…

    2024年5月23日
    4400
  • 2007版页面预览excel文件,excel2007的预览在哪里

    excel分页预览 1、如图所示我想将此表分三页打印,每个班占据一页纸,首先需要点击“视图”。然后需要点击分页“预览”。然后会进入“分页预览”界面。鼠标选中此单元格,单击右键,然后点击插入“分页符”。 2、点击普通按钮,可以看到Excel的底部已经变成了白色,如果想恢复分页预览状态,再次点击分页预览按钮即可。 3、取消excel分页预览的具体步骤如下:打开E…

    2024年5月21日
    4200
  • c语言中怎么跳转到,c语言中怎么跳转到指定页面

    c语言跳转语句有哪些? 1、C语言跳转指令包含,子程序调用,无条件转移,条件转移等。 2、跳转语句(jump statement):return;C语言是一门面向过程的、抽象化的通用程序设计语言,广泛应用于底层开发。C语言能以简易的方式编译、处理低级存储器。 3、在 C 语言中,可以使用函数的返回值来实现从子程序中直接跳转到其他地方。 4、C语言中的goto…

    2024年5月20日
    4800
  • javawebppt,JAVAwebPPT页面注册修改的步骤

    在线报表设计器-如何选择适合自己的Web报表工具 适合自己的Web报表工具,首先要满足:跨平台、多数据源整合、一流的框架支持及扩展、纯前端打印/导出格式、多种报表数据组件,以及大量免费报表模板。 支持在线自定义参数现在很多报表工具,虽然了支持自定义,但走的技术路线是:C/S模式的报表设定器-生成XML报表模板-发布到WEB服务器中-通过程序(JSP)向报表引…

    2024年5月20日
    4300
  • linux清空正在使用log,linux清空当前页面

    linux如何删除正在被使用的文件 使用rm命令:rm命令是删除文件或目录的常用命令。 linux中如何删除文件呢,下面就让我们来看看吧。打开linux系统,在linux的桌面的空白处右击。在弹出的下拉选项里,点击打开终端即可进入命令行。在终端窗口中输入rm+文件名命令,回车后即可删除掉。 linux删除文件夹的方法有两种:rmdir命令和rm命令。很多人习…

    2024年5月19日
    5100
  • java自动登录网站,javaweb登录页面代码

    用java实现自动登录论坛 看情况了,如果不需要输入验证码的,一般直接让浏览器提交一个含有用户民和密码的登录表单到对应的网站就行了,如果有验证码的话,就需要用框架嵌入一个其他网站登录页面。 将用户名、密码放入response,这样页面返回时浏览器会将cookie信息存入本地,在下次提交时,会将cookie信息一并提交,然后在登录的开头在request中取出。…

    2024年5月19日
    4300
  • excel中的表格如何删除空白页面,excel表格怎么删除空白页格

    怎么删除excel表中不需要打印的空白页 一.把你做的表调小一些看看 二.选定下面或右边的空白页,编辑——清除——全部 三.选中没用的列开始,按“Shift+Ctrl+ →,右击,然后选删除。选中没用的行开始,按“Shift+Ctrl+↓,右击,然后选删除。 首先我们打开需要编辑的Excel表格,点击打开视图中的“页面布局”。然后我们选中空白页,右键单击选择…

    2024年5月19日
    7600
  • javascript打印文件,js打印页面

    js打印问题,急!!! window.print();仅此一行代码就可以连接打印页面,然后就可以直接打印,是不是非常简单,接下来我们就来看看将print方法用于按钮或链接来进行打印。打印按钮的设置方法要设置打印按钮,请在按钮的onclick事件中指定print方法。 JS实现打印的方式方式一:window.print()window.print();会弹出打…

    2024年5月19日
    4600
  • javafilter跳转页面,java跳转页面用什么方法

    java页面跳转保留iframe B中的按钮,调用JavaScript程序。 需要使用到iframe标签。iframe标签用法:scrolling禁止鼠标滑动,frameborder嵌套页面边框,leftmargin左边距,topmargin上边距 扩展资料: 嵌入页面的几种方法: 应用框架技术 在页面中嵌入外部页面的。 在你提交,进入到servlet的那个…

    2024年5月19日
    4400
  • java读取大日志文件,java实时读取日志并输出到页面上

    java大报文接口怎么处理 在Java 中使用关键字interface 来定义接口。例如:public interface Compare {public int compare(Object otherObj);}Compare 接口定义了一种操作compare,该操作应当完成与另一个对象进行比较的功能。 调用WebService,对方给出WebServi…

    2024年5月18日
    4700

发表回复

登录后才能评论



关注微信