Table des matières
 1.将20个关键点用邮件发出去
 2. 抄送给整个团队
 3. 把测试留给其他人
 4. 前后端之间的战争
 5. 发布未经测试的代码
 6. 过早进行优化
Maison interface Web tutoriel HTML Web开发中的6个坏习惯 - jerrylsxu

Web开发中的6个坏习惯 - jerrylsxu

May 22, 2016 pm 05:19 PM

在 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%。

  简而言之:在你弄清楚你到底要优化什么这个问题之前就开始优化,会带来各种各样的不必要的麻烦和错误。

  我们应该,我的意思是,我也不会提倡不做备份就对产品进行更改或者没有清晰的思路和说明就进行开发。但幸运的是,你不会经常遇到这些错误。

 

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Quel est le but du & lt; Progress & gt; élément? Quel est le but du & lt; Progress & gt; élément? Mar 21, 2025 pm 12:34 PM

L'article traite du HTML & lt; Progress & GT; élément, son but, son style et ses différences par rapport au & lt; mètre & gt; élément. L'objectif principal est de l'utiliser & lt; Progress & gt; pour l'achèvement des tâches et & lt; mètre & gt; pour stati

Quel est le but du & lt; datalist & gt; élément? Quel est le but du & lt; datalist & gt; élément? Mar 21, 2025 pm 12:33 PM

L'article traite du HTML & lt; Datalist & GT; élément, qui améliore les formulaires en fournissant des suggestions de saisie semi-automatique, en améliorant l'expérience utilisateur et en réduisant les erreurs. COMMANDE COMPRES: 159

Quelles sont les meilleures pratiques pour la compatibilité entre les navigateurs dans HTML5? Quelles sont les meilleures pratiques pour la compatibilité entre les navigateurs dans HTML5? Mar 17, 2025 pm 12:20 PM

L'article examine les meilleures pratiques pour assurer la compatibilité des navigateurs de HTML5, en se concentrant sur la détection des fonctionnalités, l'amélioration progressive et les méthodes de test.

Quel est le but du & lt; mètre & gt; élément? Quel est le but du & lt; mètre & gt; élément? Mar 21, 2025 pm 12:35 PM

L'article traite du HTML & lt; mètre & gt; élément, utilisé pour afficher des valeurs scalaires ou fractionnaires dans une plage, et ses applications courantes dans le développement Web. Il différencie & lt; mètre & gt; De & lt; Progress & gt; et ex

Comment utiliser les attributs de validation du formulaire HTML5 pour valider l'entrée utilisateur? Comment utiliser les attributs de validation du formulaire HTML5 pour valider l'entrée utilisateur? Mar 17, 2025 pm 12:27 PM

L'article discute de l'utilisation des attributs de validation de formulaire HTML5 comme les limites requises, motifs, min, max et longueurs pour valider la saisie de l'utilisateur directement dans le navigateur.

Quelle est la balise Meta de la fenêtre? Pourquoi est-ce important pour une conception réactive? Quelle est la balise Meta de la fenêtre? Pourquoi est-ce important pour une conception réactive? Mar 20, 2025 pm 05:56 PM

L'article traite de la balise Meta de la fenêtre, essentielle pour la conception Web réactive sur les appareils mobiles. Il explique comment une utilisation appropriée garantit une mise à l'échelle optimale du contenu et une interaction utilisateur, tandis que la mauvaise utilisation peut entraîner des problèmes de conception et d'accessibilité.

Quel est le but du & lt; iframe & gt; étiqueter? Quelles sont les considérations de sécurité lorsque vous l'utilisez? Quel est le but du & lt; iframe & gt; étiqueter? Quelles sont les considérations de sécurité lorsque vous l'utilisez? Mar 20, 2025 pm 06:05 PM

L'article traite du & lt; iframe & gt; L'objectif de Tag dans l'intégration du contenu externe dans les pages Web, ses utilisations courantes, ses risques de sécurité et ses alternatives telles que les balises d'objet et les API.

Gitee Pages STATIQUE Le déploiement du site Web a échoué: comment dépanner et résoudre les erreurs de fichier unique 404? Gitee Pages STATIQUE Le déploiement du site Web a échoué: comment dépanner et résoudre les erreurs de fichier unique 404? Apr 04, 2025 pm 11:54 PM

GiteEpages STATIQUE Le déploiement du site Web a échoué: 404 Dépannage des erreurs et résolution lors de l'utilisation de Gitee ...

See all articles