本期是 Swift 编辑组自主整理周报的第五十九期,每个模块已初步成型。各位读者如果有好的提议,欢迎在文末留言。
Swift 周报在 GitHub 开源,欢迎提交 issue,投稿或推荐内容。目前计划每两周周一发布,欢迎志同道合的朋友一起加入周报整理。
看人之长,世间一切尽是吾师,Swift社区一路走来没有敌兵,全是良师挚友。昔我一身旧雪,明我春风摇曳!👊👊👊
周报精选
新闻和社区:苹果 AI 部分性能超过 GPT4提案:允许推断 TaskGroup 的 ChildTaskResult 类型提案正在审查中
Swift 论坛:提议正则表达式反向匹配
推荐博文:宣布 Swift 同态加密
话题讨论: 在现代高等教育中,大学生是否应尽早锁定专业一直备受争论,对此你怎么看?
上期话题结果
通过结果可以看出,大多数人认为更多的传统岗位将会被智能系统所代替。
2024 年 8 月 2 日
据新华社旧金山 8 月 1 日电 苹果公司 1 日发布的财报显示,2024 财年第三季度(截至 2024 年 6 月 29 日),公司实现营业收入 857.8 亿美元,同比增长约 4.9%;净利润 214.5 亿美元,同比增长约 7.9%。
财报显示,苹果公司当季手机销售额从上一财年同期的 396.7 亿美元降至 393 亿美元,略有下滑;可穿戴、家用及配件产品销售额从 82.8 亿美元降至 81 亿美元;服务收入由 212.1 亿美元升至 242.1 亿美元,增幅超过 14%。
苹果公司首席财务官卢卡·马埃斯特里在财报中表示,当季该公司活跃设备安装数量在所有地区都创下历史新高。
苹果公司首席执行官蒂姆·库克表示,公司将继续大力投资创新此前在全球开发者大会上推出的个人智能系统“苹果智能”。(来源:新京报)
2024 年 7 月 31 日
苹果公司最新发布论文,分享了关于 Apple Intelligence 模型的相关细节,称其部分性能已经超过 OpenAI 的 GPT-4。据论文描述,苹果自研大模型在指令遵循、文本总结方面测试超 GPT-4。数据显示,在电子邮件、信息和通知汇总方面,苹果模型AFM的满意度分别为 71.3%、63% 和 74.9%。(来源:IT之家)
2024 年 7 月 30 日
近日,苹果公司最新推出的一系列产品引发了业界广泛关注。其中,iOS 18.1 和 iPadOS 18.1 开发者预览版 Beta 更新被广泛讨论。
据了解,这些更新包括了备受期待的通话录音功能。用户只需在 Notes 或 Phone 应用程序上点击录音按钮即可捕获音频和文字信息,并通过声音消息向对方发送通知。这项设计引起了网友们的热议,部分网友表示支持,认为这是苹果公司在隐私保护方面做出的努力;而另一些网友则认为这样反而降低了实用性,并调侃道“太尬了”“真的挺离谱的”“事先通知对方还录个啥呀?还不如没有这个功能”。对此,苹果官方回应称,这样的设计是为了保护双方的隐私。
值得一提的是,在 iPhone 通话录音会进行通知的情况下,大部分 iPhone 用户在必要时可能会选择其他方式进行通话记录。这种功能的使用频率可能会相对较低。(来源:中关村在线)
SE-0427 不可复制的泛型 提案通过审查。该提案已在 四十九期周报 正在审查的提案模块做了详细介绍。
SE-0438 Metatype 关键路径 提案通过审查。该提案已在 五十五期周报 正在审查的提案模块做了详细介绍。
SE-0442 允许推断 TaskGroup 的 ChildTaskResult 类型 提案正在审查。
TaskGroup和ThrowingTaskGroup目前要求在创建时始终指定其两个泛型之一(ChildTaskResult)。由于SE-0326引入的闭包参数/结果类型推断的改进,在大多数情况下,可以通过允许编译器推断这两种泛型来简化这一点。
内容大概
Swift基金会的发布引发了关于内存管理和API兼容性的讨论。主要要点如下:
这些变化反映了 Swift 基金会在保持兼容性的同时,努力提高性能和安全性。
2) 提议正则表达式反向匹配
内容大概
此提案旨在增强 Swift 正则表达式的功能,使其更加灵活和强大,同时保持与现有代码的兼容性。
3) 讨论请帮助我理解将 Swift 6 警告添加到 Swift 5 的决定
内容大概
-warnings-as-errors
选项时,无法编译原本有效的 Swift 5 代码。-warnings-as-errors
的项目,无法使用新的 Swift 6 编译器编译 Swift 5 代码。-warnings-as-errors
,但这对某些开发者来说不可接受。warnings-as-errors
选项。这个问题突出了 Swift 版本迁移过程中的挑战,以及编译器警告策略对开发工作流程的影响。它引发了关于向后兼容性和渐进式迁移策略的讨论。
4) 提议删除引用静态成员时对“Self.”的要求
内容大概
这个讨论涉及了 Swift 语言设计的细节,以及如何平衡语言的表达力、清晰度和使用便利性。
5) 讨论比较闭包
内容大概
这个讨论揭示了 Swift 语言在处理闭包比较时的复杂性,以及编程语言设计中平衡灵活性和确定性的挑战。
6) 提议放宽使用编译器生成的以 $ 为前缀的标识符作为闭包参数名称
内容大概
MacroExpansionContext.makeUniqueName(_:)
作为闭包参数的标识符。MacroExpansionContext.makeUniqueName(_:)
返回的唯一名称带有$前缀,导致无法用作闭包参数名。示例:let arg0 = context.makeUniqueName("")
return """
{ \(arg0) in
...
}
"""
// 展开后的源代码可能如下:
{ $s<SOME_MINGLED_NAME> in
...
}
这会导致编译器错误,将 $s<SOME_MINGLED_NAME>
错误地解释为属性包装器投影。
$ identifier-characters
作为显式闭包参数名的限制。这不会引入命名冲突,因为 $ decimal-digits
仍专门用于隐式闭包参数名。这个提案旨在解决 Swift 宏系统中的一个具体问题,同时也涉及了语言设计中标识符使用的更广泛问题。
7) 已接受SE-0427:不可复制的 generics
内容大概
b. 未来可抑制约束:
c. ~Copyable 语法:
d. 重复 ~Copyable 的问题:
e. 编译器限制:
这个提案标志着 Swift 在处理不可复制类型和泛型系统方面的重要进展,为语言增加了更多的灵活性和表达能力。
摘要: 这篇 Swift 官方博客介绍了一个新的开源 Swift 库,名为 swift-homomorphic-encryption ,用于实现同态加密。同态加密是一种密码学技术,允许在加密数据上进行计算,而不需要解密原始数据。这使得客户端可以向服务器发送加密数据,服务器在加密数据上执行计算,并返回客户端可以解密的结果,而在此过程中服务器不会解密原始数据或访问解密密钥。
在文章中,作者详细解释了同态加密的基本原理和 Swift 实现中所采用的 BFV(Brakerski-Fan-Vercauteren)同态加密方案,该方案基于环学习与错误(RLWE)困难问题,具有量子抗性。文章还介绍了一个实际应用案例,即iOS 18中的 Live Caller ID Lookup 功能,该功能利用同态加密发送加密查询以获取关于电话号码的信息,同时保护用户数据的隐私和安全。
此外,文章还展示了如何在 Swift 中使用同态加密软件包的基本示例代码,包括参数选择、加密、解密和数据操作过程。。
摘要: 文章介绍了 SwiftUI 框架中的新功能—— Entry 宏。 Entry 宏简化了在应用程序中使用自定义环境键时的代码编写过程,无需再手动实现 EnvironmentKey 协议的类型。文章详细讨论了如何利用 Entry 宏定义环境值,以及它如何与环境、事务、容器和焦点值一起使用。通过示例和详细解释,读者可以了解如何减少代码冗余并提升开发效率。
摘要: 本文深入探讨了多线程编程中的优先级翻转现象,特别是在 Swift 中通过 Quality of Service (QoS) 管理任务优先级的重要性。优先级翻转可能导致高优先级任务被低优先级任务阻塞,从而影响系统性能和稳定性。文章通过案例分析和解决方法提供了应对优先级翻转的实用建议,强调了合理使用锁和同步机制的重要性,以及如何通过调整任务优先级来优化多线程应用的设计。
在现代高等教育中,大学生是否应尽早锁定专业一直备受争论。赞同者认为,大学生应在探索不同学科后再选择专业,这样有助于他们发现真正的兴趣和才能,避免因为过早确定而陷入不合适的领域。反对者则认为,尽早确定专业有助于学生专注于职业发展,尽快进入职场并取得成功。中立者则认为,这取决于个人情况,包括学生的兴趣、目标和对未来的规划。对此你怎么看?
Swift社区是由 Swift 爱好者共同维护的公益组织,我们在国内以微信公众号的运营为主,我们会分享以 Swift实战、SwiftUl、Swift基础为核心的技术内容,也整理收集优秀的学习资料。
特别感谢 Swift社区 编辑部的每一位编辑,感谢大家的辛苦付出,为 Swift社区 提供优质内容,为 Swift 语言的发展贡献自己的力量。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。
原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。
如有侵权,请联系 cloudcommunity@tencent.com 删除。