Swift
秋恨雪
熟悉C语言、Python、前端的h5, Vue等开发,熟悉安卓开发。现在致力于iOS研发。对算法也有一定的研究。现在在一家大型企业就职。
展开
-
Swift:Extension和Protocol
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。一、Swift中的扩展功能(Extension)可以动态给类增加功能,类似于Javascript中的prototype;而在objective-c中,是通过runtime来实现动态调用或者添加功能的。定义方式如下:extension SomeType {}1. 单位转换extension Do...原创 2015-07-26 08:25:47 · 2422 阅读 · 0 评论 -
Swift:基本概述
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。在介绍Swift之前,先说一段小插曲。Swift中文被翻译为“雨燕”。如图:而在苹果推出Swift之前,你在google上面搜索Swift的结果是:Taylor Swift(美国乡村音乐、流行音乐创作女歌手、演员、慈善家)所以苹果推出Swift之后,不经意就将她得排名挤下去了~~~言归正传:一、S...原创 2015-07-19 15:37:57 · 925 阅读 · 0 评论 -
Swift:闭包(Closures)
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。一、 基本概念 闭包(Closures)是自包含的功能代码块,可以在代码中使用或者用来作为参数传值。 在Swift中的闭包与C、OC中的blocks和其它编程语言(如C#)中的lambda, javascript中的函数嵌套等类似。 闭包可以捕获和存储上下文中定义的的任何常量和变量的引用。这就是所...原创 2015-08-12 11:27:36 · 2856 阅读 · 1 评论 -
Swift 面向协议编程
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。在 WWDC 2015上,苹果发布了 Swift 2.0 版本,这是自 Swift 发布以来进行的第二次重大改版,这次改进推出了很多新特性来帮助我等程序员写出更优雅的代码。在这些新特性里面,最让人兴奋的莫过于 协议扩展(protocol extensions) 了。在第一版的 Swift 当中,我...转载 2015-09-24 15:58:09 · 1702 阅读 · 0 评论 -
Swift 风格指南
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。这篇Swift风格指南与你看到的其他的指南有所不同,此篇指南主要焦点集中在打印和web展示的可读写上。我们创建此篇风格指南的目的,是为了让我们的图书,教程以及初学者套件中的代码保持优美和一致,即使我们有很多不同的作者共同编写这些图书。我们的首要目标是一致性,可读性和简洁性。命名(Naming)使用...转载 2015-09-22 20:00:02 · 950 阅读 · 0 评论 -
Swift:UIKit中Demo(一)
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。关于Swift的基本概念及语法知识,我在前面的章节中已经介绍了很多。这一节和下一节主要有针对性的讲解Swift在实际UIKit开发中的使用场景及注意点。先来看看Demo的最终效果图。Demo分析:1. 界面上面有三个按钮,他们的宽度不一致。2. 点击每个按钮的时候,下面有红色下划线跟着"走动"。一...原创 2015-08-23 09:25:49 · 3085 阅读 · 1 评论 -
Swift:函数与方法
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。在介绍Swift中的函数与方法之前,我们先看看objective-c中函数与方法的写法,以求两个数的和为例:1. 函数写法int sum(int a, int b) { return a + b;}2. 方法写法- (int)sum:(int)a b:(int)b { retur...原创 2015-07-24 09:09:19 · 3759 阅读 · 1 评论 -
Swift:实例方法和类型方法
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。大家对“实例方法和类型方法”的概念应该不陌生了,在objective-c中很常见。例如:1. 实例方法(减号开头)- (instancetype)init;调用的时候,必须先进行实例化一个对象(alloc), 然后调用init方法。2. 类型方法(加号开头)+ (void)animateWithD...原创 2015-08-04 21:32:31 · 8630 阅读 · 1 评论 -
Swift:面向对象(属性)
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。Swift中属性的用法比objective-c中属性的用法丰富了很多。下面我逐一介绍。一、 存储属性 和 延迟存储属性Demo如下:class Dog { var name = "旺财" init(){ println("狗被初始化了") }}clas...原创 2015-08-16 11:11:43 · 1673 阅读 · 0 评论 -
Swift:面向对象(继承与构造方法)
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。一、 继承1. Swift中定义的类,如果不继承自任何类,它就是基类。这一点和objective-c中定义的类不一样,在objective-c中定义的类默认的基类是NSObject。2. 重写父类的方法及属性,必须使用override的关键字(这样处理的话,更清晰了,很容易看出是父类的方法还是...原创 2015-08-17 11:15:21 · 1580 阅读 · 0 评论 -
Swift:UIKit中Demo(二)
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。这一节,继续为大家提供一个Demo,用来说明Swift中的各种语法及在UIView中的基本使用。效果图如下:看起来,这个Demo非常的简单。但是为了进行详细的语法说明,它的实现,均是用代码实现的,并且下方的进度条都是"组装"起来的。结构分析:1. 有一个根控制器ViewController.swi...原创 2015-08-29 10:31:23 · 2438 阅读 · 0 评论 -
Swift:下划线及switch使用总结
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。一、下划线在objective-c中,下划线(_) 并没有太大作用,一般用来定义变量名称,比如成员变量的定义 int _age; 但在Swift中,它却有非常大的功效。1. 只作为标记var money = 1_000_000变量money依旧代表的是数字1000000, 但看起来更清晰化,数字之...原创 2015-07-22 09:11:23 · 6714 阅读 · 0 评论 -
Swift:playground
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。在介绍Playground之前,我先罗列一些本人觉得有点重要然而零碎的知识点。1. Swift语法,每句话之后不用加分号,但也可以加分号。但如果写在一行的话,必须加分号。2. Swift严格要求变量在使用之前必须进行初始化(后面讲解构造方法的时候,也会介绍)3. 用let申明常量,用var来申明变...原创 2015-07-21 09:27:29 · 2153 阅读 · 1 评论 -
Swift:可选类型(Optional)
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。在我们使用objective-c表示字符串信息的时候,可以用下面方法书写。NSString *str = @"秋恨雪";str = nil;因为objective-c是弱类型语言,所以这里的str既可以是具体的字符串也可以是nil。但到了Swift中就不可以了,因为Swift是类型安全的语言,一...原创 2015-08-13 10:54:37 · 3881 阅读 · 3 评论 -
Swift:subscript
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。通常情况下,我们在使用数组(Array)或字典(Dictionary)时会使用到下标。其实在Swift中,我们还可以给类、结构、枚举等自定义下标(subscript)。一、基本使用struct TimesTable { let multiplier: Int subscr...原创 2015-07-29 09:53:48 · 5767 阅读 · 0 评论 -
Swift:元组、typealias和泛型
本人录制技术视频地址:https://edu.csdn.net/lecturer/1899 欢迎观看。一、元组元组是多个值组合而成的复合值。元组中的值可以是任意类型,而且每一个元素的类型可以是不同的。1. 直接给元组填充内容let http404Error = (404, "Not Found")2. 给元组内容设置名称let http200Status = (statusCode: 200, d...原创 2015-07-28 09:37:37 · 4602 阅读 · 1 评论 -
Swift:进阶知识点总结
在很久以前,我写了Swift系列,那还是在Swift2.0时期。不过那些知识点依旧有用。最近在开发新项目,使用的是Swift4.0,把一些个人认为重要的并且可以认为是进阶的知识点进行了总结。现在与大家分享。一、@escaping(逃逸闭包)默认情况下,闭包是非逃逸闭包func doWork(block: () -> ()) { block()}非逃逸闭包的作用域是原创 2017-12-20 21:52:03 · 1322 阅读 · 0 评论