首页
AI Coding
数据标注
NEW
沸点
课程
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
Swift集思录
订阅
Asteroid
更多收藏集
微信扫码分享
微信
新浪微博
QQ
23篇文章 · 0订阅
Swift-29个关键字,助力开发(万字长文)
Swift 的 protocol 不仅可以被 class类型实现,也适用于 struct 和 enum。 在使用 class 来实现带有 mutating的方法的协议时,具体实现的前面是不需要加 mutating修饰的,因为 class 可以随意更改自己的成员变量。所以说在协议…
Swift 5.3 新特性
Swift 5.3 有不少变化,这其中包括多模式 catch 语句,多拖尾闭包,以及 Swift Package Manager 的一些重要改变。 本文会带你浏览一些主要的变化,同时提供参考代码,以便你可以自行尝试。以下是要介绍的新特性的清单: self. 书写省略 SE-02…
WWDC 2018:细说 Swift 包管理工具 (Swift Package Manager)
目前,在 macOS/iOS 开发中,我们通常使用 CocoaPods 或 Carthage 等非官方工具来管理项目工程中对第三方开源库的依赖。 Swift Package Manager(Swift 包管理器,一般简称 SwiftPM 或者 SPM)是苹果官方提供的一个用于管…
内存管理与值类型的性能
It's very likely that you asked yourself at least once in your iOS career what's the difference between a struct and a class. While realist…
优雅的使用UITableView(Swift 中)
在优雅的使用UITableView(OC 上)中,已经给大家分享了怎么使用UITableView,优雅的构建一个页面。 其中关键的点其实就是Row,如果我们把Row做好了,其实大功基本告成。 你打算用Any?那你的代码里肯定会出现一堆as? 的代码,显然与我们谈到的优雅背道而驰…
基于swift4.0实现视频播放、屏幕旋转、倍速播放、手势调节,锁屏面板等功能
学习swift有段时间了,原来写过一个基于 swift 3.0 的视频播放,后来有同学联系我说,在音频锁屏的情况下,无法用控制面板拖动进度条调节播放进度,所以又将原来的代码拿过来重新整理了下也顺便更新到了4.0版本。在把原来的代码拿来的时候发现原来有好多地方都是错误的,原来在 …
Why Swift? Generics(泛型), Collection(集合类型), POP(协议式编程), Memory Management(内存管理)
写这篇文章主要是为了给组内要做的分享准备内容。这段时间几个项目都用到 Swift,在上次 GIAC 大会上就被问到为什么要用 Swift,正好这个主题可以聊聊 Swift 的哪些特性吸引了我。 先来个例子看下泛型是解决什么问题的。 我们先定一个字符串数组,然后把里面的字符串打印…
Swift 中的属性
Swift 中有两种类型的属性:存储属性与计算属性。存储属性将值(常量或者变量)保存为实例或类型的一部分,而计算属性没有存储值。 让我们从存储属性开始看起。想象一下你有一个名为 Circle 的类: Circle 拥有名为 radius 的实例变量,默认值为 0。在 Swift…
Swift 4 弱引用实现
Swift 开源不久我就写了篇关于弱引用实现的文章。时移势易,Swift 4 中的弱引用实现已经与旧文不一致了。应 Guillaume Lessard 建议,今天我将会介绍新版实现,并比较其与老版的区别。 考虑到有些人可能已经忘记了旧实现并且不愿重看前面的文章,下面我们就一起简…
Swift标准库源码阅读笔记 - Array和ContiguousArray
关于 ContiguousArray ,这边有喵神的文章介绍的很详细了,可以先看看这个文章。 接着喵神的思路,看一下 Array 以下是从源码中截取的代码片段。 if _runtime(_ObjC) 等价于 #if os(iOS) || os(macOS) || os(tvOS…