首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
SwiftGG翻译组
掘友等级
Apple 生态开发者
Make Apple Developer Ecosystem Great Again!
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
25
文章 24
沸点 1
赞
25
返回
|
搜索文章
最新
热门
Swift 5 字符串插值之美
感谢提案 SE-0228,让我们能够精确控制字符串插值的打印方式。感谢 Brent 带给我们这个非常棒的功能。让我来分享一些例子。 我们可以点击修复按钮来消除这些警告,得到如下的代码。但我们仍然会看到一个类似于这样的输出:“There’s Optional(23) and ni…
协议中的私有属性
在 Swift 中,协议中声明的属性没有访问控制的能力。如果协议中列出了某个属性,则必须使遵守协议的类型显式声明这些属性。 不过有些时候,尽管你会在协议中声明一些属性,但你是要利用这些属性来提供你的实现,并不希望这些属性在类型的外部被使用。让我们看看如何解决这个问题。 假设你需…
SwiftSyntax
SwiftSyntax 是一个可以分析、生成以及转换 Swift 源代码的 Swift 库。它是基于 libSyntax 库开发的,并于 2017 年 8 月 从 Swift 语言的主仓库中分离出来,单独建立了一个仓库。 总的来说,这些库都是为了给结构化编辑(structure…
以流的形式执行 Multipart 请求
Foundation 框架中的 URL 类提供了非常全面的功能,此后还在 iOS 7 中新增了 URLSession 类。尽管如此,基础库中仍然缺少 multipart 文件上传的功能。 Multipart 编码实际上就是在网络中上传大型文件的方法。在浏览器中,有时候你会选择一…
Language Server Protocol
上个月,苹果公司 在 Swift.org 论坛上宣布,正在着手为 Swift 和 C 语言支持 Language Server Protocol(语言服务器协议,LSP)。 这可能是苹果自 2014 年将 Swift 作为开源软件发布以来,为 Swift 做出的最重要的决定。 …
Swift 傻瓜技巧 #6:有动画或无动画
流畅的动画一开始就被认为是 iOS 应用的特点之一。这不仅归功于 iOS 系统强大的动画引擎(从而使得 App 能够一边展示流畅的动画一边做着其他的事情),还归功于系统提供的非常方便的动画 API: 只需要将你的代码放进 block(闭包)中,就可以让它们拥有流畅的缓入缓出的动…
Hacking Hit Tests
回想 Crusty 教我们使用面向协议编程之前的日子,我们大多使用继承来共享代码的实现。通常在 UIKit 编程中,你可能会用 UIView 的子类去添加一些子视图,重写 -layoutSubviews,然后重复这些工作。也许你还会重写 -drawRect。但当你需要做一些特别…
固定大小的数组
假设我们想要用 statfs() 方法来确定某个挂载点所对应的 BSD 设备名。例如挂载点 /Volumes/MyDisk 对应的 BSD 设备是 /dev/disk6s2。 statfs() 函数在 C 语言的定义是 int statfs(const char *path, …
Swift 属性观察器
到了 20 世纪 30 年代,Rube Goldberg 已成为家喻户晓的名字,与 “自营餐巾” 等漫画中描绘的奇异复杂和异想天开的发明同义。大约在同一时期,阿尔伯特·爱因斯坦对尼尔斯·玻尔量子力学的普遍解释进行了 批判,并从中提出了“鬼魅似的远距作用”这一词汇。 近一个世纪之…
布隆过滤器与 Swift 4.2
Swift 4.2 为哈希的实现带来了一些新的变化。在此之前,哈希交由对象本身全权代理。当你向对象索取 哈希值(hashValue)时,它会把处理好的整型值作为哈希值返回。而现在,实现了 Hashable 协议的对象则描述了它的参数是如何组合,并传递给作为入参的 Hasher …
下一页
个人成就
文章被点赞
991
文章被阅读
137,014
掘力值
4,540
关注了
1
关注者
7,349
收藏集
0
关注标签
8
加入于
2018-07-12