SuperAPI AI 工具集

elixir-idioms

编程与开发

查看项目

更新于 10-16 07:25

技能介绍

用途:提供编写符合 Elixir 惯用法、具备 BEAM 意识的代码参考,适用于设计进程、排查生产环境问题等场景。

主要能力:给出不可违反的铁律,如无运行时理由不创建进程、消息会被复制需保持小体积、guard 中只用 and/or/not、外部数据用 changeset、rescue 仅用于外部代码、禁止动态创建原子、编译期读文件需声明 @external_resource、长生命周期进程必须纳入监督树、第三方库 API 需封装、Mix 任务只启动所需部分、生成进程前先捕获 locale。同时说明 BEAM 架构原因:进程廉价、内存完全隔离、消息复制、按进程 GC、let it crash。

使用方式:按决策树选择控制流(case、with、cond/if)、错误处理({:ok,}/{:error,}、raise、rescue)与 OTP 组件(普通函数、Agent/ETS、GenServer、Task)。示例包括函数头模式匹配、with 处理正常路径、Task.Supervisor.async_nolink 配合 Task.yield 与 Task.shutdown。

限制与注意:资料未提供安装命令、收费或平台信息。常见陷阱包括用 length(list)==0 判断空列表、list ++ [item] 追加、String.to_atom 处理输入、spawn 中捕获 conn、使用已弃用的 unless。详细内容见 references 目录下各文件,如 pattern-matching.md、otp-patterns.md、error-handling.md、with-and-pipes.md、troubleshooting.md、anti-patterns.md、mix-tasks.md、elixir-118-features.md、elixir-120-type-system.md。