SPM 之 混编(OC、Swift)项目保姆级教程(Swift Package Manager) 掘金 iOS 捡芝麻丢西瓜 2025年9月15日 15:02 Swift Package Manager(以下简称SPM) 混编(iOS 、Swift)项目的配置教程
Swift 结构化并发 6 条铁律 —— 一张图 + 一套模板,让 `async let` / `TaskGroup` / `Task {}` 不再踩坑 掘金 iOS unravel2025 2025年9月15日 14:05 思维导图(先保存,再阅读) 为什么分“结构化”与“非结构化” 维度 Structured Unstructured 能否成为子任务 ✅ ❌(只能是根) 能否成为父任务 ✅ ✅(再开 structure
深入理解 Swift Concurrency:从 async/await 到 Actor 与线程池的完整运行机制 掘金 iOS unravel2025 2025年9月15日 14:05 一、async 函数的本质:可挂起的函数 ✅ 什么是 async 函数? async 函数是可以被挂起的函数。 挂起 ≠ 阻塞线程,而是让出线程去执行其他任务。 挂起只发生在 await 处,称为潜在
【Swift Concurrency】深入理解 `async let` 与 `TaskGroup`:并发任务的生命周期与错误传播机制 掘金 iOS unravel2025 2025年9月15日 14:04 一、什么是 async let? async let 是 Swift 提供的一种结构化并发语法糖,用于并发地启动多个子任务,并延迟等待其结果。 ✅ 基本用法 每个 async let 会创建一个子任务
Flutter 三种方式实现页面切换后保持原页面状态 掘金 iOS ALLIN 2025年9月15日 13:19 前言: 在 Flutter 应用中,导航栏切换页面后默认情况下会丢失原页面状态,即每次进入页面时都会重新初始化状态,如果在initState中打印日志,会发现每次进入时都会输出,显然这样增加了额外的开
iOS 26 仅需几行代码让 SwiftUI 7 液态玻璃界面焕发新春 掘金 iOS 大熊猫侯佩 2025年9月14日 14:31 在本篇文章中,我们讨论了在 iOS 26/iPadOS 26 里如何使用 SwiftUI 7 最新的液体玻璃系统来装饰小伙伴们的 App 界面。
Redux 中›ABC三个页面是如何通信的? 掘金 iOS littleplayer 2025年9月14日 12:31 你的这种感觉非常正常!这也是很多初学者对 Redux 最大的误解。如果 A、B、C 三个页面分别有自己的 Store,那你就完全违背了 Redux 最核心的“单一数据源”原则,自然会陷入无法通讯的困境
Redux在iOS中的使用 掘金 iOS littleplayer 2025年9月14日 09:47 好的,我们来详细探讨一下 Redux 在 iOS 开发中的应用。Redux 是一个源自 Web 前端(通常与 React 搭配)的架构模式,它因其单一数据源、状态不可变和纯函数Reducer 等特性,
在同步代码里调用 async/await:Task 就是你的“任意门” 掘金 iOS unravel2025 2025年9月12日 19:51 场景:同步上下文想调异步函数 错误提示: 官方逃生舱:包一层 Task {} Task 会立刻在新协程里执行闭包,不要求外部上下文支持并发。 无需手动持有 Task 实例,除非你想取消或等待它完成。
Swift 三目运算符指南:写法、场景与避坑 掘金 iOS unravel2025 2025年9月12日 12:32 什么是三目运算符? 三目运算符(ternary operator)是 if/else 的单行表达式版,语法模板: 必须同时给出真/假两个分支,否则编译器直接报错。 最小可运行示例 当 username
一篇读懂 Swift 不透明类型:让带 associatedtype 的协议也能当返回值 掘金 iOS unravel2025 2025年9月12日 10:04 why:带 associatedtype 的协议为何不能当返回值? associatedtype 未被确定 → 编译期无法决定具体内存布局。 Swift 拒绝“协议当作类型”使用,除非用泛型或 opa
`@dynamicCallable`:把 Swift 对象当函数喊 掘金 iOS unravel2025 2025年9月12日 10:02 一、为什么需要“假装函数”? 有时我们想让一个值看起来就是函数,从而写出更自然的 DSL: @dynamicCallable 就是 Swift 给的“变身器”: “让实例像函数一样被 call,背后转
仓颉语言Option 的“问号”全景图—— 一个 `?` 与 `.` `()` `[]` `{}` 的组合写法 掘金 iOS unravel2025 2025年9月12日 09:59 一句话先给结论 在仓颉里,? 是 Option 的“安全导航符”;它能无缝插进任何“取值/调用/下标/代码块”场景,遇到 None 就立即短路返回 None,否则继续往后走。 下面带你一次看全所有花式
iOS26适配指南之UISlider 掘金 iOS YungFan 2025年9月12日 09:00 在 iOS 26 中,UISlider 迎来了两项重要更新:一个可用于设置滑块在拖拽时的样式,一个用于在滑轨上添加刻度。
一文精通-Flutter 状态管理 掘金 iOS 无知的前端 2025年9月12日 08:51 什么是状态管理? 在 Flutter 中,状态是指任何可以随时间变化的数据,这些数据的变化会影响用户界面的呈现。状态管理则是处理这些数据的变更、存储、传递以及在UI上反映这些变更的一套方法和架构模式。
完整的苹果内购in-purchase实例-采用object-c语言使用苹果的Storyboard开发模式的完整购买实例 掘金 iOS 卓伊凡 2025年9月12日 00:51 完整的苹果内购in-purchase实例-采用object-c语言使用苹果的Storyboard开发模式的完整购买实例 引言 此前 写了 object-c的实例,但是交付时候发现客户采用的是Story
使用仓颉语言理解 SOLID 原则:概念、实战与踩坑总结 掘金 iOS unravel2025 2025年9月11日 20:23 为什么要学 SOLID? 在开发项目时,我们每天都在“改需求”: 产品经理说“再加一种支付方式” 后端说“换一套登录接口” 设计师说“按钮样式统一换” 如果代码耦合严重,每一次改动都会牵一发动全身。
提升生产力:每个 iOS 开发者都应该知道的 10 个 Xcode 技巧 掘金 iOS JarvanMo 2025年9月11日 09:31 在和 Swift、UIKit 以及现在的 SwiftUI 打交道多年后,我总结了一套在日常工作中真正能提升效率的小技巧。相信我,一旦你用了,就再也回不去了。 1. 代码片段库(⌘ + ⇧ + L) 我
`@preconcurrency` 完全导读:让旧代码平安驶上 Swift 并发快车道 掘金 iOS unravel2025 2025年9月11日 08:05 一、为什么会出现 @preconcurrency? Swift 5.5+ 的并发模型要求: 跨任务传递的类型必须Sendable 访问共享状态需隔离(@MainActor / actor) 编译器静态