肘子的话

欢迎拜访 fatbobman.substack.com 订阅本周报的中英文电子邮件版

近来,苹果公司在一次内部会议上宣布了终止其雄心勃勃的造车项目“泰坦”,标志着这个长达十年、耗资巨大的隐秘项意图正式完毕。随着项意图终止,部分员工将被转移到 AI 研制岗位,以加速苹果在该范畴的开展。有音讯称,苹果计划在 Siri、Spotlight 和 Xcode 等产品中加入更多 AI 功用,希望这次人员调整能够协助苹果缩小与其他 AI 行业领导者间的差距。

作为长期使用苹果产品的用户,我关于苹果进军轿车行业的行为一直持有保存情绪。我曾自问:苹果能否成功制作轿车?它们制作的轿车能否具有满足的独特性来吸引顾客?尽管电动轿车的鼓起降低了进入轿车行业的门槛,但这也导致了市场上产品的同质化问题。因此,电动轿车制作商投入巨资于智能技能,以赋予轿车全新的特性。考虑到顶尖电动轿车制作商已在此范畴深耕多年,苹果要创造出类似于 Apple Vision Pro 远超竞品的轿车产品面对严重应战。

此外,尽管苹果在供应链办理方面经验丰富,但全球几乎没有能一起满足苹果对质量、产量和本钱要求的轿车代工厂。最近几年,原本搁置的产能已逐步释放,许多公司经过合并或收买进入电动轿车市场,推出自有品牌轿车。显然,即使苹果能设计出具有吸引力的轿车,出产这样一款车也是一大应战,尤其是在目前电动轿车行业普遍降价的市场环境下,出产一款低毛利率的产品并不契合苹果一贯的商业形式。

综上所述,苹果抛弃轿车项目并转向加强 AI 研制,或许是一种战略上的自我摆脱。正如我国古语“塞翁失马,焉知非福”所示,尽管苹果在 AI 范畴面对应战,但竭尽全力就有或许弥补这一差距,不被 AI 时代所淘汰。那些从轿车项目中得到的灵感、经验和专利,未来或许在苹果的其他产品或服务中发挥意想不到的作用。

前一期内容全部周报列表

原创

Swift Predicate: 用法、构成及留意事项

Fatbobman( 东坡肘子 )

NSPredicate 是 Apple 供给的一个强壮东西,答应开发者经过界说杂乱的逻辑条件以自然且高效的办法对数据调集进行挑选和评价。随着时刻的推移,Swift 言语的不断成熟和开展,2023 年 Swift 社区着手使用纯 Swift 言语重构 Foundation 结构。在这一严重更新中,引入了依据 Swift 编码的新 Predicate 功用,标志着在数据处理和评价方面迈入了新的阶段。本文旨在讨论 Swift Predicate 的使用办法、构成以及在实际开发中应留意的关键事项。

近期引荐

Dependency Injection for Modern Swift Applications

Lucas van Dongen

在本文,Lucas van Dongen 深入讨论了依靠注入(DI)在现代 Swift 使用开发中的核心作用及其施行战略,强调了准确完结 DI 的重要性。文章介绍了多种 DI 办法,经过示意图清晰展现了每种战略的作业原理及其面对的应战,特别是如安在使用的生命周期中恰当地构建和使用依靠项。此外,文中对 Singleton 形式、依据树的结构、容器化办法以及其他技能进行了细致比较,评述了它们各自的优缺点。特别值得称赞的是,作者不只总结了不同 DI 结构的特点,还针对不同规划和阶段的项目,供给了选择适宜 DI 战略的名贵主张。

How the Swift compiler knows that DispatchQueue.main implies @MainActor

Ole Begemann

或许一些开发者已经察觉到,在 Swift 代码中,若某个函数被清晰标记为 @MainActor,则其在 DispatchQueue.main.async 闭包内的调用会被编译器自动辨认为在主履行者上履行。Ole Begemann 在本文中讨论了这一行为的内涵机理。这一辨认过程是在 Swift 编译器的语义分析阶段施行的,经过一种依据精确源代码拼写的检查机制来完结。尽管这项特性为开发者带来便利,但其隐蔽性增加了学习 Swift 并发的难度。作者主张 Apple 应在 Xcode 中增强对推断履行上下文的显现,清晰标明代码是运行在主履行者、其他履行者还是全局协作池上,以此来降低 Swift 并发编程的杂乱性,提高代码逻辑的透明度和易了解性。

Super-Resolution iPhone Panoramas for Vision Pro

David Smith

尽管 iOS 相机使用内置的全景形式拍照快捷,但其产生的全景相片在 Apple Vision Pro 上的表现一般缺少真正的沉溺感。David Smith 在本文中讨论了怎么经过 iPhone 拍照超高分辨率的全景相片来强化在 Vision Pro 上的沉溺体会。他采用标准相机形式捕捉一连串 48MP 的相片,并后期在 Photoshop 中将它们拼接成一幅超高清全景图。这样处理后的图片,以其惊人的细节和清晰度,在 Vision Pro 上展现出了无与伦比的沉溺感。David 对 Apple 未来或许在 iOS 或 iPhone 中整合类似的高分辨率全景拍照功用充溢等待,他估测这种技能终究或许会获得官方支撑,从而在 visionOS 中提高全景相片的观赏体会。

Sharing state in the Composable Architecture

Point-Free

在先前的 Composable Architecture(TCA)版别中,完结不同 Reducer 间的状况同享往往充溢应战,开发者需求采用多种战略来完结这一目标。本文介绍了 Point-Free 发布的 TCA 的最新测试版,该版别供给了全新的东西:@Shared 特点包装器。它支撑在使用程序全域内同享状况,并进一步供给了将状况耐久化到用户默认设置和文件体系的功用。这一功用极大地丰富了状况办理和耐久化的灵活性,让依据 TCA 的使用开发变得更加高效快捷。

How to use VariadicView, SwiftUI’s Private View API

Noah Martin at Emerge Tools

VariadicView 为开发者供给了界说容器视图的灵活途径,使得处理不确定数量的子视图成为或许,并答应依据需求对子视图进行布局和润饰,这一点关于打造杂乱而可复用的 UI 组件极为关键。该功用初次由 Moving Parts 揭示。这一私有 API 尽管未公开文档,但已被很多知名使用验证其安全性,并在出产环境中得到广泛使用。Noah Martin 在本文中展现了怎么使用此 API 开发 SnapshotPreviews 结构,该结构能够将 Xcode 预览转化为图像快照,从而支撑将自动化快照测试集成进拉取恳求,为使用开发供给了高效的测试解决方案。

Type-Driven Design with Swift

Alex Ozun

Type-Driven Design 是一种精炼的软件开发战略,它在设计软件时要点强调类型体系的运用,尤其适用于函数式编程环境。此办法经过充分使用静态类型,不只保证了代码的准确性,还明显提高了代码的可读性和可维护性,并有用降低了运行时产生错误的或许性。在 Type-Driven Design 的哲学中,类型不简单地作为代码的组成部分,而是构建和完结软件体系的关键枢纽。Alex Ozun 正经过一系列精彩文章(计划九篇,已发布三篇)深入探究这一办法,意图是引领开发者改变他们的 Swift 编程思想。

往期内容

THANK YOU

如果你觉得这份周报或者我的文章对你有所协助,欢迎 点赞 并将其 转发 给更多的朋友。

欢迎拜访 fatbobman.substack.com 订阅本周报的中英文电子邮件版别。