所谓“现代Web开发”,都是些什么妖魔鬼怪?
编译 | 核子可乐、Tina
如果您在大学或者培训机构里学过“现代”Web 开发,不妨试着放下自己学到的一切、进行一番独立思考。除非各位碰巧遇上了好老师,否则站在讲台上的很可能是个只懂理论、照本宣科的家伙。我们得自己研究底层技术的工作原理,做出明智的决定。而所谓现代 Web 开发跟这一切显然是背道而驰。
了解如何在前端仅使用 HTML 和 CSS 来制作网站。如果必要,可以稍微用 JavaScript 进行一点 UI 改进,但请确保改进需求真实且合理(结合用户测试来具体验证)。而且即使合理,也不妨试试不用 JavaScript 能不能达成同样的效果。
找款低配笔记本测试一下产品。微信搜索readdot,关注后回复视频教程获取23种精品资料
“Web 应用程序”是另外一个精心设计出来的洗脑词汇。无论交付的是静态内容还是动态内容,也无论用户是否能够进行即时交互,网站的本质仍然只是个站点。它不是游戏、也不是谷歌地图那种复杂的软件,对于大部分展现内容只是文本的网站来说,它真的不能被叫作“应用程序”。别被那些流行词汇给忽悠了,不用 JavaScript、大多数网站也完全可以正常运行。
别再搞什么单页网站了!HTTP 协议是专为小型个体和离散请求而设计构建的,它强调每个请求都有其特殊的目标。一次性把整个网站加载到浏览器上明显毫无意义,因为其中 90% 的内容根本没机会进入用户的视野。最简单的例子,有必要预先加载“关于我们”之类的页面内容吗?那东西有人看吗?所以,记得把网站分成几个小部分,让用户自主决定想看什么,这就是 HTML 锚点标签的用途。只提供一个小巧的首页,之后由用户点击相关超链接来请求自己实际想看的东西。Web 不就是这么工作的吗,怎么到了智能手机上就不一样了呢?
别再从后端向前端发送 JSON 了,我们不是在构建 API。既然负责内容交付的客户端就是浏览器,那直接发送 HTML 啊,愣着干什么?
让所有用户输入验证都在服务器端进行。在开发过程中,尽量只通过一次接入服务器的消息往返即完成所有用户输入验证。没错,根本不需要 AJAX/JavaScript。JavaScript 基本没法真正改善用户体验;相反,JavaScript 验证和 JavaScript 本体常常会破坏网站的自然流程,令 TAB 等键和其他元素没法正常工作。另外,任何不在服务器端进行的输入验证都属于错误!换言之,任何基于客户端的输入验证——无论是由 JavaScript 还是浏览器内置的 HTML 5 来实现——都可以被绕过,毕竟它们可都在客户端上。
别再往浏览器上发送字体了。没多少人真正关心字体,只要不是太难看就可以。做个用户测试,结果可能会让你意外哦。让浏览器从操作系统中直接选择字体就好。
别再把浏览器发到 CDN 去了。这样很危险、不利于隐私,甚至可能损害用户权益。在本地交付内容就行。
去掉广告、删掉弹窗,别在页面上放那么多演示文稿、邮件列表和注册提示之类的垃圾内容。
还用户一片清静畅快的天地,让网站内容尽量清晰简洁。东西多了反而没人看。
别在网站上使用 Google Analytics、Facebook 链接和其他社交媒体垃圾!我们得学着摆脱这些固有元素。另外,你真的需要什么统计数据吗?如果是,难道服务器端收集到的统计数据还不够?真正需要的信息大部分都可以由服务器端直接收集,对吧?另外,如果选择跨服务器运行,日志还会被自动发送至日志服务器。所以别再靠什么 Google Analytics 了,毕竟这东西既没必要、立场也很值得怀疑——没准谷歌一直在骗你。
不要使用不适合 Web 开发的编程语言。Python 和 Ruby 就是两种绝不该出现在 Web 上的语言。总之,编程语言必须针对性能进行优化,甚至可以考虑在具有严苛性能要求的具体任务中使用 C。由此带来的巨量性能提升可能对应着超出大家想象的成本节约。
牢牢把握所开发软件的所有权。这种所有权,意味着我们需要对项目中发生的一切负责。这不仅有助于工程质量提升,也会彻底改变我们的开发心态。一旦出了问题,那就是我们自己的责任。项目在用户计算机上耗了多少电是我们的事、项目对环境的影响是我们的事、项目提供的残疾人使用体验是我们的事、项目对未来的影响也是我们的事。如果不愿承担这份责任,就别随便掺和进来。
别再被趋势和炒作牵着鼻子走。大家应该已经感受到,大多数趋势和炒作都是利益相关方的刻意引导加上一大帮无知群众的盲目推动。所以遇到问题自己多想想,别急着站队。
原文链接:
https://12ft.io/api/proxy?q=https://unixsheikh.com/articles/so-called-modern-web-developers-are-the-culprits.html
逆锋起笔
专注于程序员圈子,你不但可以学习到java
、python
等主流技术干货和N多个源码
分享,还可以第一时间获悉最新技术动态
、内测资格
、BAT大佬的经验
、精品视频教程
、副业赚钱
经验,微信搜索readdot
关注!