标签: Web 开发
数据节约
Datensparsamkeit 是一个德语单词,很难准确地翻译成英语。它是一种关于我们如何捕获和存储数据的态度,即我们应该只处理我们真正需要的数据。
嵌入助手
最近几周,我一直在玩和研究编译器编译器工具。这些工具的一个共同特点是,它们都有一个语法文件,其核心是描述语言语法的产生式规则。除了描述语法之外,该文件还向解析器提供有关如何在识别语言元素时处理语言的信息。在大多数编译器编译器工具中,这些指令在语法中表示为动作 - 通常这些动作被编码为高级语言中的代码片段。
页面对象
当您针对网页编写测试时,您需要引用该网页中的元素才能点击链接并确定显示的内容。但是,如果您编写的测试直接操作 HTML 元素,则您的测试将很容易因 UI 的更改而变得脆弱。页面对象使用特定于应用程序的 API 包装 HTML 页面或片段,允许您在不深入研究 HTML 的情况下操作页面元素。
表示域数据分层
模块化信息丰富的程序最常见的方法之一是将其分为三大层:表示层(UI)、域逻辑层(又称业务逻辑层)和数据访问层。因此,您经常会看到 Web 应用程序被分为 Web 层(了解如何处理 HTTP 请求和渲染 HTML)、业务逻辑层(包含验证和计算)和数据访问层(确定如何管理数据库或远程服务中的持久数据)。
按新鲜度细分
媒体网站面临的最大问题之一是如何处理大量的流量。媒体的全部意义在于吸引眼球,但如果同时获得的点击量过多,性能缓慢会导致问题并损害您的声誉。Web 流量的突发性加剧了这个问题。您的网站可能以可管理的速度运行,然后突然出现一条重大新闻,导致访问量激增。我们的一位客户在几分钟内就经历了两倍的访问量峰值。
隔离 DOM
单页 Web 应用程序通常会变成 jQuery 大杂烩,其中应用程序逻辑、DOM 操作和服务器访问都混杂在一起。这种关注点的混合使得此类应用程序比应有的更难理解和测试。隔离 DOM 是一种模块化策略,它将所有 DOM 操作都分离到专用的 JavaScript 对象中。
无服务器
无服务器架构是基于互联网的系统,其中应用程序开发不使用通常的服务器进程。相反,它们完全依赖于第三方服务、客户端逻辑和服务托管的远程过程调用 (FaaS) 的组合。
透明编译
越来越多的 Web 开发人员正在使用像 CoffeeScript 和 SCSS 这样的语言,这些语言可以编译成在浏览器中执行的其他文本源语言。这种源到源编译器(也称为代码转换器)并不新鲜,Cfront 在 C++ 的早期被广泛用于生成目标 C 代码。但对我来说,CoffeeScript 和 SCSS 作为*透明*编译器有一个区别
Web2.0
在过去几年中,关于 Web 2.0 的讨论很多,既有关于其概念的讨论,也有关于其作为 新词 的价值的讨论。我对这方面的参与有限,我阅读并听取了蒂姆·奥莱利 (Tim O'Reilly) 关于这个主题的演讲,并参加了他组织的一个研讨会。然而,外界有很多困惑,所以我想是时候让我做一次徒劳的尝试来减少这种困惑了。(因为我在很大程度上是在解读蒂姆的意思,如果我们对任何事情有不同意见,你应该相信他。)
前往奥胡斯 2012
过去几个月一直在奔波(到最后我计算出,在过去的 44 天里,我有 40 天都在路上),这就是为什么我的网站一直很安静的原因。现在我回家了,可以回顾一下其中的一些事情 - 而 goto 大会 总是充满了值得反思的事情。