|
5 | 5 |
|
6 | 6 | 你也可以为这个项目出一份力,如果发现有价值的信息、文章、工具等可以到 [Issues](https://github.com/SwiftOldDriver/iOS-Weekly/issues) 里提给我们,我们会尽快处理。记得写上推荐的理由哦。有建议和意见也欢迎到 [Issues](https://github.com/SwiftOldDriver/iOS-Weekly/issues) 提出。 |
7 | 7 |
|
8 | | -## 新闻 |
9 | | - |
10 | | -> 行业相关的新闻、趣事、看法 |
11 | | -
|
12 | | -## Developer - 设计开发加速器 |
13 | | - |
14 | | -> 设计开发加速器相关活动 |
15 | | -
|
16 | | -## 新手推荐 |
17 | | - |
18 | | -> 收集一些对新手友好且质量不错的文章 |
19 | | -
|
20 | 8 | ## 文章 |
21 | 9 |
|
22 | | -> 写的不错的技术博客,包含但不局限于 iOS、多端统一、设计、产品等 |
23 | | -
|
24 | 10 | ### 🐕 [Exploring interactive snippet intents](https://www.nutrient.io/blog/wwdc25-snippet-intents/) |
25 | 11 |
|
26 | 12 | [@BluesJiang](https://github.com/BluesJiang): 这篇文章主要探索了一下 App Intent 框架。苹果在 WWDC25 上引入了 App Intent 的可交能力,在 Widget、App Shortcut、Intent 中都可以使用。作者探索了这个 App Intent 的交互框架和编码逻辑,旨在了解这个交互框架可以做什么,不可以做什么,交互分范式是什么样的。 |
27 | 13 | 这个框架使用 SwiftUI 编码,但是交互逻辑与方式则有很大的不同,在 App Intent 框架下,不存在传统生命式框架下的状态和交互变化,甚至按钮的触发事件也不是直接的,而是间接通过注册的 Intent 来完成响应。 |
28 | 14 | 如果有需要在 App 外做即时响应的功能,可以考虑研究一下。 |
29 | 15 |
|
30 | | -### 🐎 [使用“git mv”命令记录 Git 中文件名的大小写更改](https://oleb.net/2025/git-mv-case-change/) |
| 16 | +### 🐎 [使用 "git mv" 命令记录 Git 中文件名的大小写更改](https://oleb.net/2025/git-mv-case-change/) |
31 | 17 |
|
32 | 18 | [@含笑饮砒霜](https://weibo.com/chinafishnews/):这篇文章主要介绍了在 macOS 和 Windows 默认的大小写不敏感但保留大小写的文件系统中,直接修改文件名大小写时 Git 不会记录该名称变更,可能导致文件系统与 Git 存储的文件名不一致,进而引发后续使用(如跨大小写敏感文件系统、CI 打包)的问题,同时给出解决方案:使用 git mv 命令记录文件名大小写变更,若不便使用该命令,可通过 “先重命名为临时名称、再改为目标名称” 的两阶段提交方式实现同样效果。 |
33 | 19 |
|
|
45 | 31 |
|
46 | 32 | * 基础规范:使用对应语言的命令行参数解析库,Swift 下是 [swift-argument-parser](https://github.com/apple/swift-argument-parser);成功时返回 0,失败返回非 0;核心输出到 `stdout`(支持管道传递),日志,错误信息输出到 `stderr`(避免干扰管道) |
47 | 33 | * 帮助和文档:默认运行无参数时显示简洁的帮助,`-h/--help` 对应完整的帮助说明。 |
48 | | -* 输出设计:人类可读最重要,如果为了人类可读破坏了机器可读,可以增加 `--plain` 参数输出机器可读内容,这有利于 grep、awk工具的集成 |
| 34 | +* 输出设计:人类可读最重要,如果为了人类可读破坏了机器可读,可以增加 `--plain` 参数输出机器可读内容,这有利于 grep、awk 工具的集成 |
49 | 35 | * 错误处理:避免冗余输出,核心错误应该放在末尾 |
50 | 36 | * 参数和标志:优先使用 `flags`,而不是依赖位置读参数;所有 `flags` 都提供短格式和长格式两种(`-h/--help`);危险操作增加一个保护措施:输入名称、`--force` 标志等 |
51 | | -* 健壮性与兼容性:及时响应用户的输入(100ms以内),如果流程耗时增加进度反馈(进度条) |
| 37 | +* 健壮性与兼容性:及时响应用户的输入(100ms 以内),如果流程耗时增加进度反馈(进度条) |
52 | 38 | * 环境变量:避免占用 POSIX 标准变量;本地用 `.env` 管理但不应把 `.env` 当做配置文件;不要使用环境变量存储密钥等重要信息,这样很容易泄漏,推荐通过文件或密钥管理服务 |
53 | 39 |
|
54 | | -## 工具 |
| 40 | +### 🐕 [SwiftUI Group Still(?) Considered Harmful](https://twocentstudios.com/2025/12/12/swiftui-group-still-considered-harmful/) |
55 | 41 |
|
56 | | -> 开发过程中常用的工具,及一些新工具的介绍 |
| 42 | +[@Damien](https://github.com/ZengyiMa):本文指出 SwiftUI 的 Group 会把修饰符“分发”给每个子视图,曾让 onAppear 被多次触发。onAppear/task 虽被苹果特殊处理,但文档未改,且自定义修饰符与在 List 内仍照分发。解决方案为:除非必须一次性给兄弟视图统一加修饰符,否则别用 Group,直接重复代码或拆视图更稳妥。 |
57 | 43 |
|
58 | 44 | ## 代码 |
59 | 45 |
|
|
88 | 74 |
|
89 | 75 | 对于依赖 AI 自动编译、跑测试、定位问题的场景而言,这意味着更低的 Token 消耗、更稳定的 Agent 行为,以及更高效的工具调用体验。XcodeBuildMCP 是连接 Xcode 与 AI 工作流的关键基础设施,尤其适合构建长期、可持续的智能开发系统。 |
90 | 76 |
|
91 | | - |
92 | | -### 🐕 [SwiftUI Group Still(?) Considered Harmful](https://twocentstudios.com/2025/12/12/swiftui-group-still-considered-harmful/) |
93 | | - |
94 | | -[@Damien](https://github.com/ZengyiMa):本文指出 SwiftUI 的 Group 会把修饰符“分发”给每个子视图,曾让 onAppear 被多次触发。onAppear/task 虽被苹果特殊处理,但文档未改,且自定义修饰符与在 List 内仍照分发。解决方案为:除非必须一次性给兄弟视图统一加修饰符,否则别用 Group,直接重复代码或拆视图更稳妥。 |
95 | | - |
96 | | - |
97 | | -## 书 |
98 | | - |
99 | | -> 比较不错的书的推荐和书评 |
100 | | -
|
101 | 77 | ## 音视频 |
102 | 78 |
|
103 | 79 | ### 🐕 [CS193 Stanford 2025](https://cs193p.stanford.edu/) |
|
0 commit comments