• IOS 应用开发


    一、Swift简述

    1.1初识Swift

    Swift是苹果在WWDC 2014所发布的一门语言,用于开发IOS的OS X应用程序。

    2010年7月LLVM编译器的原作者苹果开发工具部门总监克里斯·拉特纳开始着手开发Swift语言,一直到到2014年6月才发布

    苹果宣称Swift的特点是:快速、现代、安全和具有交互性

    Swift的处理速度非常快。Swift比Objective-c快1.4倍,比python快3.9倍。

    在很多语法特性上Swift和一些脚本确实非常相似。但是,在应用程序开发中,Swift不是以一门脚本语言来运行的,所有的Swift代码都会被LLVM编译为本地代码,然后以极高的效率运行。

    Swift和Objective-c都是类型安全的语言,变量和方法都有明确的返回,并且变量在使用前需要进行初始化。而在语法方面,Swift迁移到了业界公认的非常先进的语法体系,其中包含了闭包、多返回和大量的函数式编程的理念,函数终于可以作为变量保存了。初步看来,Swift语法上借鉴了Ruby的很多人性化设计,但借助苹果自己手中强大的LLVM编译器,在性能上必然要甩开Ruby很远。

    从另一方面说,Swift的代码又是可以通过交换来解释执行的。Xcode6加入了所谓的Playground功能来对开发者输入Swift语句。这里之所以把“解释”两个字打上双引号,是因为即使在命令行工具交互地执行Swift语句。

    1.2了解Playground

    本书使用Xcode 6 beta4 作为开发工具,与之前发布的beta1版本相比,beta4对Swifit语言做了大幅修改。开发者可以使用Swift来编写更好、更安全的应用程序,而且新版本的Swift也修正了许多开发者提出的请求,尤其是对数组进行了重新设计。但是beta版本毕竟不同与正式版,依然存在着许多Bug。

    1.2.1Playground的编辑器模式

    Playground是什么呢?它是xcode6中引入的一种文档类型,在该文档类型的文件中封装了一些有用的东西,其中包括全部的swift代码。swift代码会在playground环境中实时运行,并且只要我们在playground中编辑swift代码,就会马上自动显示结果。swift文档也能包含一个文件夹,里面可以内嵌那些供代码使用的资源。

    例如:

     

     在上诉代码中,首先定义了变量string,然后通过加号将3个字符串链接并赋值给它。

    变量string是String类型,当我们生命常量或变量的时候,通过加上类型标注来说明常量或变量中要存储的类型。方法是在常量或变量名后面加上一个冒号和空格,再加上类型名称。之前的声明语句也可以写成下面这样。

    var string: String = "hello" + " " + "world"

    除了数字类型时间轴中还可以显示字符串、颜色和图像类型。当我们使用println函数的时候,在时间轴上还会显示控制控制台输出项目。

    当时间轴中有太多的Value History项目,想要收起某个临时不用想吗点,点击该项目顶端的表达式即可。

    在当前swfit代码的结尾处添加下面的代码:

    let color = UIColor.blueColor()

    2.创建第一个项目

    (1)打开xcode工具,选择File-》New-〉Project

    (2)选择“single View Application”,并点击“next”,创建一个简单实例app应用

    (3)输入项目名,公司名称、公司标识前缀名

    3.项目目录

    Hellow World

    Hellow WorldTests

    Hellow WorldUITests

    Products

    一个项目总共有以上四个项目,

    3.1Hellow World目录

    从目录中可以看出总共有6个文件,AppDelegate.swift、ViewController.swift、

    Main.storyboard、Assets.xcassets、LaunchScreen.storyboard、Info.plist。

    3.2打开main.storyboard,默认看到一个简单的空白应用界面,大小为平板界面大小。如果开发都只需要开发兼容iphone手机的app,那么可以把Use Auto Layout的勾选去掉

    二、Swift基本语法

    如果创建的是OS X playgroud 需要引入Cocoa,例如

    import Cocoa

    var myString = “Hello World!”

    print(myString)

    如果我们想要创建IOS playground则需要引入UIKit

    import UIKit;

    var myString = “Hello,World!”

    print(myString)

    标识符

    标识符就是给变量、常量、方法、函数、枚举、结构体、类、协议等指定名字。构成标识符的字母均有一定的规范,Swift语言中标识符的命名规则如下:

    区分大小写,Myname与myname是两个不同的标识符;

    标识符首字符可以以下划线(_)或者字母开始,但不能是数字;

    标识符中其他字符可以是下划线(_)、字母或数字;

    例如:userName、User_Name、sys_val、hign等为合法的标识符,而2mail、room#和class为非法标识符。

    swift空格

    Swift空格并不是箱c/C++,Java那样完全忽视空格,Swift对空格的使用有一定的要求,但又不像Python对缩进的要求那么严格。在Swift中,运算符不能直接跟在变量或常量的后面。

    let a = 1 + 2

    打印输出

    Swift使用print函数打印输出:

    print("Runnable")//输出

    print函数是一个全局函数,完整的函数签名为:

    public func print(items:Arry...,separator:String = defualt, Iteminator: String default)

    如果我们箱让其不换行输出,只需要 

    print("\(x)",terminator: "")

    接收用户的输入可以使用readLine()

    三、Swift数据类型

    3.1内置数据类型

    Int

    一般来说,你不需要专门指定整数的长度。Swift提供了一个特殊的整数类型Int,长度与当前平台的原生字长相同。

    在32位平台上,Int和Int32长度相同。

    在64位平台上,Int和Int64长度相同。

    UInt

    Swift也提供了一个特殊的无符号UInt,长度与当前平台的原生字长相同:

    浮点数:Float、Double

    浮点数是有小数不法的数字,比如3.1415,0.1和-23.5

    浮点类型笔整数类型表示的范围更大,可以存储比Int类型更大或者更小的数字。Swift提供两种有符号浮点数类型:

    Double表示64位浮点数。当需要存储很大或者很高精度的浮点数时请用此类型。

    Float表示32位浮点数。精度邀请不高的话可以使用此类型

    布尔值:Bool

    Swift有一个基本的布尔类型,叫做Bool。布尔值指逻辑上的值,因为它们只能是真或者假。Swift有两个布尔常量,true和false。

    字符创:String

    字符串是字符的序列集合,例如:

    “Hello world”

    字符Character

    字符指的是单个字母:

    “C”

    可选类型Optional

    使用可选elixir来处理值可能缺失的情况。可选类型表示有值和没有值:

    数值范围

    下表显示了不同变量类型内存的存储空间,及变量类型的最大最小值:

    类型别名

    typealias newname = type

    例如以下定义了Int的类型别名为Feet:

    typealias Feet = Int

    import Cocoa

    typealias Feet = Int

    var distance: Feet = 100

    print(distance)

    类型安全

    Swift是一个类型安全的语言。

    由于Swift是类型安全的, 所以它会在编译你的代码时进行类型检查,并把不匹配的类型标记为错误。这可以让你在开发的时候尽早发现并修复错误。

    import Cocoa

    var varA = 42

    varA = “This is hello”

    print(varA)

  • 相关阅读:
    扩展方法的定义及使用
    HTTP协议及POST与GET操作差异,C#中如何使用POST、GET等
    C#多线程学习(三) 生产者和消费者
    .NET设计模式(18):迭代器模式(Iterator Pattern)
    Net设计模式实例之备忘录模式(Memento Pattern)
    安装中文VS2008 SP1 和.NETFRAMEWORK 3.5SP1后智能提示是英文的解决办法
    ASP.NET MVC 入门系列教程
    在ASP.NET MVC中使用DropDownList
    .NET设计模式(2):单件模式(Singleton Pattern)
    想要成功,请记住!
  • 原文地址:https://www.cnblogs.com/riyueqian/p/15719410.html
Copyright © 2020-2023  润新知