《Swift开发实战》——第1章,第1.1节Swift概述

第1章 工欲善其事,必先利其器——Swift语言基础
Swift开发实战
Swift是苹果公司在WWDC2014大会上所发布的一门全新的编程语言,用于编写OS X和iOS应用程序。苹果公司在设计Swift语言时,就有意让其和Objective-C共存,Objective-C是苹果操作系统在导入Swift前使用的编程语言。本章将带领大家初步认识Swift这门神奇的开发语言,让读者为学习本书后面的知识打下基础。

1.1 Swift概述
Swift是一种为开发iOS和OS X应用程序而推出的全新编程语言,是建立在C语言和Objective-C语言基础之上的,并且没有C语言的兼容性限制。Swift采用安全模型的编程架构模式,并且使整个编程过程变得更容易、更灵活、更有趣。另外,Swift完全支持市面上的主流框架——Cocoa和Cocoa Touch,这为开发人员重新构建软件和提高开发效率带来了巨大的帮助。本节将带领大家一起探寻Swift的诞生历程。

1.1.1 Swift的创造者
苹果公司的Swift语言的创造者是苹果开发者工具部门总监Chris Lattner(1978年出生)。Chris Lattner是LLVM项目的主要发起人与作者之一,也是Clang编译器的作者。Chris Lattner曾经开发了LLVM,这是一种用于优化编译器的基础框架,能将高级语言转换为机器语言。LLVM极大地提高了高级语言的效率,Chris Lattner也因此获得了首届SIGPLAN奖。

2005年,Chris加入LLVM开发团队,正式成为苹果的一名员工。在苹果公司的9年间,他由一名架构师一路升职为苹果开发者工具部门总监。目前,Chris Lattner主要负责Xcode项目,这也为Swift的开发提供了灵感。

Chris Lattner从2010年7月才开始开发Swift语言,当时它在苹果内部属于机密项目,只有很少人知道这一语言的存在。Chris Lattner在个人博客上称,Swift 的底层架构大多是他自己开发完成的。2011年,其他工程师开始参与项目开发,Swift 也逐渐获得苹果内部重视,直到2013年成为苹果主推的开发工具。

Swift的开发结合了众多工程师的心血,包括语言专家、编译器优化专家等,苹果其他团队也为改进产品提供了很大帮助。同时Swift也借鉴了其他语言(如Objective-C、Rust、Ruby等)的优点。

Swift语言的核心吸引力在于Xcode Playgrounds功能和REPL,它们使开发过程具有更好的交互性,也更容易上手。Playgrounds在很大程度上受到了Bret Victor的理念和其他互动系统的启发。同样,具有实时预览功能的 Swift 使编程变得更简单,学习起来也更加容易,目前已经引起了开发者的极大兴趣。这有助于苹果吸引更多的开发者,甚至将改变计算机科学的教学方式。图1-1是Chris Lattner在WWDC2014大会上对Swift进行演示。

1.1.2 Swift的优势
在WWDC2014大会中,苹果公司展示了如何能让开发人员更快进行代码编写及显示结果的“Swift Playground”,在左侧输入代码的同时,可以在右侧实时显示结果。苹果公司表示,Swift是基于Cocoa和Cocoa Touch专门设计的。由于Swift可以与Objective-C兼容使用,因此,开发人员可以在开发过程中进行无缝切换。

具体来说,Swift语言的突出优势如下所示。

(1)易学。

作为一门苹果独立发布的支持型开发语言,Swift语言的语法内容混合了Objective-C、JavsScript和Python,其语法简单、使用方便、易学,大大降低了开发者入门的门槛。同时Swift语言可以与Objective-C混合使用,对于用惯了高难度Objective-C语言的开发者来说,Swift语言更加易学。

(2)功能强大。

Swift允许开发者通过更简洁的代码来实现更多的内容。在WWDC2014发布会上,苹果演示了如何只通过一行简单的代码,完成一个完整图片列表加载的过程。另外,Swift还可以让开发人员一边编写程序,一边预览自己的应用程序。

(3)提升性能。

Swift语言可以提升程序性能,并同时降低开发难度,没有开发者不喜欢这样的编程语言。

(4)简洁、精良、高效。

Swift是一种非常简洁的语言。与Python类似,不必编写大量代码即可实现强大的功能,并且也有利于提高应用开发速度。Swift可以更快捷有效地编译出高质量的应用程序。

(5)执行速度快。

Swift的执行速度比Objective-C更快,这样会在游戏中看见更引人入胜的画面(需要苹果新的Metal界面的帮助),而其他应用也会有更好的响应性。

(6)全面融合。

苹果对全新的Swift语言的代码进行了大量简化,在更快、更安全、更好的交互、更现代的同时,开发者们可以在同一款软件中同时用Objective-C、Swift、C3种语言,这样便实现了3类开发人员的完美融合。

时间: 2024-11-08 20:22:59

《Swift开发实战》——第1章,第1.1节Swift概述的相关文章

《Swift开发实战》——第16章,第16.1节下标脚本语法

第16章 下标脚本 Swift开发实战 在Swift语言中,类(class).结构体(structure)和枚举(enumeration)等目标中定义下标脚本,被认为是访问对象.集合或序列的快捷方式,不需要再调用实例的特定的赋值和访问方法.在本章的内容中,将详细讲解Swift下标脚本的基本知识. 16.1 下标脚本语法 在Swift语言中,可以使用下标脚本访问一个数组(Array)实例中的元素,参见如下所示的格式. someArray[index] 在访问字典(Dictionary)实例中的元素

《Swift开发实战》——第2章,第2.1节千里之行,始于足下——Swift语言基础

第2章 千里之行,始于足下--Swift语言基础 Swift开发实战 Swift 是一种适用于 iOS 和 OS X 应用开发的全新编程语言,它建立在C和Objective-C语言基础之上,并且没有C语言的兼容性限制.Swift 采用安全的编程模式,增加了现代功能,使编程更容易.更灵活.更有趣.Swift 以成熟且备受宠爱的Cocoa和 Cocoa Touch 框架作为支撑,这是一个重新构建软件开发的机会.本章将带领大家学习Swift这门神奇语言的基本语法知识,为读者步入本书后面知识的学习打下基

《Swift开发实战》——第1章,第1.2节搭建开发环境

1.2 搭建开发环境都说"工欲善其事,必先利其器",这一说法在编程领域同样行得通,学习Swift开发也离不开好的开发工具的帮助.在本节中,将详细讲解搭建Swift语言开发环境的基本知识. 1.2.1 Xcode 6介绍要开发iOS的应用程序,需要一台安装有Xcode工具的Mac OS X电脑.Xcode是苹果提供的开发工具集,它提供了项目管理.代码编辑.创建执行程序.代码调试.代码库管理和性能调节等功能.这个工具集的核心就是Xcode程序,提供了基本的源代码开发环境. Xcode是一款

《Swift开发实战》——导读

目 录 内容简介 前 言 第1章 工欲善其事,必先利其器--Swift语言基础 1.1节Swift概述1.2节搭建开发环境1.3节使用Xcode开发环境1.4节启动iOS 8模拟器 第2章 千里之行,始于足下--Swift语言基础2.1节千里之行,始于足下--Swift语言基础2.2节简单值2.3节流程控制2.4节函数和闭包2.5节对象和类2.6节枚举和结构体2.7节协议和扩展2.8节泛型 第3章 新语言,新特性--Swift的基础语法 第4章 运算符 第5章 字符串和字符 第6章 表达式 第7

《Swift开发实战》——第2章,第2.2节简单值

2.2 简单值 在Swift语言中,使用关键字"let"来声明常量,使用关键字"var"来声明变量.对于一个Swift常量值来说,在编译时并不需要有一个明确的值,但是只能为这个常量赋值一次.也就是说,可以用常量来表示一个只需要决定一次但是需要使用很多次的值.例如,在本章前面的实例2-1中,如下都是声明常量值的实现代码. var value=123; var i:Int = 0; var num=0; 常量或者变量的类型必须和赋给它们的值一样,在进行声明操作时,可以选

《Swift开发实战》——第1章,第1.4节启动iOS 8模拟器

1.4 启动iOS 8模拟器 Xcode是一款功能全面的应用程序,通过此工具可以轻松输入.编译.调试并执行Swift程序.如果想在Mac上快速开发iOS应用程序,则必须学会使用这个强大的工具的方法.接下来将简单介绍使用Xcode编辑启动模拟器的基本方法. (1)Xcode位于"Developer"文件夹内中的"Applications"子文件夹中,快捷图标如图1-48所示. (2)启动Xcode 6后的初始界面如图1-49所示,在此可以设置创建新工程还是打开一个已存

《Swift开发实战》——第2章,第2.4节函数和闭包

2.4 函数和闭包 在本章前面的实例2-1中,testfunc就是一个函数.在Swift语言中,使用关键字func来声明一个函数,使用名字和参数来调用函数,使用"→"来指定函数返回值.例如,如下所示的演示代码. func greet(name: String, day: String) -> String { return "Hello \(name), today is \(day)." } greet("Bob", "Tues

《Swift开发实战》——第2章,第2.3节流程控制

2.3 流程控制在本章前面的实例2-1程序中,下面这些都是实现流程控制工作的实现代码. switch("abc") { case "123": println("123"); case "456","abc": println("123 abc "); default: println("没有找到合适的匹配"); } var i:Int = 0; while( i&l

《Swift开发实战》——第16章,第16.3节下标脚本选项

16.3 下标脚本选项 在Swift语言中,下标脚本允许任意数量的入参索引,并且每个入参类型也没有限制.下标脚本的返回值也可以是任何类型,下标脚本可以使用变量参数和可变参数.但是如果使用写入读出(in-out)参数或给参数设置默认值,这些操作都是不允许的. 在Swift语言中,可以在一个类或结构体中根据自身需要提供多个下标脚本实现.在定义下标脚本时通过入参个类型进行区分,使用下标脚本时会自动匹配合适的下标脚本实现运行,这就是下标脚本的重载. 在Swift程序中,一个下标脚本入参是最常见的情况,但