自1995年以来,我一直在以这样或那样的形式制作网站。经过25年的经验,我想我已经积累了足够的知识来了解一些事情。以下是我希望年轻的开发人员考虑的一些事情,没有特别的顺序:
您可以通过多种方式提供数据;可以将HTML视为几种可能的数据表示形式之一。
扩展您的服务器对每个人都有帮助。预期客户端扩展只会帮助拥有最快计算机和互联网连接的人。
浏览器的原生HTML解析比您用JavaScript编写的任何东西都要快得多。
在使用您自己的UI组件之前,请考虑HTML可能提供了它。如果它不提供它,那可能是有原因的。将DOM事件附加到<;div>;或<;span>;可能不是最佳的处理方式。
即使您需要在页面加载之间保留客户端状态(例如,音乐或视频播放),也可以让浏览器通过获取新页面并在DOM级别替换内容容器来完成大部分繁重任务。
无限的卷轴是不人道的。人们需要能够到达“终点”。宗教经文中描述的一些永恒的折磨形式并不那么卑鄙。
如果您必须进行无限滚动(但您没有),请确保底部没有您需要触及的内容。(如果您必须进行无限滚动(而您没有这样做),请确保底部没有任何您需要触及的内容。
给人们持续但随机的刺激,你就会养成习惯。让人们迷上你的产品似乎是个好主意,但烟草行业也有同感。
如果您在设计时考虑了CDN,那么服务器往返将不会很慢。
在一件事中使用多种语言是可以的。不是所有的东西都必须是同构的。
对于开发人员来说,“同构”代码打破了客户端和服务器之间的障碍。对于恶意客户端,这意味着他们也可以控制服务器。
浏览器会改变。依赖于特定于浏览器的行为意味着您在某个时间点依赖于那个浏览器。按照标准编写代码,并在任何地方进行测试。
使用多边形填充来支持尚不支持您正在使用的标准的浏览器。
模仿别人是可以的,这是我们学习东西的方式。记住要从中吸取教训。
(通过Busybee)