## 简介
Swift 是一种开放源代码的支持多编程范式和编译式的开源编程语言,由苹果于2014年WWDC(苹果开发者大会)发布,用于开发 iOS,OS X 和 watchOS 应用程序。
Swift 在各个方面优于 Objective-C, 以代替 Objective-C 获得更优的开发效率和开发体验
swift 在线编译运行
swift是第一套具有与脚本语言同样的表现力和趣味性的系统编程语言。2015年,苹果公司开放SWIFT源代码。
Swift 是一种全新的编程语言,结合了 C 和 Objective-C 的优点,并且不受C兼容性的限制。Swift 采用的安全编程模式添加了很多新特性,这使得编程更简单,更灵活,也更有趣。Swift 在 Foundation 和 Cocoa的基础上构建框架,并且采用了很多 Objective-C 的命名参数以及动态对象模型,并且支持过程式编程和面向对象编程。
Swift 将现代编程语言的精华和苹果工程师文化的智慧结合了起来,既能够开发简单的小程序,也能够构建出一套完整的操作系统。
在线编译运行工具
Swift编程特点
操场使编写语言代码难以置信的简单和有趣。输入一行代码,结果立即出现。如果您的代码通过一个循环运行一段时间你可以看它在时间轴助理进展。在时间线中的图表显示变量,组成一个视图时绘制每一步,并能起到一个动画SpriteKit现场。当你在操场上完善你的代码,只需将代码到您的项目。有了游乐场,您可以:
设计一种新的算法,看其工作的每一步
创建新的测试,验证他们推动到您的测试套件前工作
尝试新的API来磨练你的Swift的编码技巧
swift 优点
1、 简洁的语法,性能较好
swift语言比OC精简,整个项目中丢掉了.h头文件,以及头文件的引入。性能是Objective-C的1.3倍
2、报错精准
报错的时候直接显示报错行。
3、定义变量简单
定义变量不用区分整型,浮点型等等,变量使用var,常量使用let。swift 在线编译运行
4、可视化互动效果
开发工具带来了Xcode Playgrounds功能,该功能提供强大的互动效果,能让Swift源代码在撰写过程中实时显示出其运行结果。
5、函数式编程的支持(Map、FlatMap、Filter、Reduce等函数方法)
Swift 语言本身提供了对函数式编程的支持;
Swift 缺点
1、推广度还不全面,资源少
很多大公司,以及一些老的项目,仍然使用OC语言进行开发。当遇到一些问题的时候,解决问题的方案很少,网上的资源也很稀缺。
2、不够稳定
从swift2.0到swift3.0再到现在的swift4.0区别很大,每次升级都会有几十甚至上百个错误提示。
3、第三方库的支持不够多,需要导入OC版本的第三方进行混合开发,有的·兼容性·并不好会使项目变大,运行速度也会变慢。
4、使用 Swift 后, App 体积大概增加 5-8 M左右
5、改变上线方式
不能使用application Loader上传包文件,会提示你丢失了swift support files,只能使用xcode直接上传。
swift 在线编译运行
Swift特色功能
闭包的统一与函数指针
元组和多个返回值
泛型
快速而简洁的迭代范围或集合
支持的方法,扩展的协议结构。
函数式编程模式,例如:映射(map)和过滤器(filter)
Swift与 Objective-C对比
从目前看来,应该是Objective-C到Swift的过渡时期,虽然Swift有很多很方便的地方,但是还存在着一些局限性和不稳定性,因此大公司还是愿意选择使用Objective-C来编写项目底层核心库。但是随着Swift的进化,这些问题终将被解决。
swift 在线编译运行