Swift的优势

作者: 桃子王 | 来源:发表于2017-02-03 15:13 被阅读129次

高效——易于读和写

例子1: 初始化可变数组并添加一个对象

Obj - C:用alloc分配内存,init初始化

NSMutableArray *array1 = [[NSMutableArray alloc] initWithObjects:@"1", @"2", @"3", nil];

[array1 addObject:@"4"];

Swift:使用var声明变量,使用“+=”拼接两个数组

var array1 = ["1", "2", "3"]

array1 += ["4"]

例子2: 取数组的第一个字符串对象,进行拼接并获取range

Obj - C:用“[]”调用方法,比较冗长

[[[array1 objectAtIndex:0] stringByAppendingString:@"111"] rangeOfString:@"1111"];

Swift::用“.”调用方法,非常简洁

array1[0].appending("111").range(of: "1111")

易于维护,文件数量更少

Swift创建的文件只有一个.swift文件,相比于Obj-C的“.h”和“.m”文件,会让文件数目减少一半。

两种语言的文件类型和结构

更安全

Obj-C:潜在的nil危险

潜在的nil危险

Swift:出现“?”来提醒潜在的nil对象

出现?提醒潜在的nil对象

函数式编程

例子:

有两个数组(如下图),根据数组indexes里的元素作为索引从numbers中取出数字并拼接成一个字符串

两个数组

Obj-C:命令式编程,可以思路很清晰地写出如下代码

Objective-C写法

虽然代码可以work,但是未免太长,也不具有函数性,整个代码段包含太多命令和状态的改变。

我们可以使用更加函数式的代码写出来。

Swift:

函数式代码1

还可以让代码变的更少:

函数式代码2

更更少:

函数式代码3

这就是函数式编程的魅力所在,不需要任何新的中间变量,和状态的改变,通过一行代码就可以达到九行代码的效果。

这也展现出函数式编程的核心 —— 比如使用map、reduce来代替for循环。

所以还没有接触过Swift的iOS开发者们可以将Swift学起来啦~保证不后悔 ᕕ(ᐛ)ᕗ

相关文章

  • Swift面试题

    1、Swift 比 Objective-C 有什么优势? Swift 速度更快,运算性能更高。Swift 语法简单...

  • Swift的优势

    高效——易于读和写 例子1: 初始化可变数组并添加一个对象 Obj - C:用alloc分配内存,init初始化 ...

  • Swift优势

    Swift 简洁的语法 Swift方法和函数的调用使用十分简化,使之看起来更像是自然的英语,语言也很有表现力,所以...

  • Swift 发展及前景

    阶段:Swift -> Cocoa Touch架构 -> App 优势:Modern Safety Fast Po...

  • Swift语言的优势☀️

    版权声明:本文为博主原创文章,未经博主允许不得转载。 swift语言怎么样?swift语言有哪些优点? Swift...

  • iOS性能考虑

    在 WWDC 14 的 Keynote 上,Swift 相比于其他语言的速度优势被特别进行了强调。但是这种速度优势...

  • Swift可行性分析

    swift优势: 兼容性: 对oc无缝兼容:通过建立桥接文件实现使用swift语法调用原oc代码例如:新建zaoz...

  • iOS开发日记-在OC中使用Swift

    时间有脚,从不停留。转眼Swift已经更新到4.0版本了。Swift的优势不需多讲,缺点自然也是有的,不过这些问题...

  • 使用swift泛型构建具有高测试性的网络层

    之前使用swift构建网络层使用的方法完全是Objective-C的实现方法,没有充分发挥swift的优势,在研究...

  • 从零开始Swift学习:基础篇

    博主的第一次决定奉献给Swift,在之前一直使用OC,虽然知道Swift各种优势但是就是不想学习,一方...

网友评论

    本文标题:Swift的优势

    本文链接:https://www.haomeiwen.com/subject/lfjdittx.html