Weekly Comment
Entering the Era of Futures
The recent launch of Claude 3.5 Sonnet has been a pleasant surprise. In use, it not only better meets my needs compared to ChatGPT 4, but also seems to have higher response efficiency. The only disappointment is that even with a Pro account, the available token count still feels insufficient.
However, just as I was feeling satisfied with Claude 3.5's response speed, I suddenly realized that what I'm currently using is not the real-time response model that OpenAI introduced at their May conference. At the same time, the highly anticipated Sora has yet to make its public debut.
This phenomenon of "more thunder than rain" seems to have become the norm in the tech industry.
Many users have already received Microsoft's newly released Surface Pro (AI PC), but the AI-related features showcased at its launch event won't be delivered for at least several months. Similarly, many of the exciting new features announced at WWDC won't be available until 2025. Tech launch events are gradually losing their core of seeking truth and practicality, instead becoming increasingly filled with a culture that prioritizes traffic and hype.
The tech industry is clearly entering an "era of futures": flashy launch events, exciting product descriptions, and enthusiastic pursuit from the capital market form a repetitive cycle. One launch event after another constantly stimulates public nerves, with new visions quickly making people forget the content and promises of the previous event. While this phenomenon has always existed, the current scale, number of participating companies, length of delivery cycles, and low rate of promise fulfillment are all unprecedented.
Admittedly, this situation is not entirely caused by one party. In the current social environment, features and characteristics lacking explosive appeal can hardly satisfy the appetites of consumers and investors. In this game, all participants have jointly shaped this seemingly "thriving" futures market, from which it's difficult to easily withdraw.
Although I know this trend is hard to reverse, I still hope for changes in the future. I miss those good old days when products were delivered upon release and new features were quickly available. As one of the participants in this game, consumers should perhaps re-examine our expectations and find a balance between enthusiasm and rationality. At the same time, we should also call on tech companies to return to their original intentions, focusing on actual delivery rather than merely creating hype and expectations.
Previous Issue|Newsletter Archive
If you appreciate my work and want to promote your product to the Swift and iOS developer community, sponsoring my platform could be an excellent opportunity for you.
Your support through Patreon, or Buy Me a Coffee helps keep this newsletter and blog running. Thank you for finding this content helpful!
Originals
Creating Stunning Dynamic Text Effects with TextRenderer
The Text
component is extremely common in SwiftUI applications. Over the past few years, despite Apple continually expanding its capabilities, developers have been eager for deeper control over this component. At WWDC 2024, SwiftUI introduced the TextRenderer
protocol, granting developers new powers to adjust the rendering performance of the Text
component, making it possible to achieve many previously unimaginable effects. This article will delve into this new feature.
GeometryReader: Blessing or Curse? (New onGeometryChange
Section)
At WWDC 2024, SwiftUI introduced a new modifier called onGeometryChange
. Compared to GeometryReader
, its representation is more rational and clear. This article has been updated to include a section on how to use this modifier and provides an implementation that can be used with earlier versions of SwiftUI.
Recent Selections
Chaikin's Algorithm In SwiftUI
Chaikin's algorithm, by adding new points at 25% and 75% along each line segment and iteratively connecting these points, effectively smooths lines. Compared to Bézier curves, Chaikin's algorithm offers significant advantages in simplification and efficiency, especially suitable for quick and easy smoothing processes. In this article, Aryaman Sharda provides detailed code examples on how to implement this algorithm in SwiftUI, including how to calculate control points and apply linear interpolation (lerp).
SwiftData vs Realm: Performance Comparison
In this article, Jacob Bartlett compares the performance of SwiftData and Realm frameworks in aspects such as speed, storage, and memory usage. Although Realm shows clear advantages in read-write performance in most test scenarios, as data model relationships become more complex, these advantages diminish, sometimes even reversing. The choice of framework depends on specific application scenarios, data volume, and resource constraints.
SwiftData is still in its early stages of development, and even after maturation, high performance may not be its main strength. Its design primarily focuses on balancing development convenience, clarity of declarations, consistency with the Apple ecosystem, and enhancing overall app performance.
Preparing your App Icon for dark and tinted appearance
Flora Damiano
With the update to iOS 18, app icons on the home screen will change accordingly when the system switches to dark mode and allows users to customize the tint. To ensure consistency with the system, developers are advised to provide three different variants of their app icons: light mode, dark mode, and tinted mode. Flora Damiano offers guidance and recommendations for designing new icons in this article.
Free, on-device translations with the Swift Translation API
Apple announced a new feature at WWDC24—the Translation framework, a first-party framework built on CoreML models, allowing developers to perform free in-device translations in Swift applications. Pol Piella demonstrates how to use this framework in a simple SwiftUI application, enabling users to input text and translate it into different languages by pressing a button.
5 Strategies for Managing Image Resources Effectively in iOS
This article by Tuan Hoang explores effective strategies for managing image resources in iOS development. He points out that image resource management is an aspect often overlooked by engineers, which can significantly affect app performance and development efficiency if not properly addressed. The article shares some effective strategies his engineering team is using, which have successfully helped them reduce app size, lower memory usage, and significantly improve app performance.
WWDC 2024 Sessions
At WWDC 2024, Apple brought a plethora of exciting sessions for developers. Facing so many topics, deciding which are most worthwhile is indeed a challenge. To aid developers in making their selections, Bruno Rocha and Keith Harrison have provided their recommendations in their articles.
WWDC 2024 Viewing Guide
Recommended WWDC24 Sessions
肘子的话
迈入期货时代
近日,Claude 3.5 Sonnet 的上线给我带来了惊喜。在使用中,它不仅比 ChatGPT 4 更符合我的需求,响应效率似乎也更高。唯一的遗憾是,即便是 Pro 账户,可用的 token 数量仍显不足。
然而,在我对 Claude 3.5 的响应速度感到满意之时,我突然意识到目前使用的并非 OpenAI 在五月份发布会上介绍的具备实时响应能力的模型。与此同时,备受期待的 Sora 也仍未公开亮相。
这种“雷声大、雨点小”的现象似乎已成为科技界的常态。
不少用户已经收到了微软新发布的 Surface Pro (AI PC),但其发布会上展示的 AI 相关功能至少要数月后才能交付。同样,WWDC 上的不少振奋人心的新功能也要在 2025 年才能提供。演讲中大屏幕上巨大的"全国主要地区"可以被右下角微不可见的文字重新解释。科技发布会正逐渐失去其求真务实的核心,反而越来越充斥着流量至上的文化。
科技界显然正全面步入“期货时代”:炫酷的发布会、令人激动的产品描述、以及资本市场的热烈追捧构成了一个反复的循环。一次又一次的发布会不断地挑动公众的神经,新的愿景总是迅速让人们忘记前一场发布会的内容和承诺。这种现象虽然一直存在,但当前的规模之大、参与公司之多、交付周期之长,以及承诺兑现率之低,都前所未有。
诚然,这种状况并非完全由一方导致。在当前的社会环境中,缺乏爆炸性吸引力的功能和特性已难以满足消费者和投资者的胃口。在这场游戏中,所有参与方共同塑造了这个看似“欣欣向荣”的期货市场,且难以轻易脱身。
尽管知道这种趋势难以逆转,我仍然希望未来能有所改变。我怀念那些发布即交付、新功能迅速可用的美好时光。作为这个游戏的参与者之一,消费者也许应重新审视我们的期望,在热情与理性之间找到平衡。同时,我们也应呼吁科技公司回归初心,将重点放在实际交付上,而非仅仅是制造噱头和期待。
如果您发现这份周报或我的博客对您有所帮助,可以考虑通过 爱发电,Buy Me a Coffee 支持我的创作。
原创
用 TextRenderer 构建绚丽动感的文字效果
Text
组件在 SwiftUI 应用中极为常见。过去几年里,尽管苹果不断扩展其功能,开发者仍期待能更深层次地控制这一组件。在 WWDC 2024 上,SwiftUI 推出了 TextRenderer
协议,赋予开发者调整 Text
组件渲染表现的新能力,使得实现许多先前难以想象的效果成为可能。本文将深入探讨这一新增功能。
GeometryReader :好东西还是坏东西?( 新增 onGeometryChange
部分)
在 WWDC 2024 上,SwiftUI 新增了 onGeometryChange
修饰器。相较于 GeometryReader
,它的表述更加合理和清晰。本文中增加了对其用法介绍的部分,并提供了一版适用于早期 SwiftUI 版本的仿制实现。
近期推荐
Chaikin's Algorithm In SwiftUI ( 在 SwiftUI 中使用 Chaikin 算法 )
Chaikin 算法通过在每个线段的 25% 和 75% 位置添加新点,并多次迭代连接这些点,有效地使线条变得更加平滑。与贝塞尔曲线相比,Chaikin 算法在简化处理和提高效率方面具有显著优势,特别适合于需要快速且简便的平滑处理场合。在本文中,Aryaman Sharda 通过具体的代码示例,详细展示了如何在 SwiftUI 中实现此算法,包括如何计算控制点以及应用线性插值(lerp)的方法。
SwiftData vs Realm: Performance Comparison ( SwiftData 和 Realm 性能比较 )
在本文中,Jacob Bartlett 对 SwiftData 和 Realm 两个框架在速度、存储和内存使用等方面进行了性能比较。尽管在多数测试场景中,Realm 在读写性能上显示出明显优势,但随着数据模型关系的复杂化,这种优势逐渐缩小,有时甚至会逆转。作者指出,选择哪个框架取决于具体的应用场景、数据量和资源限制。
SwiftData 目前仍处于发展的早期阶段,而且即使在成熟之后,高性能也可能不是其主要强项。其设计宗旨主要注重于在开发便利性、声明的清晰度、与苹果生态系统的一致性以及提升应用的整体效能之间达成平衡。
Preparing your App Icon for dark and tinted appearance ( 为深色和色调变化的外观准备应用图标 )
Flora Damiano
在 iOS 18 的更新中,当系统切换到深色模式时,主屏幕上的应用程序图标也会相应地变化,并允许用户自定义色调。为了确保与系统一致性,开发者最好能提供三种不同变体的应用图标:浅色模式、深色模式和色调变化模式。Flora Damiano 在本文中提供了针对新图标设计的建议和指导。
Free, on-device translations with the Swift Translation API ( 使用 Swift Translation API 进行免费的设备内翻译 )
苹果在 WWDC24 上宣布了一项新功能——Translation 框架,这是一个基于 CoreML 模型构建的第一方框架,使开发者能够在 Swift 应用程序中免费进行设备内翻译。Pol Piella 在文章中展示了如何在一个简单的 SwiftUI 应用中利用此框架,允许用户输入文本,并在按下按钮时将其翻译成不同的语言。
5 Strategies for Managing Image Resources Effectively in iOS ( iOS中有效管理图像资源的5种策略 )
本文由 Tuan Hoang 撰写,主要探讨了 iOS 开发中如何有效管理图像资源。作者指出,图像资源管理是工程师经常忽视的一个方面,如果不加以适当关注,可能会严重影响应用程序的性能及开发效率。文章中,作者分享了他的工程团队正在使用的一些高效策略,这些策略已成功帮助他们减少应用大小、降低内存占用,并显著提升应用性能。
WWDC 2024 Sessions
在 WWDC 2024 中,苹果为开发者们带来了大量精彩的会议环节。面对如此多的主题,决定哪些最值得观看确实是一项挑战。为了帮助开发者们做出选择,Bruno Rocha 和 Keith Harrison 在他们的文章中给出了各自的推荐。
WWDC 2024 Viewing Guide
Recommended WWDC24 Sessions
活动
探索 WWDC24 上公布的重大更新
苹果将在 2024 年 7 月 2 日上午 9:30 – 下午 5:30 (GMT+8) 举办视频讲座。与广大开发者一起深入了解 WWDC24 上公布的重大更新。将探索主题演讲和 Platforms State of the Union 的关键时刻,探索视频讲座,深入探究新的资源和文档,并展示各项指南将如何帮助你了解所有重大发布。活动语言为简体中文。
请在 7 月 1 日晚上 11:45 (GMT+8) 之前 注册。
AdventureX「指引者」预告
在 AdventureX 2024 你可以在所有的「指引者」上看到你的影子,他们不再是身着西装,似乎遥不可及的“成功人士”。你会与他们面对面交流,在他们的故事中,你会看见曾经的那个热血男孩,艺术青年……如同今天的你一般,或许迷茫过,失意过,但从未变的是对热爱事物的坚定和初心。
更多「指引者」将在稍后发布。
👉 如果你是 16-26 岁的超级青年,欢迎报名 ADVX:adventure-x.org(免费&我们将会提供三餐和住宿)
🌍 游客注册链接:https://nexus.adventure-x.org(🆓)
⏰ 时间:2024.7.15 - 7.19
📍 地点:湖畔创研中心