首页
沸点
课程
数据标注
HOT
AI Coding
更多
直播
活动
APP
插件
直播
活动
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
登录
注册
确定删除此收藏集吗
删除后此收藏集将被移除
取消
确定删除
确定删除此文章吗
删除后此文章将被从当前收藏集中移除
取消
确定删除
编辑收藏集
名称:
描述:
0
/100
公开
当其他人关注此收藏集后不可再更改为隐私
隐私
仅自己可见此收藏集
取消
确定
swift 工具
订阅
scholar70207
更多收藏集
微信扫码分享
微信
新浪微博
QQ
10篇文章 · 0订阅
[译] 从现有的代码库创建 Swift 包管理器
Swift 包管理器(SPM)非常适合编写快速工具,你甚至可以从应用程序中提取现有代码。诀窍是你需要意识到你可以将文件夹符号链接到 SPM 项目中,这意味着通过一些工作你可以创建一个包装生产代码部分的命令行工具。 虽然它很依赖于项目,但是常见的用例是创建支持、调试和持续集成(C…
函数式编程 - 有趣的Monoid(单位半群)
Monoid(中文:单位半群,又名:幺半群),一个来源于数学的概念;得益于它的抽象特性,Monoid在函数式编程中起着较为重大的作用。 本篇文章将会以工程的角度去介绍Monoid的相关概念,并结合几个有趣的数据结构(如Middleware、Writer)来展现Monoid自身强…
深入理解Swift中的Class和Struct
Class和Struct是Swift中很重要的两种数据结构,同时也是Swift面试题必问的一道题。所以对Class和Struct理解透彻对我们学习Swift有很大的帮助。 当值传递的时候,它是传递对已有instance的引用。下面用代码来解释一下这句话: 通过上面的代码可以了解…
[旧文搬运]DateFormatter轻度优化探索
app启动后的60s内,快速滑动feed流页面,在这一过程中,主线程的执行时间大概是10.59s,我们项目中日期处理主要在func detailString(date: Date) -> String这个方法中进行,这个方法的运行时间为730ms,而其中 timeStr = f…
[译] Swift 里的强制 @inline 注解
Swift 中的 @inline 注解是一个含糊不清的东西,你在 Apple 的文档中是找不到它的,它并不能帮助你编写更清晰的代码,也没有任何目的性,它的存在只是为了帮助编译器做出优化的决策,但它同时也与你的 App 的性能的有很大关系。 在编程中,函数内联 是一种编译器优化技…
iOS 面向协议方式封装空白页功能
之前的文章中提到了,协议除了起规范作用,还有别一个用处,就是赋予能力。我们现在的目的就是让目标控制器或者目标视图在遵守我们的协议后,就可以有实现空白页的功能。 通过上述步骤后,只要让UIViewController遵守我们的协议,再调用一下lxf_EmptyDataSet方法就…
深入理解Moya设计
Moya是一个网络抽象层,它在底层将Alamofire进行封装,对外提供更简洁的接口供开发者调用。在以往的Objective-C中,大部分开发者会使用AFNetwork进行网络请求,当业务复杂一些时,会对AFNetwork进行二次封装,编写一个适用于自己项目的网络抽象层。在Ob…
Swift相关第三方资源整合
Alamofire:http网络请求事件处理的框架。 Moya:这是一个基于Alamofire的更高层网络请求封装抽象层。 Reachability.swift:用来检查应用当前的网络连接状况。 Perfect:swift的服务器端开发框架(针对于移动后端开发、网站和web应用…
iOS WebView生成长截图的第三种解决方案
由于项目需要,新近实现了一个长截图库 SnapshotKit。其中,需要支持 UIWebView、WKWebView 组件生成长截图。为了实现这个特性,查阅了很多资料,同时也做了不同的新奇思路尝试,最终实现了一个新的、取巧的技术方案。 以下主要总结了在“WebView生成长截图…
[译] Swift 代码格式化
在过去的几天里,社区一直在讨论 Tony Allevato 和 Dave Abrahams 采用官方版的 Swift 格式化工具。 数十名社区成员已经对 提案草案 进行了权衡。与所有样式问题一样,每个人都有不同的意见。但幸运的是,来自社区的话语通常具有代表性和洞察力,其中清晰表…