这是Swift教程:Swift基础,第一(yī)个(gè)Swift程(chéng)序下载,继承了(le)C语言以(yǐ)及Objective-C的(de)特性,且克服了C语言的兼容性问题。Swift更加(jiā)的简单而且兼(jiān)容性更好,提供ioses和OS X应用编程的新编程(chéng)语言,这是一款功能非常强(qiáng)大(dà)的语言(yán)工具,简单实用,app新语言诞生。需要的人千(qiān)万别错过哦!
《Swift基础教程》完全针对初学者,既适合(hé)接触过其他编程语言的有经验程序员,也适合有足(zú)够学(xué)习欲望(wàng)的新手(shǒu),本书包(bāo)含(hán)大量(liàng)屏(píng)幕截图和示例(lì)代码,让初学者(zhě)全面了解Swift和Xcode工(gōng)具集,基于概念和交互式环境快速扎实掌握苹果开(kāi)发技能,真(zhēn)正学会开发(fā)完整App,欢迎下载!
1.swift是供ioses和(hé)OS X应用编程的新编程语言(yán),基于(yú)C和Objective-C,而却没(méi)有C的一些兼容约束
2.swift采(cǎi)用了安全的编程模式和添加现(xiàn)代的功能来是的编(biān)程更加(jiā)简单、灵活和有趣
3.界面则基于(yú)广受人(rén)民群众爱戴的Cocoa和Cocoa Touch框架,展示了软件(jiàn)开发(fā)的新(xīn)方(fāng)向。
4.swift已(yǐ)经存在了多年。Apple基于已有(yǒu)的编译(yì)器、调(diào)试器(qì)、框(kuàng)架作为其(qí)基础(chǔ)架构
5.通过ARC(Automatic Reference Counting,自动引用计数)来简化内存管(guǎn)理。我(wǒ)们的框架栈则一直(zhí)基于(yú)Cocoa
6.Objective-C进化支持了(le)块(kuài)、collection literal和模块(kuài),允许现代语言的框架无需深入即可使用
7.集成了现代编程语(yǔ)言思(sī)想,以及Apple工程文化的智慧。编译(yì)器是按照性能(néng)优化的,而(ér)语言是(shì)为开发优化的,无需互相(xiàng)折中。(by gashero)可以从"Hello, world"开(kāi)始学起并过渡(dù)到整个系统。
一个新语言的学(xué)习应该从打印"Hello, world"开始。在(zài)Swift,就是一行(háng):
println("Hello, world")
如果你写过C或Objective-C代码(mǎ),这个语法看起来很熟(shú)悉,在(zài)Swift,这就(jiù)是完(wán)整的程序了。你无需导入(import)一个单独的库供输入输出和字符串处理。全局范围的代(dài)码就是用于程序的入口,所以你无需编写(xiě)一(yī)个 main() 函数。你也无需在每个语句后写(xiě)分号(hào)。
这个(gè)入门(mén)会给出足够的信息教你完(wán)成一个编(biān)程(chéng)任务(wù)。无(wú)需担心你还不理解一些东西,所有没解释清楚的,会在本书(shū)后续(xù)详(xiáng)细讲(jiǎng)解。
Note
作(zuò)为(wéi)最佳实践(jiàn),可以将本章在Xcode的playground中打开。Playground允许你编辑代码并(bìng)立即看(kàn)到结果。
3 简单(dān)值
使用 let 来定(dìng)义常量, var 定(dìng)义变量。常量的值无需在编译时指定,但是至少要赋值(zhí)一次(cì)。这(zhè)意味着(zhe)你(nǐ)可以使用(yòng)常量来命名一(yī)个值,你发现只需一次确定,却用在(zài)多个地(dì)方。
var myVariable = 42
myVariable = 50
let myConstant = 42
Note
gashero注记
这里的常量定(dìng)义类似于函数式(shì)编程语言中(zhōng)的变量,一(yī)次赋值后就无法修改。多多使用有益健康。
一个常量或变量必须与赋值时拥有(yǒu)相同的(de)类(lèi)型(xíng)。因此你不用(yòng)严格定义(yì)类型。提供一个(gè)值就可以创建常量或变量,并(bìng)让编译器推(tuī)断其类型。在上面例子中,编译其会(huì)推断myVariable是(shì)一个整数类型,因为其初(chū)始化值就是个整数(shù)。
Note
gashero注记
类型与变量名(míng)绑定,属于静态类(lèi)型语言。有(yǒu)助于静态优化。与Python、javascript等有所区别。
如果初始化值没有提供足够(gòu)的(de)信息(或没有(yǒu)初始化值(zhí)),可以在变量(liàng)名后写类型,以冒(mào)号分隔。
let imlicitInteger = 70
let imlicitDouble = 70.0
let explicitDouble: Double = 70
Note
