Web开发中的6个坏习惯
在 Usersnap,我们在能很好的组织网站开发有超过20(总和)年的经验。我们认为这些过去的经验能让我们很好的分辨出什么是好、坏和丑陋的网站开发。如今我们不想把注意力放在消极的部分,但就这一次,我们将把以往不好的地方做一下总结。
1.将20个关键点用邮件发出去
将20个关键点邮件发给别人,列出所有的bug、功能需求和别人被拒绝的要求,是和商品一样的问题。通常他们会带来指责或者类似“为什么你不解决掉$XY这个问题?我五个周之前不是就提指出了吗?”这样的追问。一旦你的开发经理不把这些对话落实到切实可行的计划,你就可能忘记事情。与其抱怨所有的这些事情你妈妈都没有教过你,不如尝试教给你的客户或者经理如何使用Bug追踪器或者项目管理工具*。那样的话,你不仅将节省无数发送冗长的邮件的时间,接收邮件的人也会更加清楚你最近正在忙于什么工作。
2. 抄送给整个团队
把问题抄送给所有人,意味着: 关于谁能处理这个问题,你没有任何想法。这种做法本身就有问题。如果你这样做了,很可能没有人会回答或者觉得应该对该问题负责。还有:阅读这些邮件浪费了无关人员大量的宝贵时间。尽量找出谁是责任人,然后只给他一个人发邮件。
3. 把测试留给其他人
让某人测试一个功能,而他却不知道该功能最初有什么错误,这是浪费团队成员时间的另一种方式。例如: 有客户抱怨说在IE浏览器中某个按钮不管用。首先接手该问题的一名开发人员解决了这个问题,然后另外一名QA测试它的时候,甚至不知道如何重现该问题。
4. 前后端之间的战争
把你的开发团队分成固定的部分是个坏主意,也是极为不敏捷的(别担心,我们没有使用这个词儿的习惯)。区分‘前端’和‘后端’导致了“Grabenkämpfe” (或者称之为:前后端之间的战争),毫无疑问这是不符合团队精神的。前端开发者会抱怨说“后台变更的太慢了”,而后台开发人员则会抱怨说“这可是今年第五次修改API了”。
5. 发布未经测试的代码
如果仅仅因为这是HiPPO某某(薪水最高的那位)的代码,就发布未经测试的代码,绝对是个糟糕的想法。更为糟糕的是: 这种事发生在周五下班前。当然,除非你是周末加班族,则另当别论了…
6. 过早进行优化
是的,听起来有点儿刺耳。但是在没有任何人看过你的页面之前就开始改进CSS动画效果,对于做事情并没有什么好处。如果你还有后台任务或者报告,当服务没有装载完毕时,让它跑个5到10秒并不是什么问题。应当在所有事情都正常工作之后再开始优化。我们还是非常提倡优化的,请参见我们上一篇文章中的第九条!
美国斯坦福大学的已经退休的计算机科学家和荣誉教授Donald Ervin Knuth,是精选著作集´计算机编程艺术(The Art of Computer Programming)´的作者。在他的‘使用goto语句进行结构化编程‘论文中他写到:
程序员们花费了大量时间来思考、或者担心他们的程序中无关紧要的部分的速度,而这会给代码的调试和维护工作带来很大的负面影响。我们应该忘掉细微部分的效率,对于97%的时间来说:过早优化是万恶之源。然而我们也不应该错过那关键的3%。
简而言之:在你弄清楚你到底要优化什么这个问题之前就开始优化,会带来各种各样的不必要的麻烦和错误。
我们应该,我的意思是,我也不会提倡不做备份就对产品进行更改或者没有清晰的思路和说明就进行开发。但幸运的是,你不会经常遇到这些错误。
原文地址:http://usersnap.com/blog/bad-habits-in-web-development/
Web开发中的6个坏习惯的更多相关文章
- 【初码干货】使用阿里云对Web开发中的资源文件进行CDN加速的深入研究和实践
提示:阅读本文需提前了解的相关知识 1.阿里云(https://www.aliyun.com) 2.阿里云CDN(https://www.aliyun.com/product/cdn) 3.阿里云OS ...
- Web 开发中很实用的10个效果【附源码下载】
在工作中,我们可能会用到各种交互效果.而这些效果在平常翻看文章的时候碰到很多,但是一时半会又想不起来在哪,所以养成知识整理的习惯是很有必要的.这篇文章给大家推荐10个在 Web 开发中很有用的效果,记 ...
- Web 开发中很实用的10个效果
在工作中,我们可能会用到各种交互效果.而这些效果在平常翻看文章的时候碰到很多,但是一时半会又想不起来在哪,所以养成知识整理的习惯是很有必要的.这篇文章给大家推荐10个在 Web 开发中很有用的效果,记 ...
- 转:Web 开发中很实用的10个效果【附源码下载】
原文地址:http://www.cnblogs.com/lhb25/p/10-useful-web-effect.html 在工作中,我们可能会用到各种交互效果.而这些效果在平常翻看文章的时候碰到很多 ...
- Web开发中的18个关键性错误
前几年,我有机会能参与一些有趣的项目,并且独立完成开发.升级.重构以及新功能的开发等工作. 本文总结了一些PHP程序员在Web开发中经常 忽略的关键错误,尤其是在处理中大型的项目上问题更为突出.典型的 ...
- WEB开发中的字符集和编码
html,body,div,span,applet,object,iframe,h1,h2,h3,h4,h5,h6,p,blockquote,pre,a,abbr,acronym,address,bi ...
- Web开发中管理ipad屏幕的方向变化
Web开发中,我们会遇到在手机垂直或水平视角时展示不同状态的情况.下面我来总结一下检测移动设备方向变化的一些方法. 1 使用javascript 直接看代码: <script type=&quo ...
- 今日推荐:10款在 Web 开发中很有用的占位图片服务
设计网站时,将要使用的图像在一开始通常还不存在,这个时候布局是最重要的.然而,图像的尺寸通常是预先设置,实用一些占位图像可以帮助我们更好地预览和分析布局. 如今,有免费的占位图片自动生成工具可以使用, ...
- Web 开发中应用 HTML5 技术的10个实例教程
HTML5 作为下一代网站开发技术,无论你是一个 Web 开发人员或者想探索新的平台的游戏开发者,都值得去研究.借助尖端功能,技术和 API,HTML5 允许你创建响应性.创新性.互动性以及令人惊叹的 ...
随机推荐
- 洛谷P0248 [NOI2010] 超级钢琴 [RMQ,贪心]
题目传送门 超级钢琴 题目描述 小Z是一个小有名气的钢琴家,最近C博士送给了小Z一架超级钢琴,小Z希望能够用这架钢琴创作出世界上最美妙的音乐. 这架超级钢琴可以弹奏出n个音符,编号为1至n.第i个音符 ...
- jquery DOM操作(一)
上一篇文章是记录了jquery中选择器的作用,这里只要记录下jquery中的DOM操作,还是按照上篇的格式来. 下面是测试用的html代码,接下来DOM的操作会在下面的代码下进行. <body& ...
- js基本数据类型 BigInt 和 Number 的区别
今天在做LeetCode的一到 “加一” 的题,题目如下 给定一个由整数组成的非空数组所表示的非负整数,在该数的基础上加一. 最高位数字存放在数组的首位, 数组中每个元素只存储一个数字. 你可以假设除 ...
- 【伪暴力+智商剪枝】Codeforces Round #489 (Div. 2) D
失踪人口突然回归……orz.题解还是有必要写的,虽然估计只有自己(?自己也不一定看得懂)看得懂. 题目链接:http://codeforces.com/contest/992/problem/D 题目 ...
- 树论讲解——最近公共祖先(lca)
最近公共祖先?! 有人肯定要问:什么是最近公共祖先???!! 好那我们现在就来说说什么是最近公共祖先吧! 最近公共祖先有一个好听的名字叫——lca 这是一种算法,这个算法基于并查集和深度优先搜索.算法 ...
- ARGB 8888 内存大小
韩梦飞沙 韩亚飞 313134555@qq.com yue31313 han_meng_fei_sha 4字节 argb 各占8个bit
- 「NOI2017」游戏
「NOI2017」游戏 题目描述 小 L 计划进行 \(n\) 场游戏,每场游戏使用一张地图,小 L 会选择一辆车在该地图上完成游戏. 小 L 的赛车有三辆,分别用大写字母 \(A\).\(B\).\ ...
- bzoj 1015 维护连通块个数,离线并查集
水. /************************************************************** Problem: 1015 User: idy002 Langua ...
- noip200807传纸条
试题描述: 小渊和小轩是好朋友也是同班同学,他们在一起总有谈不完的话题.一次素质拓展活动中,班上同学安排做成一个m行n列的矩阵,而小渊和小轩被安排在矩阵对角线的两端,因此,他们就无法直接交谈了.幸运的 ...
- UESTC 2015dp专题 E 菲波拉契数制 dp
菲波拉契数制 Time Limit: 20 Sec Memory Limit: 256 MB 题目连接 http://acm.uestc.edu.cn/#/contest/show/65 Descr ...