内容字号:默认大号超大号

段落设置:段首缩进取消段首缩进

字体设置:切换到微软雅黑切换到宋体

当前分类:

> 软件编程 > Swift >

  • 用Swift编写网络层:面向协议方式05月15日

    在这篇文章中我们会看到怎样实现用纯swift编写网络层,而不依靠任何第三方库。让我们快去看看吧。相信看完之后我们的代码能够做到: 面向协议 易用 容易实现 类型安全 用枚举(enums)来配置终端(endPoints) 下面是一个最终我们网络层的示例 这个项目的最终目

    Tags:Swift网络层
  • Swift进阶05月15日

    从16年初正式切入swift, 到现在使用了两年多了,大大小小的项目也做了十几个,基础知识感觉掌握的差不多,是时候对 进阶内容 做一个了解和深入学习了,在这里经过我查找和自己的总结,特写一篇 Swift进阶 的文章,来和大家一块学习下Swift更深入的知识. Swift 1.访

    Tags:Swift
  • swift下使用runtime交换方法的实现05月15日

    swift下使用runtime交换方法的实现 前言 老的方式initialize现在已经不适用了,需要用新的方式代替。 思路: 定义一个启动的协议,在app完成启动的方法里把需要做method swizzle的类跑一边协议的方法 第一种 Step One protocol SelfAware: class { static fun

    Tags:runtimeswift
  • Swift 封装篇05月15日

    简评:在日益壮大的项目工程中,保持代码的封装性是一个很大的挑战。随着新功能的添加,对象通常会承担新的职责,需要也其他的对象一起工作,有时新的改动可能会违背最初的设计,避免抽象泄露(leaking abstractions)不是一件容易的事情。 好的 API 规范可

    Tags:Swift
  • 使用SwiftLint进行Swift代码规范检查05月15日

    原由 最近跟着公司大佬在做 Laravel 后端开发,要求使用 php lint 进行代码规范检查之后才能 push 代码,保证所有人写出风格统一的代码,方便后期的维护和 Review,于是开始往老本行上反思。 想想自己写了五六年的 iOS ,虽然自认代码还是写的很规整的,但是

    Tags:SwiftLintSwift
  • OC和Swift互相跳转05月15日

    首先在需要引入Swift的文件中导入头文件 #import 工程名-Swift.h OC跳转Swift页面: #import ViewController.h#import OCAndSwift-Swift.h // 引入头文件@interface ViewController ()@end@implementation ViewController- (void)viewDidLoad { [super viewD

    Tags:SwiftOC
  • Swift借助CocoaPods库实现UI功能上的串串烧05月15日

    不要重复发明轮子!不要重复发明轮子!不要重复发明轮子!重要的话说3遍!不过给轮子换个胎还是可以搞起的 ;)我们要实现一个iOS上的计数器功能,随便找一下CountdownLabel库就浮现出来,这个类自然继承于UILabel,不过添加了倒计时和很酷的动画效果:我只是

    Tags:CocoaPodsSwift
  • Swift5新特性了解一下?05月14日

    话说这两天好像是Google IO召开的日子,借机蹭一波热度,唱个反调,浅析一下Swift5可能会出现的新特性,也算是为下个月即将举办的 WWDC 预热预热吧。 ABI稳定性 ABI稳定性这个话题是一个历史遗留任务,最初是Swift3的目标,苹果的拖延症一直拖到了Swift5,还

    Tags:Swift5
  • Swift对比Kotlin05月14日

    Swift是苹果官方的最新开发语言,Kotlin是Android官方最新开发语言;两种语言在语法上有很多相似的地方, 接下来通过部分语法对比一下。 1 Hello Word Swift Kotlin 2 常量和变量 Swift常量用let, 变量用var Kotlin常量用val,变量用var 3 函数 Swift使用fu

    Tags:KotlinSwift
  • 轻松管理Swift项目中的不同环境05月14日

    想象一下,你已经完成了应用程序的开发和测试,现在你已准备好将其提交并发布。但有个问题:你所有的 API key、URL、图标或其他设置都是针对测试环境进行配置的。因此,在提交应用程序之前,你必须将所有这些内容切换到生产环境。显然,这听起来就不太好。此

    Tags:Swift
  • Swift下用lazy让方法只被调用一次05月14日

    在写 Swift 的过程中,我们会经常使用 lazy 来延迟一个对象的初始化。今天我发现了一个关于 lazy 的新的用法,也就用 lazy 来达到使「方法」只被调用一次,而不仅限于用在「对象」上。 lazy 常常用在一个对象需要延迟加载、或者初始化它的时候,要求 self 已

    Tags:lazySwift
  • Android平台的Swift—Kotlin05月14日

    WeTest 导读 Kotlin 已经出来较长一段时间了,有些同学已经对Kotlin进行了深入的学习,甚至已经运用到了自己的项目当中,但是还有较多同学可能只是听过Kotlin或简单了解过,这篇文章的目的是让这些同学对Kotlin有一个系统全面的认识,让有兴趣的同学在之后学

    Tags:KotlinSwift
  • Swift实现黑洞(漩涡)效果05月14日

    之前在学 CAEmitterLayer 的时候,晚上的教程大多数都是烟花、火焰之类的效果。之后闲下来之后去尝试了一下实现其他的效果。 接触过 CAEmitterLayer 的都知道,这玩意参数非常多。实现黑洞效果用到的参数主要有这几个: // 发射源形状,我们这里用到的是圆形

    Tags:Swift黑洞
  • Swift与面向协议编程04月27日

    非常抱歉由于最近忙于 技术书典 4 的本子的执笔,外加私事上的一些琐事的缘故,导致最近较长一段时间没有及时更新,还希望大家谅解(说的好像有人等你的更新一样:flushed: 本文原作是之前的一个面向新人的学习会上我的一个发表,文章内容为原幻灯片欢迎 戳我

    Tags:Swift面向协议编程
  • iOS/Swift多线程之如何避免数据竞争(Data race)04月27日

    多线程编程中, 常见的问题有 死锁Deadlock 死锁指的是由于两个或多个执行单元之间相互等待对方结束而引起阻塞的情况。每个线程都拥有其他线程所需要的资源,同时又等待其他线程已经拥有的资源,并且每个线程在获取所有需要资源之前都不会释放自己已经拥有的

    Tags:Swift多线程
  • Bindings, Generics, Swift and MVVM04月27日

    上一篇文章我已经介绍了 MVVM 设计模式作为一种对MVC的发展,但是最终我提出的解决方案只覆盖了特定的场景----不可变的 model 和 viewmodel 。为了覆盖剩余的场景,我们需要可变的 viewmodel 来把变化传递给views或者是 viewcontrollers 。 这篇文章我将通过

    Tags:MVVMSwift
  • Swift服务端错误处理04月27日

    Swift 的 Promise 可以让代码变得简单、正确并具有良好的语义。Swift 的错误处理系统也不例外,正确使用它可以大大提高服务器端代码质量。我们的应用 Beacon 使用 Vapor 构建 API。Vapor 提供了许多构建 API 的基本组件,但更重要的是,它提供了扩展功能,你

    Tags:Swift服务端
  • 如何在Swift中优雅的处理闭包导致的循环引用04月27日

    Objective-C 作为一门资历很老的语言,添加了 Block 这个特性后深受广大 iOS 开发者的喜爱。在 Swift 中,对应的概念叫做 Closure,即闭包。虽然更换了名字,但是概念和用法还是相似的,就算是副作用也一样,有可能导致循环引用。 下面我们用一个例子看一下

    Tags:Swift闭包
  • Swift之你真的知道为什么使用weak吗04月27日

    注意,这里的变量包含了值类型和引用类型。如果是引用类型,则是捕获了对象的引用,即在闭包中复制了一份对象的引用,对象的引用计数加1;如果是值类型呢,捕获的是值类型的指针,如果在闭包中修改值类型的话,同样会改变外界变量的值。 func delay(_ durati

    Tags:Swift
  • Swift&OC文件夹和文件的详细操作04月27日

    在iOS开发我们会遇到文件、音频、视频等等下载后本地存储的情况,这时对读文件,写文件就显得很重要,对文件夹以及文件中的文件的操作,这时就可以使用 NSFileManager(FileManager) 或 NSFileHandle(FileHandle) 来实现。下面会用OC和Swift的对比来实现对文

    Tags:SwiftOC

CopyRight © 2015-2016 QingPingShan.com , All Rights Reserved.