Swift-001-Swift簡介及基礎文法

來源:互聯網
上載者:User

標籤:round   分享圖片   變數   標頭檔   程式   ble   建立   賦值   14.   

 

1.Swift簡介

2014年WWDC 發布的新開發語言,可與OC共同運行於Mac OS 和 iOS 平台,用於搭建基於蘋果平台的應用程式。

swift2.0之後的文法則趨於穩定,2017年發布的swift4.0雖有改動,但也只是增添了一些新特性。這些新特性需要在Xcode9上運行才能顯示出效果。值得一提的是它支援unicode9,也就是說,可以用某些圖片表徵圖來充當變數。

2.特點

①快速,安全,使用安全的編程模式並添加很多新特性,使編程更簡單,擴充性更強(支援Cocoa 和 Cocoa Touch架構)。

取消了OC指標和其他不安全訪問的使用.變數總是初始化之前使用,數組和整數檢查溢出,記憶體自動管理。

③支援代碼預覽,允許程式員在不編譯和運行應用程式的前提下運行 Swift 代碼並即時查看結果

④捨棄OC 早起的SmallTalk的文法,全面改為打點調用(使用點文法調用屬性或者函數).

⑤提供了類似Java的命名空間(name space)/泛型(generic)/運算對象重載(operator overloading

⑥文法非常簡潔,讓編程的流程大大縮短、簡化、高效、強大.

⑦去掉NS首碼

3.為什麼要學習Swift

swift作為面向協議語言,不僅能寫移動端,也可以做到搭建伺服器端。縱觀國內外iOS開發界,已經有許多公司直接或間接採用swift開發,使用swift語言開發已成為未來iOS開發的趨勢。swift以簡潔、優雅等優點迅速俘獲廣大開發人員的青睞。

二、用Playground 體驗swift開發

開啟Xcode ,選擇建立一個playground 項目

左邊代碼區,右邊顯示區(編譯結果)

建立一個普通的UIView對象

 

playgound檔案的左邊是代碼區,右邊則是顯示結果的地區。當點擊用於眼睛時會即時顯示出介面效果

可以立即快速查看(Quick Look)和顯示結果(Show Result)正如所示:

 

Swift 和OC的重大區別

 

1>在swift中是沒有.h和.m檔案之分的。所有的代碼全部都儲存在一個檔案裡面。在swift中所有的代碼都被封裝在{}裡面

2>OC使用alloc init進行初始化,而swift使用()

3>OC中使用[]來調用方法,而swift中採用點文法。比如UIColor.red

4>swift中不需要用分號分割語句

5>不需要#import匯入標頭檔,就可直接使用,

6>print: NSLog, true 和 false  替代 Yes 和 No 

7>函數和閉包 使用func來聲明一個函數,使用名字和參數來調用函數。使用->來指定函數傳回值。

8>子類的定義方法是在它們的類名後面加上父類的名字,用冒號分割。 子類如果要重寫父類的方法的話,需要用override標記

9>枚舉和結構體 使用enum來建立一個枚舉,使用struct來建立一個結構體。結構體和類有很多相同的地方,比如方法和構造器。它們結構體之間最大的一個區別就是 結構體是傳值,類是傳引用

10>介面和擴充: 使用protocol來聲明一個介面

 

三、常量和變數

1>.資料類型:

常見的資料類型變數:

但其實,在swift中,是不存在基本的資料類型的,所謂的資料類型,其實都只是結構體

2.變數和常量:

聲明:

swift中用let聲明常量,用var聲明變數。

常量不能修改他的值

//錯誤示範,let z 在聲明的時候並沒有賦值常量是不可改變的,只能在聲明時賦值

在開發中,通常會優先選擇使用let,因為不可變會更安全一點。所以建議在寫代碼之時,先選擇let,等到需要變化的時候再改成var。

自動推導:

建立一個UIView,不指定類型。可以看到控制台上會列印出UIView的資訊。這個現象被稱為swift的自動推導。事實上,在代碼左側定義的類型只是程式員希望的類型,而右側才是程式真實的類型。

也就是說,變數或常量的類型會根據右側代碼執行的結果,推匯出對應的類型。

可以使用熱鍵option點擊查看類型。

 

嚴格之處:在Swift 中,任何不同類型的資料之間是不允許直接運算的。

 

如果非要讓不同類型資料之間能夠運算,可以將其中一個類型進行轉換

此時得到的結果就是25。在swift中,做類型轉換時是將資料括起來,相當於swift結構體中的建構函式。

 

當然也可以將前面的整數轉換成Double型。此時就能列印出小數來。

結果是25.5

//指定類型

 

 

Swift-001-Swift簡介及基礎文法

相關文章

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.