SwiftUI【1】-Swift

学习SwiftUI之前,简单了解一下Swift。

swift语言是苹果2014年6月3日正式推出一门新的的语言。swift语言主要能够开发 ios 和mac相关的app.执行效率比c,c++,object_c开发的效率更高,并且编写更简洁。

官方定位

在苹果的官网上是这样描述和定位的:Swift,一种强大的开源编程语言,让大家都能开发出众的 App。Swift 是一种强劲而直观的编程语言,它由 Apple 创造,可用来为 iOS、Mac、Apple TV 和 Apple Watch 开发 app。它旨在为开发者提供充分的自由。Swift 易用并且开源,只要有想法,谁都可以创造非凡。

app swift 开源 swift开发软件_swift

历史


用一年时间,完成基本架构

Swift 大约历经 4 年的开发期,2014 年 6 月发表,目前最新版本5.1

2015年12月4日,苹果公司宣布其Swift编程语言开放源代码

Swift之父Chris Lattner LLVM 项目的主要发起人与作者之一 Clang 编译器的作者 苹果公司『开发者工具』部门的主管 领导Xcode、Instruments等编译器团队 Swift的大部分基础架构由他完成 Apple -> Tesla -> Google

app swift 开源 swift开发软件_app swift 开源_02


Swift版本

历时5年发展,从Swift1.x发展到了Swift5.x版本,经历了多次重大改变,ABI终于稳定 。ABI(Application Binary Interface):应用程序二进制接口

  • 应用程序与操作系统之间的底层接口
  • 涉及的内容有:目标文件格式、数据类型的大小\布局\对齐、函数调用约定等等

随着ABI的稳定,Swift语法基本不会再有太大的变动,此时正是学习Swift的最佳时刻

截止至2019年6月,目前最新版本:Swift5.1

Swift完全开源: https://github.com/apple/swift,主要采用C++编写

总结

Swift是一种适用于iOS和OS X应用的全新编程语言,它建立在最好的C和Objective-C语言之上,并且没有C语言的兼容性限制。Swift采用安全的编程模式,增加了现代功能使编程更容易、更灵活、更有趣。Swift以成熟且备受宠爱的Cocoa和Cocoa Touch框架为支撑,这是一个重新构想软件开发的机会。

Swift经过了数年的酝酿,Apple通过改进现有的编译器、调试器和框架结构奠定了Swift的基础,并通过Automatic Reference Counting(ARC)简化了内存管理。Swift的framework stack建立在坚实的Foundation和Cocoa基础之上,实现了现代化和彻底标准化。Objective-C本身已经逐步发展到到支持blocks、 collection literals和modules,使框架不间断地采用现代语言技术。基于这个基础,我们可以为今后的Apple软件开发引入一种新语言。

对Objective-C开发者来说,Swift看起来会很熟悉。它具有Objective-C命名参数的易读性和动态对象模型的强大之处,提供了无缝接入现有Cocoa框架和与Objective-C混编的能力。基于这个共同点,Swift引入了许多新的特性、统一的程序和面向对象的语言部分。

Swift对于新程序员是友好的,作为一个具有表现力和令人愉悦的脚本语言,它是第一个获得工业品质的系统编程语言。它支持playgrounds,一个允许程序员调试Swift代码并立即看到结果的革新性功能,而无需反复编译运行程序。

Swift从广阔的苹果工程师文化中结合了最好的现代语言思维和智慧。编译器针对性能进行了优化,语言也针对开发进行了优化,无需任何妥协。它的设计从“Hello World”扩展到整个操作系统。这一切使得Swift对于开发者和Apple是一个有意义的投资。

Swift以极好的方式来编写的iOS和OS X应用,并将使用新特性和功能继续演进。我们对Swift充满期待,已经迫不及待看你能用它创造什么了。

特点

  • 从它的语法中能看到JavaScript、Python、Java等语言的影子 语法简单、代码简洁、使用方便 可与Objective-C混合使用(混合编译) 提供了很多Objective-C中没有的新特性
  • 为什么设计Swift语言? 专为安全 高效强大
  • 重要性 苹果目前在大力推广Swift 已经出现Swift Only的API,如SwiftUI 很多企业招聘需要会Swift,以后Swift必将代替OC
  • 链式编程思想 如何让你的代码优雅的呈现出来,体现你代码高B格和可读性特性,那么不得不去思考去使用链式编程思想即能达到你想要的效果。 如果你是做iOS开发,相信你对Masonry这个自动布局库最是熟悉不过来。该库的编写用的就是链式编程思想,它极大的帮助了程序员简化自动布局的代码,通过(.)的调用方式将代码联合在一起,大大的增加了代码可读性,使他看起来更加简单而优雅。

参考学习教程(推荐)

《Swift 编程语言》是苹果官方对 Swift 语言做的权威指南,很遗憾苹果公司并没有进行多语言支持。所以这里有人独立发起了这个手册的翻译工作——与其他现存翻译不同的是:它同步更新苹果官方的 Swift 开发者预览版 !

app swift 开源 swift开发软件_app swift 开源_03

本文参考文章

  • Swift简介
  • Swift学习总结
  • Swift 链式编程思想让你的代码更优雅
  • Swift Compiler
  • 官网传送门
  • Swift学习之介绍