×
¥
查看详情
🔥 会员专享 文生文 其它

iOS函数注释生成专家

👁️ 84 次查看
📅 Dec 5, 2025
💡 核心价值: 本提示词专为iOS开发者设计,能够根据输入的Swift函数代码自动生成专业、规范的函数注释文档。通过分析函数结构、参数类型、返回值逻辑和功能描述,生成符合苹果官方文档标准的注释格式,包括参数说明、返回值描述、异常处理等关键信息,帮助开发者提高代码可读性和维护性,确保团队协作效率。

🎯 可自定义参数(2个)

函数代码
需要生成注释的Swift函数代码
注释语言
生成的注释文档使用的语言

🎨 效果示例

  • 函数功能概述: 异步拉取指定城市的天气数据。函数构建带有 city 与 key 查询参数的请求 URL,设置请求超时时间,使用 URLSession 发送请求并校验 HTTP 状态码为 2xx,最后将返回的 JSON 数据解码为 Weather 模型。若 URL 构建失败、网络状态异常或解码失败,将抛出对应的错误。

  • 参数说明:

    • city: String 要查询的城市名称。将作为查询参数 city 进行 URL 编码后拼接到请求中。
    • apiKey: String 服务端 API 访问密钥。将作为查询参数 key 发送到接口。
    • timeout: TimeInterval = 8 请求超时时间(秒),默认 8 秒。对应 URLRequest.timeoutInterval。
  • 返回值描述:

    • Weather 成功时返回解码后的天气数据模型,包含以下字段:
      • city: 城市名称
      • temperature: 温度(Double)
      • condition: 天气状况描述
  • 使用示例: do { let weather = try await fetchWeather(for: "Beijing", apiKey: "YOUR_API_KEY") print("城市:(weather.city),温度:(weather.temperature),天气:(weather.condition)") } catch let error as WeatherError { switch error { case .invalidURL: print("请求地址无效") case .networkFailure: print("网络请求失败或状态码非 2xx") case .decodingFailure: print("数据解码失败") } } catch { // 其他可能由 URLSession 抛出的错误(例如 URLError) print("未知错误:(error)") }

  • 注意事项:

    • 错误抛出:
      • WeatherError.invalidURL:当 URLComponents 无法构建有效的 URL 时抛出。
      • WeatherError.networkFailure:当响应状态码不在 200..<300 范围内时抛出(包含 3xx/4xx/5xx)。
      • WeatherError.decodingFailure:当 JSONDecoder 解码 Weather 模型失败时抛出(如字段缺失或类型不匹配)。
      • 其他错误:URLSession.shared.data(for:) 过程中产生的系统错误(如 URLError.timedOut、cancelled 等)会原样向上抛出。
    • 超时设置通过 URLRequest.timeoutInterval 控制,传入的 timeout 会直接生效。
    • 该函数使用 JSONDecoder 的默认配置,需确保后端返回的 JSON 字段与 Weather 结构体属性名称和类型一致。
    • 仅将 2xx 视为成功,服务端即便返回错误信息的 JSON,也会因状态码不在 2xx 而被视为网络失败。
    • 此函数为异步方法(async/await),调用方需在异步上下文中使用;如需更新 UI,请在主线程/主 actor 上进行。
    • 示例接口为 https://api.example.com/weather,city 与 key 参数会被正确进行百分号编码。请妥善保管 apiKey,避免在客户端明文暴露。

Function Overview

Returns a new array with duplicate elements removed while preserving order. By default, the function keeps the first occurrence of each unique element. If keepLast is true, it keeps the last occurrence of each unique element, preserving their order as it appears in the original array.

Parameters

  • items: [T] The source array to deduplicate. Element type T must conform to Hashable.
  • keepLast: Bool (default: false)
    • false: Keep the first occurrence of each unique element (stable first-keep).
    • true: Keep the last occurrence of each unique element (stable last-keep).

Return Value

  • [T]: A new array containing unique elements according to the chosen policy (first or last), with order preserved among the kept elements.

Example Usage

// Keep first occurrence (default)
let input = [1, 2, 1, 3, 2, 4]
let uniqueFirst = deduplicated(input)
// uniqueFirst: [1, 2, 3, 4]

// Keep last occurrence
let uniqueLast = deduplicated(input, keepLast: true)
// uniqueLast: [1, 3, 2, 4]

// Works with any Hashable type
let names = ["Ana", "Bob", "Ana", "Cara", "Bob"]
let firstKept = deduplicated(names)                   // ["Ana", "Bob", "Cara"]
let lastKept  = deduplicated(names, keepLast: true)   // ["Ana", "Cara", "Bob"]

Notes

  • Uniqueness is determined by Hashable/Equatable conformance of T. For custom types, ensure Hashable and equality are defined correctly.
  • Time complexity: O(n); Space complexity: O(n), where n is items.count.
  • Ordering:
    • keepLast == false: Keeps the first occurrence and preserves the original order of first appearances.
    • keepLast == true: Keeps the last occurrence and preserves the original order of those last appearances.
  • Floating-point caveat: Because NaN != NaN in Swift, multiple NaN values are treated as distinct and will not be deduplicated.
  • 函数功能概述

    • 将指定的 Date 根据给定的格式模板、时区标识和本地化设置格式化为字符串。当提供的时区标识无效时抛出错误。
  • 参数说明

    • date: Date
      • 需要被格式化的日期时间对象。
    • pattern: String = "yyyy-MM-dd HH:mm"
      • 日期时间格式模板,直接赋值给 DateFormatter.dateFormat。
      • 使用 Unicode TR-35 标准的格式符号(大小写敏感),例如:
        • yyyy 年、MM 月、dd 日、HH 24小时、hh 12小时、mm 分、ss 秒、zzz 时区缩写等。
    • timeZoneID: String? = nil
      • IANA 时区标识(例如 "UTC"、"Asia/Shanghai"、"America/Los_Angeles")。
      • 传入 nil 时使用系统当前时区。
      • 传入非空但无效的标识时将抛出 DateFormatError.invalidTimeZone。
    • locale: Locale = .current
      • 本地化设置,影响月份/星期名称、数字形态等语言化结果。
      • 不影响时区,仅决定文本如何本地化显示。
  • 返回值描述

    • String
      • 按照给定格式、时区和本地化设置生成的日期时间字符串。
  • 使用示例

    • 基本用法(使用默认格式、系统时区和当前语言环境):
      • let text = try format(date: Date())
    • 指定格式、时区与本地化:
      • let date = Date(timeIntervalSince1970: 1_696_000_000) // 示例时间戳 let text = try format( date: date, pattern: "yyyy-MM-dd HH:mm zzz", timeZoneID: "Asia/Shanghai", locale: Locale(identifier: "zh_CN") )
    • 异常处理(无效时区标识):
      • do { _ = try format(date: Date(), timeZoneID: "Invalid/Zone") } catch DateFormatError.invalidTimeZone { print("提供的时区标识无效") } catch { print("其他错误:(error)") }
  • 注意事项

    • 错误抛出:仅当 timeZoneID 非空且无法解析为有效的 TimeZone 标识时抛出 DateFormatError.invalidTimeZone。
    • 默认时区:timeZoneID 为 nil 时结果依赖运行环境的当前系统时区,不同设备或设置下结果可能不同。
    • 格式模板:pattern 使用 Unicode TR-35 标准,大小写严格区分(例如 MM 表示“月”,mm 表示“分”;HH 为 24 小时制,hh 为 12 小时制)。
    • 本地化:locale 影响语言化输出(如月份/星期名),若需要固定、不随用户设置变化的“机器可读”格式,建议使用 Locale(identifier: "en_US_POSIX")。
    • 性能与线程安全:函数每次调用都会新建 DateFormatter(线程安全),但高频调用可能有性能开销;需要时可在上层对 DateFormatter 做缓存复用。

示例详情

📖 如何使用

30秒出活:复制 → 粘贴 → 搞定
与其花几十分钟和AI聊天、试错,不如直接复制这些经过千人验证的模板,修改几个 {{变量}} 就能立刻获得专业级输出。省下来的时间,足够你轻松享受两杯咖啡!
加载中...
💬 不会填参数?让 AI 反过来问你
不确定变量该填什么?一键转为对话模式,AI 会像资深顾问一样逐步引导你,问几个问题就能自动生成完美匹配你需求的定制结果。零门槛,开口就行。
转为对话模式
🚀 告别复制粘贴,Chat 里直接调用
无需切换,输入 / 唤醒 8000+ 专家级提示词。 插件将全站提示词库深度集成于 Chat 输入框。基于当前对话语境,系统智能推荐最契合的 Prompt 并自动完成参数化,让海量资源触手可及,从此彻底告别"手动搬运"。
即将推出
🔌 接口一调,提示词自己会进化
手动跑一次还行,跑一百次呢?通过 API 接口动态注入变量,接入批量评价引擎,让程序自动迭代出更高质量的提示词方案。Prompt 会自己进化,你只管收结果。
发布 API
🤖 一键变成你的专属 Agent 应用
不想每次都配参数?把这条提示词直接发布成独立 Agent,内嵌图片生成、参数优化等工具,分享链接就能用。给团队或客户一个"开箱即用"的完整方案。
创建 Agent

✅ 特性总结

一键为Swift函数生成规范注释,自动匹配苹果文档格式,随写随出。
自动识别参数与返回含义,补全用途、边界与异常说明,在评审中更易沟通。
内置用法示例与注意事项,复制即可落地到项目,降低新人上手门槛和风险。
支持中文或英文注释风格,团队对外文档与对内协作同时兼顾,减少翻译成本。
根据函数上下文自动提炼功能概述,让代码意图清晰可读,便于长期维护。
可定制注释模板与语气,统一团队风格,快速满足不同项目规范与审查标准。
重构或接手存量代码时,快速补齐关键说明,显著缩短理解与交接时间成本。
一键导出为Markdown片段,便于同步到知识库、代码仓库与教学资料。
严格约束不写臆测内容,注释均基于代码事实,降低文档与实现偏差风险。

🎯 解决的问题

让AI充当“iOS注释专家”,从Swift函数片段中一键生成专业、统一、可直接合入仓库的函数注释。以贴近苹果文档风格的结构化说明,覆盖功能概述、参数/返回值释义、调用示例与注意事项,帮助个人与团队显著提升代码可读性、缩短评审周期、降低新成员上手成本,并在重构、开源贡献、教学演示等场景中实现“写代码=出文档”。支持中英双语输出,试用即可立见成效,适合快速验证并规模化落地。

🕒 版本历史

当前版本
v2.1 2024-01-15
优化输出结构,增强情节连贯性
  • ✨ 新增章节节奏控制参数
  • 🔧 优化人物关系描述逻辑
  • 📝 改进主题深化引导语
  • 🎯 增强情节转折点设计
v2.0 2023-12-20
重构提示词架构,提升生成质量
  • 🚀 全新的提示词结构设计
  • 📊 增加输出格式化选项
  • 💡 优化角色塑造引导
v1.5 2023-11-10
修复已知问题,提升稳定性
  • 🐛 修复长文本处理bug
  • ⚡ 提升响应速度
v1.0 2023-10-01
首次发布
  • 🎉 初始版本上线
COMING SOON
版本历史追踪,即将启航
记录每一次提示词的进化与升级,敬请期待。

💬 用户评价

4.8
⭐⭐⭐⭐⭐
基于 28 条评价
5星
85%
4星
12%
3星
3%
👤
电商运营 - 张先生
⭐⭐⭐⭐⭐ 2025-01-15
双十一用这个提示词生成了20多张海报,效果非常好!点击率提升了35%,节省了大量设计时间。参数调整很灵活,能快速适配不同节日。
效果好 节省时间
👤
品牌设计师 - 李女士
⭐⭐⭐⭐⭐ 2025-01-10
作为设计师,这个提示词帮我快速生成创意方向,大大提升了工作效率。生成的海报氛围感很强,稍作调整就能直接使用。
创意好 专业
COMING SOON
用户评价与反馈系统,即将上线
倾听真实反馈,在这里留下您的使用心得,敬请期待。
加载中...
📋
提示词复制
在当前页面填写参数后直接复制: