Swift核心技术详解

学习Swift语言的核心技术体系

482390人学习

初级315课时2019/03/30更新

二维码下载学堂APP缓存视频离线看

张荣超
    • 畅销套餐
    • 精选套餐
    • 人气套餐
    • 尊享套餐
    • 高薪套餐
  • 课程介绍
  • 课程大纲

适合人群:

想要学习Swift编程语言核心技术的朋友

你将会学到:

学习Swift语言的核心技术体系

课程简介:

 视频课程已更新到Swift 4.x!      


一、课程优势和特色

   1、使用专业的铁三角电容麦克风对视频进行录制,保证视频有清晰的音质。   

   2、视频内容基于Swift**版,而且视频内容会随Swift版本的更新而及时更新。

   3、对Swift技术体系进行了完整介绍。      

   4、理论技术要点都有相关的案例程序进行演示和验证。

   5、案例程序尽可能通俗、易懂、有趣。

   6、绘制了大量的图表,对技术要点的阐释尽可能直观、形象、生动。

   7、节省时间,无须记笔记,视频的讲解过程中已经将所有的技术要点帮大家整理为笔记。

   8、呕心沥血的总结和研究成果,从苹果发布Swift起就开始使用和研究Swift了。


二、课程大纲

   1、为什么要学习Swift? 

      a. Swift取代Objective-C从而成为炙手可热的编程语言应该说是早晚的事。

      b. 如果我们能够抓住苹果公司编程语言更新换代的过渡期,尽早学习一门全新的技术,走在别人前面,等Swift大红大紫的时候你就是达人了。     

      c. Swift语言本身是一门非常优雅的面向对象编程语言。

    

 2、谁适合学?

      a. 对软件开发有一定的基础。

      b. 没有任何基础也完全没有关系,“兴趣才是best teacher“。


 3、学什么?

      a. 学习Swift编程语言的核心技术体系。

      b. 通过大量案例学习Swift在项目开发中的核心技术要点。


 4、怎么学?

       a. 认真看视频

        b. 反复敲代码

        c. 及时问老师


bbb.jpg

aaa.jpg

展开更多

课程大纲-Swift核心技术详解

  • 第1章说在前面的话(3分钟1节)

  • 1-1

    课程优势和特色(4.x)1、使用专业的铁三角电容麦克风对视频进行录制,保证视频有清晰的音质。   2、视频内容基于Swift最新版,而且视频内容会随Swift版本的更新而及时更新。3、对Swift技术体系进行了完整介绍。4、任何一个理论技术要点都有相关的案例程序进行演示和验证。5、案例程序尽可能通俗、易懂、有趣。6、绘制了大量原创的图表,对技术要点的阐释尽可能直观、形象、生动。7、节省时间,无须记笔记,视频的讲解过程中已经将所有的技术要点帮大家整理为笔记。8、呕心沥血的总结和研究成果,从苹果发布Swift的第一天起就开始使用和研究Swift了。

    「仅限付费用户」点击下载“课程优势和特色.zip”

    [03:22]
  • 第2章Swift简介(30分钟6节)

  • 2-1

    Swift的历史和特点(4.x)Swift语言的创始人是Chris Lattner(克里斯·拉特纳)。Chris于2005年加入苹果公司。Swift语言的底层架构大多由其一人开发完成。除了Swift语言的创始人之外,Chris还是鼎鼎大名的LLVM编译器框架的创始人,以及Clang项目的发起者。Clang是LLVM的一个编译器前端,其目标是取代鼎鼎大名的GCC编译器。早年苹果一直使用GCC作为官方的编译器,但对GCC的性能一直不满意,后来LLVM+GCC被替换成了LLVM+Clang。2010年,Chris获得首届“程序设计语言软件奖”。

    「仅限付费用户」点击下载“Swift的创始人、历史和特点.zip”

    [05:37]
  • 2-2

    搭建Swift开发环境(4.x)如果没有苹果电脑,可以在PC上安装虚拟机,比如:VirturalBox、VMWare Workstation等,然后在虚拟机里安装macOS操作系统。 两种下载和安装方式: (1)直接打开Mac App Store,搜索Xcode (2)通过Xcode的官方网站:https://developer.apple.com/download/

    「仅限付费用户」点击下载“搭建Swift开发环境.zip”

    [03:02]
  • 2-3

    在终端窗口中编译和运行HelloWorld(4.x)命令swiftc可用于编译Swift程序,其语法格式为: swiftc -o <编译后生成文件的文件名>.out <Swift程序的文件名>.swift 启动终端,切换到HelloWorld.swift所在的目录,输入如下命令对HelloWorld.swift进行编译: swiftc -o hw.out HelloWorld.swift 编译后,HelloWorld.swift所在的目录生成了新文件hw.out。 在终端中继续输入如下命令以运行Swift程序: ./hw.out 运行后,打印出字符串“Hello World!”。

    「仅限付费用户」点击下载“在终端窗口中编译和运行Swift HelloWorld.zip”

    [07:53]
  • 2-4

    在Xcode项目中编译和运行HelloWorld(4.x)点击屏幕左上角的三角形按钮,大家看,我把鼠标放在这个按钮上先不点击,它显示的是:build and the run the current scheme,也就是说或,编译并运行当前的项目。我们点击一下这个按钮,然后在屏幕的右下方显示出了程序的运行结果,打印出了字符串Hello World!"。其实,Xcode在编译的时候,也是调用了上节课我们调用的swiftc这个命令来编译main.swift这个文件,并且运行编译后生成的out文件,然后将我们想要打印的字符串打印出来。

    「仅限付费用户」点击下载“在Xcode的项目中编译和运行Swift HelloWorld.zip”

    [03:47]
  • 2-5

    在Playground中编译和运行HelloWorld(4)当我们写完这行代码的时候,Playground文件会自动编译并运行,然后将结果显示在这行代码的右边。我们将字符串“Hello World!”改为“Hello Swift!”,大家看,这行代码的运行结果立刻就在代码的右边显示出来了。所以,Playground文件是不是非常得好啊,当我们改了一行代码的时候,这行代码的运行结果会立刻显示出来,无须我们手边编译和运行playground文件,它会自动地编译和运行。

    「仅限付费用户」点击下载“在Xcode的Playground文件中编译和运行Swift HelloWorld.zip”

    [03:07]
  • 2-6

    Playground简介(4.x)Playground的字面意思是“操场, 运动场, 游乐场 ”,其特点是”实时预览,所见即所得“,也就是说,写完一行代码之后,立刻就会显示出该行代码的运行结果。 Playground可以用来快速方便地验证想法(Explore new ideas quickly and easily),正如Xcode的启动界面所示。

    「仅限付费用户」点击下载“Playground简介.zip”

    [07:32]
  • 第3章变量和常量(46分钟4节)

  • 3-1

    变量和常量的概述(4.x)计算机在运行时用到的所有数据都被存储在内存中。数据是各种各样的,因此,系统将数据存储到内存时会根据数据的类型为它分配一块合适的内存空间,被分配的这块内存空间被称为变量。当把数据存储到内存后,为了能够找到已经被存储的数据,需要为存储数据的那部分内存空间起一个名字,这个名字被称为变量名。变量相当于房间,变量名相当于房间号,变量中存储的数据相当于房间中的房客,变量中存储的数据的类型相当于房间中房客的类型。与变量对应的是常量,变量和常量的区别是:变量保存的数据可以变化;而常量保存的数据不可以变化,也就是说,常量一旦保存某个数据之后,就不能再变化为保存其它数据。

    「仅限付费用户」点击下载“变量和常量的概述.zip”

    [05:02]
  • 3-2

    变量和常量的声明及初始化(上)(4.x)变量或常量在使用前必须先声明并初始化,包括:(1)给变量或常量起一个名字(2)指定变量或常量的数据类型(3)给变量或常量赋予一个初始值。使用var声明变量,使用let声明常量。声明变量或常量都有两种语法格式,声明变量的第一种语法格式为:var 变量名 = 初始值,声明常量的第一种语法格式为:let 常量名 = 初始值。这种声明变量或常量的方式为隐式方式,也就是说,没有显式指定变量或常量的数据类型,但是为其设置了初始值,系统会根据初始值推断出变量或常量的数据类型。可以通过Quick Help查看某个变量或常量被系统推断为哪个数据类型。按住option键并单击声明的变量或常量即可显示其Quick Help信息。

    「仅限付费用户」点击下载“变量和常量的声明及初始化(上).zip”

    [10:42]
  • 3-3

    变量和常量的声明及初始化(下)(4.x)声明变量的第二种语法格式为:var 变量名: 数据类型 [= 初始值],声明常量的第二种语法格式为:let 常量名: 数据类型 [= 初始值]。这种声明变量或常量的方式为显式方式,也就是说,显式指定了变量或常量的数据类型。可以在同一行同时声明并初始化多个变量或多个常量,之间用逗号进行分隔。这些变量或常量的数据类型既可以是相同的,也可以是不同的。

    「仅限付费用户」点击下载“变量和常量的声明及初始化(下).zip”

    [14:32]
  • 3-4

    变量和常量的命名规则(关键字和标识符)(4.x)所谓关键字,就是Swift语言定义的、具有特殊用途的单词。例如:声明及初始化变量或常量时使用的var和let都是关键字。所谓标识符,就是给程序中的变量、常量、方法、函数、枚举、结构体、类、协议等命名的名字。在命名这些名字时,必须遵守以下命名规则:(1)区分大小写(2)不能是关键字(3)不能以数字开头(4)不能包含空格、数学符号、中划线、箭头、非法的Unicode字符、制表符

    「仅限付费用户」点击下载“变量和常量的命名规则(关键字和标识符).zip”

    [16:38]
  • 第4章数据类型(2小时14分钟16节)

  • 4-1

    数据类型的概述(4.x)任何变量、常量和直接数都有明确的数据类型,例如:整数类型、字符串类型等。当把值类型的值赋给变量或常量时,或把值类型的值作为实参传给函数的形参时,赋予或传递的都是值的拷贝。当把引用类型的值赋给变量或常量时,或把引用类型的值作为实参传给函数的形参时,赋予或传递的都是实参的引用。

    「仅限付费用户」点击下载“数据类型的概述.zip”

    [04:52]
  • 4-2

    整数类型(上)(4.x)整数类型用于表示整数。整数类型分为两种:(1)有符号整数类型:可以表示正整数、0和负整数。(2)无符号整数类型:只能表示正整数和0,不能表示负整数。有符号整数类型有五种表示方式:(1)Int8:在内存中占8位,第1位是符号位,能表示的整数范围是:-128(-2的7次方) ~ 127(2的7次方减1)。(2)Int16:在内存中占16位,第1位是符号位,能表示的整数范围是:-32768(-2的15次方) ~ 32767(2的15次方减1)。(3)Int32:在内存中占32位,第1位是符号位,能表示的整数范围是:-2147483648(-2的31次方) ~ 2147483647(2的31次方减1)。(4)Int64:在内存中占64位,第1位是符号位,能表示的整数范围是:-2的63次方 ~ 2的63次方减1。 (5)Int:对于32位的操作系统,Int = Int32;对于64位的操作系统,Int = Int64。除非出于内存优化、性能调优等考虑,否则,推荐总是使用Int表示有符号整数类型,这有助于代码的一致性和互操作性。

    「仅限付费用户」点击下载“整数类型(上).zip”

    [11:31]
  • 4-3

    整数类型(下)(4.x)如果被存储的值超出了变量或常量的数据类型所能表示的数值范围,程序是可以编译通过的,但是运行时会出错。可以访问不同整数类型的属性min和max来得到其最小值和最大值。如果声明并初始化整数类型的变量或常量时不指定具体的整数类型,系统默认将该变量或常量推断为Int类型。整数类型的直接数有4种进制表示方式:(1)10进制:默认的进制(2)2进制:以0b开头(3)8进制:以0o开头(4)16进制:以0x开头。可以给整数类型的直接数添加若干个0或_,以提高其可读性。

    「仅限付费用户」点击下载“整数类型(下).zip”

    [12:29]
  • 4-4

    不同整数类型运算时的相互转换(4.x)如果把两个不同整数类型的变量或常量进行运算(包括赋值运算、算术运算和比较运算),必须显式地将其转换为相同的整数类型,否则会编译出错。在进行显式类型转换时,如果被转换的变量或常量的值超出了转换后的数据类型所能表示的数值范围,程序是可以编译通过的,但是运行时会出错。

    「仅限付费用户」点击下载“不同整数类型运算时的相互转换.zip”

    [09:34]
  • 4-5

    浮点类型(4.x)浮点类型用于表示浮点数,也就是小数。浮点类型有两种表示方式:(1)Float:表示32位的浮点类型,可以精确到小数点后6位。(2)Double:表示64位的浮点类型,可以精确到小数点后15位。具体选用哪种浮点类型,取决于所存储的浮点数的范围。通常情况下,推荐使用Double。如果声明浮点类型的变量或常量时不指定具体的数据类型,系统默认将该变量或常量的数据类型推断为Double。可以给浮点类型的直接数添加若干个0或_,以提高其可读性。计算机存储浮点数时是不准确的,因此,对于浮点数的比较需要格外小心。比较两个浮点数是否相等时,比较可靠的做法是:比较其差的绝对值是否小于一个非常小的数值。

    「仅限付费用户」点击下载“浮点类型.zip”

    [14:55]
  • 4-6

    不同浮点类型运算时的相互转换(4.x)如果把两个不同浮点类型的变量或常量进行运算(包括赋值运算、算术运算和比较运算),必须显式地将其转换为相同的浮点类型,否则会编译出错。

    「仅限付费用户」点击下载“不同浮点类型运算时的相互转换.zip”

    [05:24]
  • 4-7

    整数类型和浮点类型运算时的相互转换(4.x)如果把整数类型和浮点类型的变量或常量进行运算(包括赋值运算、算术运算和比较运算),必须显式地将其转换为相同的类型,否则会编译出错。当把浮点类型转换成整数类型时,在该浮点类型的值不超出该整数类型所表示数值范围的前提下,浮点类型的值的小数部分会被截掉。在进行显式类型转换时,如果被转换的变量或常量的值超出了转换后的数据类型所能表示的数值范围,程序是可以编译通过的,但是运行时会出错。直接数没有明确的数据类型,直接数的数据类型在编译时才会被推断出来。可以把整数类型的直接数直接赋值给浮点类型的变量或常量,也可以把整数类型的直接数和浮点类型的直接数进行运算。

    「仅限付费用户」点击下载“整数类型和浮点类型运算时的相互转换.zip”

    [11:15]
  • 4-8

    布尔类型(4.x)布尔类型用于表示一个逻辑值,该逻辑值要么是真,要么是假,分别用true和false表示。例如:这次数学考试及格了吗?地铁三号线的早班车时间是6:00吗?布尔类型用Bool表示。布尔类型主要用于条件判断语句中。Swift的类型安全机制可以防止在应该使用布尔类型的时候使用了其它类型。

    「仅限付费用户」点击下载“布尔类型.zip”

    [05:29]
  • 4-9

    元组类型(上)(4.x)元组相当于关系数据库中的一条记录,它将多个任意数据类型的值合并为一个值。元组类型的值的语法格式为:(元素1, 元素2, ..., 元素n)。如果想要访问元组中的元素,有以下几种方式:(1)使用索引值访问(索引值从0开始)。(2)为元组中的元素指定名字,然后使用指定的名字访问。(3)把元组中的元素分解成多个变量或常量,然后使用变量名或常量名访问。此外,可以使用这种方式同时声明并初始化多个变量或常量。

    「仅限付费用户」点击下载“元组类型(上).zip”

    [08:51]
展开更多
在线
客服
APP
下载

下载Android客户端

下载iphone 客户端

官方
微信

关注官方微信

返回
顶部