基本技能的任何Web开发人员应该有

作为一名Web开发人员,除了编写HTML代码,还有很多事情要做之前,该网站可以去住。您可能会考虑对用户体验,设备兼容性,安全性等,要成为一个优秀的网页开发人员,您应该掌握一些基本技能的Web开发。下面我们列出其中的一些。他们中的一些你可能很熟悉很久以前,但绝对他们中的一些你可能不那么熟悉,甚至从来没有听说之前。

界面和用户体验

  • 请注意,浏览器实现标准不一致,并确保您的网站响应工作在所有主要浏览器,尤其是随着移动设备的普及,响应式设计的要求更高。至少当你应该测试你的网站针对近期Gecko引擎,一个WebKit引擎,铬,歌剧,当然还有臭名昭著的IE浏览器。还要考虑如何浏览器渲染你的网站在不同的操作系统。幸运的是,现在有许多框架可以用来封装浏览器的差异,例如jQuery的,引导,播放。
  • 分期:如何在不影响用户部署更新。有一个或多个可用来实现更改架构,代码或笼统的内容,并确保它们可以部署在一个可控制的方式不破坏任何测试或试运行环境。有那么部署核准的变更对活动网站以自动化的方式。这与使用版本控制系统(CVS,Subversion的等)和自动化的构建机制(蚂蚁,南特等)相结合最有效的执行。
  • 不要直接给用户显示不友好的错误。
  • 不要把用户的电子邮件地址以纯文本格式,因为他们将得到太多垃圾邮件死亡。
  • 添加属性相对=“nofollow的”用户生成的链接,以避免垃圾邮件。
  • 学习如何做渐进增强。
  • 一个POST重定向后,如果POST成功,防止刷新再次提交。
  • 不要忘记带辅助功能考虑在内。它总是一个好主意,在某些情况下这是一个法律要求。
  • 不要让我觉得

安全

  • 这是一个很大的消化,但OWASP开发指南涵盖了网站的安全性上下。
  • 了解注射剂特别是SQL注入,以及如何防止它。
  • 永远不要相信用户的输入,也不是来自于请求别的(包括cookie和隐藏的表单字段值!)。
  • 使用盐哈希密码,并使用不同的盐你行,以防止彩虹攻击。使用慢速散列算法,如从BCrypt(测试时间)或scrypt(甚至更强,但较新的),用于存储密码。(如何安全地储存一个密码)。在NIST还批准PBKDF2的哈希密码 “,它的FIPS认可。NET中(详细信息在这里)。避免直接使用MD5或SHA家庭。
  • 不要试图拿出自己看中的身份验证系统。它是这么简单的东西来获得错误的微妙和不可测试的方式,你甚至不知道它,直到之后你砍死。
  • 了解处理信用卡的规则
  • 使用SSL / HTTPS的登录和敏感的数据输入(如信用卡信息)的任何页面。
  • 防止会话劫持。
  • 避免跨站点脚本(XSS)。
  • 避免跨站请求伪造(CSRF)。
  • 避免点击劫持。
  • 让您的系统(S)最新的最新的补丁。
  • 确保你的数据库连接信息是安全的。
  • 保持自己的最新攻击技术和漏洞影响到你的平台。
  • 考虑最小权限的负责人。尝试运行你的应用服务器作为非root。(tomcat的例子

性能

  • 如果需要实现缓存,理解和使用HTTP缓存正确,以及HTML5的清单
  • 优化图像
  • 了解如何用gzip /放气含量。
  • 合并/连接多个样式表或多个脚本文件,以减少浏览器连接的数量,提高gzip来压缩文件之间的重复能力。
  • 一起来看看在雅虎卓越的性能工地,很多伟大的指导方针,包括改善前端性能和YSlow的工具(需要火狐,Safari,Chrome浏览器或Opera)。此外,谷歌网页速度是另一种工具,性能分析,并将其优化你的图片了。
  • 使用CSS图片精灵的小相关相似图片工具栏(参见“最小化HTTP请求”点)
  • 繁忙的Web站点应该考虑跨域分裂组件。具体...
  • 静态内容(如图片,CSS,JavaScript和一般内容,并不需要访问的Cookie)应该在一个单独的域,不使用Cookie,因为所有的cookie的域及其子域发送的每个请求的域及其子域。这里是一个很好的选择是使用一个内容交付网络(CDN)。
  • 最大限度地减少所需的浏览器来呈现页面的HTTP请求的总数。
  • 确保有一个favicon.ico的文件在网站中浏览器会自动请求它的根,即使图标没有在HTML中提到的。如果你没有一个/的favicon.ico,这将导致大量的404,消耗你的服务器的带宽。

SEO(搜​​索引擎优化)

  • 使用“搜索引擎友好”的URL,即使用example.com/pages/45-article-title,而不是example.com /的index.php?页= 45
  • 当使用动态内容更改#! ,然后在服务器上$ _REQUEST [“_escaped_fragment_”]是什么Googlebot使用,而不是#! 。换句话说,#!页= 1 /变成/?_escaped_fragments_ =页= 1。此外,对于可能使用FF.b4或铬,用户history.pushState({“foo”的:“酒吧”}“。?/页= 1”,“关于”,)是一个伟大的命令。因此,即使在地址栏改变了页面不会重新加载。这使您可以使用代替#!保持动态内容,并告诉服务器当您发送电子邮件,我们是这个页面后的链接,以及AJAX并不需要再作额外的要求。
  • 请勿使用说“点击这里”链接。你在浪费一个SEO机会,它使事情更难的人与屏幕阅读器。
  • 有一个XML站点地图,最好是在默认位置/ sitemap.xml的
  • 使用<link rel="canonical" ... />当你有两个指向不同的地址,这个问题也可以从谷歌网站管理员工具解决。
  • 安装谷歌Analytics(分析)在一开始(或一个开源分析工具一样的Piwik)。
  • 懂得robots.txt和搜索引擎蜘蛛的工作。
  • 重定向请求(使用301永久移动)要求www.example.comexample.com(或者反过来),以防止分裂谷歌两个网站之间的排名。
  • 要知道,有可能是严重乖蜘蛛在那里。
  • 如果您有非文本内容研究谷歌的地图扩展视频等

技术

  • 了解HTTP之类的东西GET,POST,会话,cookie和它的意思是“无状态”。
  • 根据W3C规范写你的XHTML / HTML和CSS,并确保他们验证。这里的目标是避免浏览器的怪癖模式和奖金使得它更容易使用非标准的浏览器,如屏幕读取器和移动设备的正常工作。
  • 了解JavaScript在浏览器中进行处理。
  • 了解JavaScript中,样式表,并使用你的页面其他资源加载,并考虑他们的影响感知的性能。现在人们普遍认为是适当的移动脚本到您的网页中有例外是典型的事情,比如分析应用程序或HTML5的垫片的底部。
  • 了解如何在JavaScript的沙箱的工作原理,特别是如果你打算使用iframe。
  • 注意,JavaScript可以和将被禁用,并且因此AJAX是一个扩展,而不是一个基线。即使大多数普通用户离开它了,记住,NoScript的是越来越受欢迎,如预期的移动设备可能无法正常工作,并编制索引的网站时,谷歌将无法运行大部分的的JavaScript。
  • 学习301和302重定向之间的区别(这也是一个SEO的问题)。
  • 尽可能多地学习你所能了解你的部署平台。
  • 考虑JavaScript框架(如jQuery,MooTools的,原型,道场或YUI 3),这将使用JavaScript进行DOM操作时,隐藏了很多的浏览器差异。
  • 以感知性能和JS框架一起,可以考虑使用一个服务,如谷歌库API来加载框架,使浏览器可以使用它已经缓存,而不是从你的网站下载一个副本的框架副本。
  • 不要重新发明轮子。做任何事情之前搜索关于如何做到这一点的组件或例子。有99%的机会已经有人做到了,发布了一个开源版本的代码。
  • 更重要的是不利的一面,不要用20的库开始之前,你甚至决定你的需求是什么。特别是在客户端Web地方几乎总是最终更重要的是让事情变得轻便,快速和灵活。

bug修复

  • 明白你会花你的时间编码的20%和80%维持它的,所以相应的代码。
  • 建立一个良好的错误报告解决方案。
  • 有市民给您的建议和批评,请联系系统。
  • 记录了应用程序如何适用于未来的支持人员和进行维护的人。
  • 频繁的备份!(并且确保这些备份功能)
  • 使用版本控制系统来存储你的文件,比如Subversion,水银或Git的。
  • 不要忘记做你的验收测试。像硒的框架可以提供帮助。
  • 请确保您有足够的日志来代替使用框架(如log4j),log4net的或log4r。如果有错误发生在你的网站中,你需要找出什么的方式。
  • 当登录时请务必同时捕获处理异常和未处理的异常。报告/分析日志的输出,因为它会告诉你其中的关键问题是在您的网站。

有很多更多的人。我们可以在这里给出一个建议是你应该不断学习,不断记下您在开发过程中遇到什么新花样。这可以节省你在未来更多的麻烦是肯定的,如果你能不断学习。

1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。 1、资源项目源码均已通过严格测试验证,保证能够正常运行; 2、项目问题、技术讨论,可以给博主私信或留言,博主看到后第一时间与您进行沟通; 3、本项目比较适合计算机领域相关的毕业设计课题、课程作业等使用,尤其对于人工智能、计算机科学与技术等相关专业,更为适合; 4、下载使用后,可先查看README.md或论文文件(如有),本项目仅用作交流学习参考,请切勿用于商业用途。 5、资源来自互联网采集,如有侵权,私聊博主删除。 6、可私信博主看论文后选择购买源代码。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值