首页
首页
AI Coding
NEW
沸点
课程
直播
活动
AI刷题
APP
插件
搜索历史
清空
创作者中心
写文章
发沸点
写笔记
写代码
草稿箱
创作灵感
查看更多
会员
登录
注册
Dickens是漫画吗
掘友等级
获得徽章 0
动态
文章
专栏
沸点
收藏集
关注
作品
赞
53
文章 53
沸点 0
赞
53
返回
|
搜索文章
赞
文章( 53 )
沸点( 0 )
iOS底层原理总结 - 探寻Runtime本质(一)
在学习Runtime之前首先需要对isa的本质有一定的了解,这样之后学习Runtime会更便于理解。 回顾OC对象的本质,每个OC对象都含有一个isa指针,__arm64__之前,isa仅仅是一个指针,保存着对象或类对象内存地址,在__arm64__架构之后,apple对isa…
一道值得思考的iOS面试题
最终问题就是这段代码的运行结果。 相信当你看到这个结果的时候会和我一样吃惊,不和逻辑啊,怎么竟然能执行成功并且还打印出来当前controller了,不符合常理啊。 对于计算机而言,不存在什么魔法,如果一段代码能运行必然存在它的原理。 我们需要做的就是分析为什么能成功。 我们需要…
Swift实现八种经典排序算法
冒泡排序是一种简单的排序算法。它重复地走访过要排序的数列,一次比较两个元素,如果它们的顺序错误就把它们交换过来。走访数列的工作是重复地进行直到没有再需要交换,也就是说该数列已经排序完成。这个算法的名字由来是因为越小的元素会经由交换慢慢“浮”到数列的顶端。 <1>比较相邻的元素。…
23个经典设计模式的Swift实现
也就是工厂问题想解决的原始问题。 从代码和UML可以看出,为了得到产品A,调用者Client要同时依赖Product, ConcreteProductA和ConcreteProductB,并亲自写一个创建产品的方法。 每当需求新增一个产品,就要改动到调用方Client。如果这一…
从值类型复制引发的Swift内存的思考01
前不久看了一篇文章,喵神的值类型和引用类型,在阅读的时候有一个结论 值类型被复制的时机是值类型的内容发生改变时... 这个时候本来是想记下来的,后来转念一想,实践出真知,所以我就基于这个问题: 值类型到底是什么时候被赋值的? 做了一些调查和实践,从而有了这系列文章... 在这块…
最近很火的 Safe Area 到底是什么
iOS 7 之后苹果给 UIViewController 引入了 topLayoutGuide 和 bottomLayoutGuide 两个属性来描述不希望被透明的状态栏或者导航栏遮挡的最高位置(status bar, navigation bar, toolbar, tab …
iOS超级超级详细介绍GCD
Grand Central Dispatch(GCD)是异步执行任务的技术之一。一般将应用程序中记述的线程管理用的代码在系统级中实现。开发者只需要定义想执行的任务并追加到适当的Dispatch Queue中,GCD就能生成必要的线程并计划执行任务。由于线程管理是作为系统的一部分…
2017最受欢迎的30个Swift 库,你关注到了吗?
在过去的一年里,国外的 Mybridge 对将近 6000 个 Swift 开源库进行了筛选和比较,以受欢迎程度和新近度为标准,挑选出了在 2017 年 1 月至 12 月发布的前 30 个库或项目。希望这些开源库能加快你的开发进程,帮助实现你的开发目标。 1. Vapor …
Swift多线程编程总结
在开始多线程之前,我们先来了解几个比较容易混淆的概念。 线程与进程之间的关系,拿公司举例,进程相当于部门,线程相当于部门职员。即进程内可以有一个或多个线程。 并发指的是多个任务交替占用CPU,并行指的是多个CPU同时执行多个任务。好比火车站买票,并发指的是一个窗口有多人排队买票…
使用 Swift 和 Vapor 构建区块链服务器
我在上一篇文章中讨论了如何用 Swift 语言实现基本的区块链。在这篇文章里会使用服务器端 Swift 框架 Vapor 在云端实现区块链。通过 HTTP 协议来构建区块链 Web API,使用不同的路由来提供必要的功能。阅读本文需要在电脑上安装 Vapor 框架,还需要对 S…
下一页
关注了
1
关注者
1
收藏集
1
关注标签
2
加入于
2016-08-24