SQLite之父炮轰回车换行:CRLF已经过时 应当被废除

对于程序员而言,CRLF(回车换行)肯定不陌生,其中CR (r,回车) 是将光标移动到当前行的最左侧,而和LF (n,换行)则是将光标下移一行。此外还有新行 (NL,NewLine),它是指将光标下移一行,并移动到当前行的最左侧。

SQLite之父炮轰回车换行:CRLF已经过时 应当被废除

CRLF 的存在主要是为了兼容不同操作系统的文件格式,通常Windows使用CRLF作为换行符,而Unix/Linux和macOS只使用LF。近日SQLite数据库的创始人D. Richard Hipp提出,CRLF已经过时,应当被废除。

Hipp认为,CRLF的起源可以追溯到70年前的机械电传打字机时代,而现代计算机环境中早已不再需要这样的字符组合。

他指出,在大多数编程语言和现代机器中,仅使用LF即可表示新行,而CR在大多数情况下已无实际用途。

Hipp甚至提出了四点建议,包括停止使用不必要的CR字符、更改Unicode中U+000a的名称为”newline”而非”linefeed”等。

此观点一出,引发了诸多程序员强烈的共鸣,同时也有不少人持不同的看法。

有人认为CRLF在跨平台文本文件处理中常常引发混乱,尤其是在编程时解析这些文件时。

但同时也有观点认为,处理不同或混合的行结尾并不是一个复杂的问题,不应该因为个别人的便利而改变现有的标准。

还有观点指出,真正的问题在于那些设计不良的Unix工具和Git,它们在处理行结尾时存在问题。

面对讨论Hipp最终撤回了自己的提议,他承认,尽管自己的想法在理论上几乎成功,但现实中的软件依赖情况比他预想的要复杂得多。

原创文章,作者:快科技,如若转载,请注明出处:https://www.itnone.com/news/2024/10/5039.html

(0)
快科技的头像快科技媒体
上一篇 2024 年 10 月 15 日 下午3:24
下一篇 2024 年 10 月 15 日 下午3:24

相关推荐

发表回复

登录后才能评论