”action base programming“ 宣言

2020-11-26 19:34:57 +08:00
 oaa

就我自己的观察来看,日常的程序员的工作由一系列 action 组成,这种 action 的组合可以类比于所有在 emacs 上的操作由一系列 command 组成. unix 哲学所带来的强大的复用和组合的能力所导致的一个后果是,为了表达出这些有明确语义的 action 我们往往要组合多个命令行工具(awk,sed,grep etc).在这时关注的重点不由得从具体的语义(想做什么)变成了繁琐的实现(该怎么做). 正如 emacs 的精华(在我看来)在于强大的自定义 command 的能力,和良好的交流这些 command 的场所(包管理市场),我们也应当将那些常用的对象和 action 整理出来,使的对于这些 actions 的讨论能够有一个场所.从而能够帮助我们找到 action 的最佳实现,和发现那些之前没有意识到的 actions.

本项目(包括整个 awesome-code-actions)旨在整理出那些常用对象的 action,给他们一个名字,给程序常与之交互的对象一个抽象一些的方法,使的我们的焦点更关注于对象的语义(对象可以那些方法,我可以对其做什么)而不是语法(具体怎么组合使用工具去达到我们的目的). awesome-shell-actions 关注于对于组合和调用命令行所能表达的 action 的整理与维护 每个对象由 scripts 下的××-actions.sh 定义,脚本中的每个以 xx-开始的函数定义了一个以这个对象为主体的 action.

awesome-shell-actions

1877 次点击
所在节点    分享创造
4 条回复
salaryfly
2020-11-26 19:52:32 +08:00
虽然还没看懂,但是感觉很厉害的样子,支持一下!
levelworm
2020-11-30 11:12:29 +08:00
有点意思,我也想过类似的事情。有时候在堆栈溢出上搜索,搜索得其实就是 action 。
oaa
2020-12-01 14:41:51 +08:00
@levelworm 对头 就是这个意思
oaa
2020-12-01 14:42:27 +08:00
本质上讲还有 ide-actions 等各种 actions

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/729610

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX