當前位置: 首頁 > 新聞資(zī)訊 > swift 3開(kāi)發指南(nán) swift開(kāi)發編程 swift語言語法及開(kāi)發技術 swift語言

swift 3開(kāi)發指南(nán) swift開(kāi)發編程 swift語言語法及開(kāi)發技術 swift語言

發布時間:2024-03-20 15:26:50

  1. 蘋果的編程語言 Swift 是用什麽開(kāi)發的
  2. Objective-C 和 Swift 語言,哪個更容易學習?
  3. iOS程序可使用Objective-C或Swift語言進行開(kāi)發嗎(ma)?

一(yī)、蘋果的編程語言 Swift 是用什麽開(kāi)發的

swift是什麽?

swift是蘋果于wwdc 2014發布的編程語言,這裏引用the swift programming language的原話(huà):

swift is a new programming language for ios and os x apps that builds on the best of c and objective-c, without the constraints of c compatibility. swift adopts safe programming patterns and adds modern features to make programming easier, more flexible and more fun. swift’s clean slate, backed by the mature and much-loved cocoa and cocoa touch frameworks, is an opportunity to imagine how software development works. swift is the first industrial-quality systems programming language that is as expressive and enjoyable as a scripting language.

簡單的說:

swift用來寫ios和os x程序。(估計也不會支持其它屌絲系統)

swift吸取了c和objective-c的優點,且更加強大(dà)易用。

swift可以使用現有的cocoa和cocoa touch框架。

swift兼具編譯語言的高性能(performance)和腳本語言的交互性(interactive)。

swift語言概覽

基本概念

注:這一(yī)節的代碼源自the swift programming language中(zhōng)的a swift tour。

hello, world

類似于腳本語言,下(xià)面的代碼即是一(yī)個完整的swift程序。

println("hello, world")

變量與常量

swift使用var聲明變量,let聲明常量

var myvariable = 42 myvariable = 50 let myconstant = 42

類型推導

swift支持類型推導(type inference),所以上面的代碼不需指定類型,如果需要指定類型:

let explicitdouble : double = 70

swift不支持隐式類型轉換(implicitly casting),所以下(xià)面的代碼需要顯式類型轉換(explicitly casting):

let label = "the width is " let width = 94 let width = label + string(width)

字符串格式化

swift使用\(item)的形式進行字符串格式化:

let apples = 3 let oranges = 5 let applesummary = "i have \(apples) apples." let applesummary = "i have \(apples + oranges) pieces of fruit."

數組和字典

swift使用[]操作符聲明數組(array)和字典(dictionary):

var shoppinglist = ["catfish", "water", "tulips", "blue paint"] shoppinglist[1] = "bottle of water" var occupations = [ "malcolm": "captain", "kaylee": "mechanic", ] occupations["jayne"] = "public relations"

一(yī)般使用初始化器(initializer)語法創建空數組和空字典:

let emptyarray = string[]() let emptydictionary = dictionary<string, float>()

如果類型信息已知(zhī),則可以使用[]聲明空數組,使用[:]聲明空字典。

控制流

概覽

swift的條件語句包含if和switch,循環語句包含for-in、for、while和do-while,循環/判斷條件不需要括号,但循環/判斷體(tǐ)(body)必需括号:

let individualscores = [75, 43, 103, 87, 12] var teamscore = 0 for score in individualscores { if score > 50 { teamscore += 3 } else { teamscore += 1 } }

可空類型

結合if和let,可以方便的處理可空變量(nullable variable)。對于空值,需要在類型聲明後添加?顯式标明該類型可空。

var optionalstring: string? = "hello" optionalstring == nil var optionalname: string? = "john appleseed" var gretting = "hello!" if let name = optionalname { gretting = "hello, \(name)" }

靈活的switch

swift中(zhōng)的switch支持各種各樣的比較操作:

let vegetable = "red pepper" switch vegetable { case "celery": let vegetablecomment = "add some raisins and make ants on a log." case "cucumber", "watercress": let vegetablecomment = "that would make a good tea sandwich." case let x where x.hassuffix("pepper"): let vegetablecomment = "is it a spicy \(x)?" default: let vegetablecomment = "everything tastes good in soup." }

二、Objective-C 和 Swift 語言,哪個更容易學習?

這個問題很有意思,下(xià)面我(wǒ)來談談我(wǒ)的看法。

objective-c

objective-c,通常寫作objc和oc,和目的c或obj-c使用量少,是一(yī)種面向對象的編程語言擴展它主要用于兩mac os x和gnustep系統使用的程序和标準,在nextstep,它是更基本的程序。gcc和clang是objective-c包含編譯器和objective-c可以編譯gcc和铿锵的操作系統。

swift

swift,蘋果的wwdc 2014上發布新的開(kāi)發語言(蘋果開(kāi)發者大(dà)會),可以與objective-c *在mac os和ios平台運行,建立基于蘋果平台的應用。

swift是一(yī)種易于使用的編程語言,它是與腳本語言一(yī)樣具有相同表現力和興趣的第一(yī)套系統編程語言。swift的設計以安全爲出發點,以避免各種常見的編程錯誤。

objective-c和swift哪個更容易學?

objective-c是一(yī)個過程,面向對象和非常傳統的語言是c的擴展,它主要有面向過程語言的所有特征,自然與代碼的各種控制結構來實現基本的邏輯控制結構是objective-c當正常使用模式。它不是一(yī)個通用的支持單一(yī)繼承。

swift是不一(yī)樣的。如果你不懂泛型,最基本的是什麽?和!它的本質是無法理解的。此外(wài),可選實際上是枚舉類型。如果我(wǒ)們還沒有碰到類似的功能語言haskell,還要花很多時間來估計和理解這樣的枚舉。swift的句法特征非常複雜(zá)。在蘋果官方文件中(zhōng),語言指南(nán)并不能完全涵蓋所有的特性。

總之,還是objective-c更容易學一(yī)點。

三、iOS程序可使用Objective-C或Swift語言進行開(kāi)發嗎(ma)?

 os x系統環境下(xià)的xcode,語言爲objective-c或蘋果新推出的swift語言。

xcode 是蘋果公司開(kāi)發的編程軟件,是開(kāi)發人員(yuán)建立os x 和 ios 應用程序的最快捷的方式。xcode 4所使用的編譯器爲llvm編譯器,llvm編譯器的前端是clang。xcode 的核心部分(fēn)是蘋果電(diàn)腦公司下(xià)一(yī)代業界标準的 gcc編譯器gcc 4.0。新的編譯器利用許多先進的最優化技術幫你從現存編碼中(zhōng)獲得更多性能。從超級計算世界借鑒來的自動向量化(auto-vectorization)技術可以幫助你釋放(fàng)每台 intel 系統中(zhōng)速度引擎的能量,而不需要編寫向量化編碼。

objective-c語言,是擴充c的面向對象編程語言。其主要使用于mac os x和gnustep這兩個使用openstep标準的系統,該語言是1980年代初布萊德·确斯(brad cox)在其公司stepstone發明的。

swift語言,蘋果于2014年wwdc發布的新開(kāi)發語言,可與objective-c共同運行于mac os和ios平台,用于搭建基于蘋果平台的應用程序。該語言語法内容混合了oc,js,python,語法簡單,使用方便,并可與oc混合使用。并于2014年6月12日發布了《swift中(zhōng)文版》第一(yī)版。

最近文章

Top