首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Swift 编程
独木舟的木
创建于2024-01-11
订阅专栏
Swift 编程语言基础知识
等 68 人订阅
共58篇文章
创建于2024-01-11
订阅专栏
默认顺序
默认顺序
最早发布
最新发布
在 Swift 中创建服务层
服务层允许你将与框架和 API 相关的逻辑转移到它们自己的类或结构体中。一个好的做法是创建一个protocol并添加所需的方法和计算属性。你的实现将是一个遵守该协议的类或结构体。
Swift DateFormatter 速查表、公式和示例
多年来,iOS 开发者一直在使用依赖注入(Dependency Injection,DI)。这是一种在 iOS 应用中解耦组件的技术,通过注入它们需要的服务,而不是硬编码这些依赖关系。这使得代码更加模
Swift5 中的依赖注入
多年来,iOS 开发者一直在使用依赖注入(Dependency Injection,DI)。这是一种在 iOS 应用中解耦组件的技术,通过注入它们需要的服务,而不是硬编码这些依赖关系。这使得代码更加模
Swift 中的缓存
让我们来看看缓存如何在这种情况下成为一个非常强大的工具,**如何在 Swift 中构建一个高效而优雅的缓存 API**,以及战略性地缓存各种值和对象如何对整体产生重大影响应用程序的性能。
在 iOS 中调试文件
我打赌你已经用过 `FileManager` 好几次了。这非常简单,但除非你的应用程序是一个适当的文件管理器,其中包含所有文件和类似文件的列表,否则要不加过滤地查看底层文件是有点复杂的。 也许你正在
Swift 字面量
原文:Swift Literals 1911 年,语言学家 Franz Boas 观察到,讲爱斯基摩 - 阿留申语的人用不同的词来区分正在落下的雪花和地上的雪。相比之下,说英语的人通常把两者都称为 "
Apple推荐的OSLog和统一日志系统
通过编写一个小的扩展,你可以相当容易地替换你的打印语句。将 Console.app 与你的日志结合起来使用可以帮助你以更有效的方式调试问题。**OSLog 具有较低的性能开销,并在设备上归档,以便以后
通过 Carthage 和 CocoaPods 为 iOS、watchOS 和 tvOS 创建跨平台
在这篇文章中,我想告诉你如何为 iOS、watchOS 和 tvOS 创建一个 Swift 框架,并让它们通过 Carthage 和 CocoaPods 发布。这是我用来在我所有的应用程序和社区中分享
Swift 类型中的 Equality, Identity 和 Hashing
本文深入探讨了 Swift 类型中的 Equality、Identity 和 Hashing 的概念。文章首先介绍了 Equality 的概念,以值类型和引用类型为例,介绍了如何实现 Equatabl
编写单例的正确方式
尽管我在上一篇文章中写到了管理状态的苦恼,但有时我们无法避免它。管理状态的一个例子是我们都很熟悉的东西——单例(Singleton)。我们在 Swift 中发现的问题是,有很多方法来实现它。但哪种才是
Swift 中的 ARC 和内存管理
在本教程中,你将学习 ARC 是如何工作的,以及如何在 Swift 中编程以优化内存管理。你将学习什么是引用循环,如何使用 Xcode 10 可视化调试器在引用循环发生时发现它们,以及如何打破实际示例
Swift 中的捕获列表:弱引用、强引用和无主引用之间的区别?
捕获列表(Capture List)在代码中位于闭包的参数列表之前,并从环境中捕获强引用(`strong`)、弱引用(`weak`)或无主引用(`unowned`)。我们经常使用它们,主要是为了避免强
weak self 的黄金法则
在闭包中捕获 `self` 是 Swift 中常见的事情,并且隐藏了很多细微差别。你是否需要使其变 `weak` 以避免引用循环?让它始终保持 `weak` 存在问题吗?
Weak self,一个关于 Swift 内存管理和闭包的故事
内存管理是 Swift 和 iOS 开发中的一个大话题。如果有很多教程解释何时将 `weak self` 与闭包一起使用,这里有一个简短的故事,讲述它何时会发生内存泄漏。
Swift 中检查API的可用性
随着每一个新版本的发布,Apple 都会引入一系列新的类、方法和符号,同时也会废除一大堆其他的类、方法和符号。作为开发者,每次新版本发布,我们都会被诱惑着一头扎进这些框架所提供的小工具和小玩意儿中,随
Swift 断言--缺失的手册
原文:Swift asserts - the missing manual 断言是很好的调试工具。每当我需要检查我的代码是否符合预期时,我可以使用断言,然后异常将被抛出或(应用)终止运行。
我们在 Livefront 使用的 10 个 Swift 扩展
让我们说实话,Swift 和 Apple 的框架并不具备我们为 Apple 设备构建最佳软件所需的所有功能。幸运的是,Swift 支持扩展,所以我们可以添加我们需要的缺失部分,使我们的生活更轻松。
用代码解释 Swift 中的 guard 语句
Swift 中的 Guard 语句允许我们在代码中实现检查,防止当前作用域继续执行。在编写代码时,我们经常需要在继续运行一个方法之前执行一些必要条件。一个例子是在提交表单前解包一个可选类型的输入字段。
Swift 现代泛型编程初学者指南
根据 Swift 语言指南,协议可以定义方法、属性和其他要求的蓝图。使用协议预定义属性和方法非常容易,语法非常简单,当我们开始使用关联类型时,问题就开始出现了。我们必须回答的第一个问题是:关联类型到底
Swift 中的关键字:用代码解释 Result builder
Swift 中的结果构造器允许你使用彼此排列的 “build block” 来构建结果。它们在 Swift 5.4 中引入,在 Xcode 12.5 及更高版本中可用。以前称为**函数构建器**,你可
下一页