首页 时政热点 科技头条 智能AI 安全攻防 数码硬件 开发者生态 汽车 游戏 社会热点 开源推荐 医疗健康 归档 标签 关于

小编程技巧

摘要

Small Programming Tricks Day to day, I think a surprising amount of engineering productivity comes from small nuggets of knowledge: being aware that a language feature exists; knowing that an unexplai...

you that the and can knowledge You your history for
2026-09-17 1 阅读 约6分钟阅读 signa11
分享:
字号:
小编程技巧日复一日,我认为工程生产力的惊人数量来自于小块知识:意识到语言功能的存在;知道无法解释的 tcp 延迟可能与 TCP_NO_DELAY 设置和 Nagle 算法有关;知道摆脱困境的正确 git 咒语;或者知道 sed 重写文件的技巧。从某种意义上说,这是不言而喻的:你所知道的任何东西都将由更小的知识片段组成。当然,那些较小的知识很重要。但我认为有一些知识特别有价值,并且不需要大量支持性的心理基础设施。您不需要了解任何 python 即可使用 python3 -m http.server 在目录中启动一个简单的服务器,但它仍然可能使您的工作稍微容易一些。让我分享几个例子:您可能知道 ctrl + r 允许搜索终端的命令历史记录,但是如果您安装了 fzf ,则可以对其进行设置,以便 ctrl + r 进行模糊搜索。如果您想要更强大的功能,atuin 可以用可搜索的 SQLite 数据库替换您的 shell 历史记录。 per-directory-history 允许您在搜索已在特定目录中运行的命令或搜索所有以前的命令之间来回切换。最后,您可以配置要存储多少历史记录: stackoverflow Question 。您可以不使用 FROM 进行 SELECT 。这对于测试数据库中的函数实际如何工作或提醒自己 SELECT TRUE <> NULL 如何工作非常有用。 PostgresSQL 和 MySQL 都支持解释分析,它将实际运行您尝试优化的查询,并为您提供有关其性能的更多信息。在正则表达式中, \b (单词边界断言)可以轻松查找单词的开头或结尾。您可以使用对数和指标来了解您感兴趣的字段的值的分布:const bucket = Math。楼层 (Math.log10(userInGroupCount)) 指标。增量(“my_metric”,{桶});现代 JS 现在支持 Array.flatMap 、 Object.entries 和 Promise.withResolvers 。在 NodeJS 中,您可以通过创建 https.Agent 并将其提供给您的 http 请求来保持对外部资源的连接开放: fetch(url, {method, agent}) 。这会对延迟产生巨大影响。 git log -S 模式(“git pickaxe”)可以为您提供在代码库中添加或删除字符串的所有提交。它非常有用,尤其是对于较旧的代码库! ( git log -G 模式类似,但也会显示该行何时被移动)与 cd - 类似,您可以使用 git checkout - 来检查您以前的 HEAD。您可能不需要 find 。许多 find 命令可以替换为像 **/*.md 这样的通配符。大多数 shell 开箱即用地支持此功能,但对于 bash,您需要使用 shopt -s globstar 打开此功能。同样,大多数人可能会想使用 rg (ripgrep) 而不是 grep 、 ack 或 ag 。默认情况下,zsh 的高级自动完成功能未打开: if typebrew &>/dev/null;然后 FPATH = " $(brew --prefix ) /share/zsh/site-functions: ${ FPATH } " fi autoload -Uz compinit compinit 您可能已经知道所有这些事情!或者,您可能在一个使所有这些小技巧完全无用的领域中工作。即使这套特定的技巧对你没有用,我打赌你也有自己多年来积累的技巧,可以让你的工作变得更轻松。在公司,我认为更多的知识往往是这种小而高杠杆的金块:要调试 $PROBLEM,请使用 $DATA_SOURCE。 $PERSON 对 $AREA 了如指掌,如果您遇到困难,他们很乐意为您提供帮助。有关于 $HARD_THING $OVER_HERE 的好文档。当 $THING 发生时,这意味着我们应该手动横向扩展。要滚动重新启动服务,请运行 $THIS_COMMAND。这个 $UTIL 使得 $THAT_PROBLEM 易于编写脚本。在以前的一家公司,我每天与工程团队分享一个关于 slack 的技巧,包括技术和公司特定的技巧,人们发现它们非常有用。即使您知道 9/10 技巧,第 10 个文档或技术也可能会为您节省一些时间!每天一个技巧是正确的数字,可以避免人们被知识淹没,并且偶尔可以引发有用的讨论。如果您是公司的高级工程师,您可能会考虑做类似的事情。
这篇文章对您有帮助吗?

订阅66必读

每日精选科技资讯,直达你的邮箱