首頁蘋果教程→ 蘋果編程語言Swift是什么

蘋果編程語言Swift是什么

作者:瀟瀟來源:本站整理2014/6/4 11:35:52我要評論

CNET網(wǎng)站刊文:蘋果在WWDC2014(全球開發(fā)者大會)上發(fā)布了一款重要產(chǎn)品:編程語言Swift,并隨后發(fā)布了對這一語言進行詳解的iBook電子書。終端用戶或許很難感知到這一編程語言帶來的改變,但這可能推動蘋果應(yīng)用開發(fā)者社區(qū)的變革。 

許多人可能都已忘記蘋果WWDC中的“D”代表了“開發(fā)者”。這是一次開發(fā)者的大會,參加這一大會的程序員可以從會上了解到新的技術(shù)。

蘋果的編程語言Swift到底是什么?

2014年的WWDC回歸本源,并專注于兩大領(lǐng)域:軟件,以及軟件開發(fā)者。盡管許多人對于蘋果沒有在今年WWDC上發(fā)布任何硬件產(chǎn)品感到失望,但需要指出的是,令這些硬件充滿吸引力的關(guān)鍵在于軟件。蘋果今天發(fā)布的許多消息將使開發(fā)者的工作變得更簡單,這將帶來更多、更好的應(yīng)用。

到目前為止,今年WWDC上對開發(fā)者而言最重要的消息在于新的編程語言Swift。這一語言的設(shè)計目標是讓應(yīng)用開發(fā)更簡單、更快、更穩(wěn)定,同時確保最終應(yīng)用有著更好的質(zhì)量。從最基本的角度來看,Swift希望為所有程序員實現(xiàn)所有功能,那么這是否可能?Swift的表現(xiàn)仍有待觀察,但根據(jù)這次所看到的的一切,這一語言擁有巨大的潛力。

最優(yōu)秀的語言?

腳本語言,例如Python,通常易于編寫和測試,但并不是非常強大,難以帶來高質(zhì)量程序。如果你希望編寫一款游戲,完全利用設(shè)備的性能,那么這樣的語言并不理想。傳統(tǒng)編程語言,例如Objective-C,使開發(fā)者能更好地利用設(shè)備的性能,開發(fā)更復雜的應(yīng)用,但通常較難掌握,在編譯和測試時也更麻煩。

Swift希望解決所有這些不便。蘋果表示,至少從幾項關(guān)鍵指標來看,Swift程序的執(zhí)行速度比Python和Objective-C程序更快。而盡管如此,這一語言支持Xcode開發(fā)環(huán)境中所謂的“體育場(playground)”,能像腳本語言一樣,實現(xiàn)對Swift代碼的實時可視化。

在今天所舉的一個例子中,一名開發(fā)者希望編寫一款游戲,其中的氣球能以自然的模式上下運動。為了實現(xiàn)這一功能,他希望使用一個簡單的數(shù)學函數(shù):正弦函數(shù)。正弦函數(shù)能產(chǎn)生上下波動的弧線,類似于漂浮的氣球。

通過Swift,開發(fā)者可以很方便地對氣球賦以正弦值,隨后在簡單的曲線圖中觀察應(yīng)用執(zhí)行過程中值的變化。這使開發(fā)者能很方便地觀察氣球運動的模式,以及是否符合預(yù)期。如果存在問題,開發(fā)者可以立即作出調(diào)整。以往,開發(fā)者需要通過編譯器來運行代碼,隨后執(zhí)行程序,希望獲得正常的結(jié)果。根據(jù)應(yīng)用的大小不同,這一過程可能需要幾秒、幾分鐘,甚至更長時間。

優(yōu)勢

方便快捷地測試所編寫應(yīng)用將幫助開發(fā)者更快地開發(fā)出復雜應(yīng)用。以往,對規(guī)模較大的應(yīng)用來說,編譯和測試過程極為冗繁。如果Swift能在這一方面帶來較大的改進,那么應(yīng)用開發(fā)者將可以更快地發(fā)布經(jīng)過更徹底測試的應(yīng)用。

此外,Swift是一種非常簡潔的語言。與Python類似,你不必編寫大量代碼即可實現(xiàn)強大的功能。這也有利于提高應(yīng)用開發(fā)速度。

最后,如果Swift應(yīng)用的執(zhí)行速度比Objective-C應(yīng)用更快,那么我們會在游戲中看見更引人入勝的畫面(需要蘋果新的Metal界面的幫助),而其他應(yīng)用也會有更好的響應(yīng)性。與此同時,我們不用購買新手機。

問題

并非所有一切都很美好。正如多名開發(fā)者所說,Swift最大的問題在于,要求使用者學習一門全新的語言。程序員通常喜歡掌握最新、最優(yōu)秀的語言,但關(guān)于如何指導人們編寫iPhone應(yīng)用,目前已形成了完整的產(chǎn)業(yè)。在蘋果發(fā)布Swift之后,所有一切都要被推翻重來。(你仍可以開發(fā)Objective-C應(yīng)用,但不會有人想要。)

另一方面,如果編程語言更加易學易用,那么應(yīng)用開發(fā)的門檻將會降低,導致更多新手開發(fā)者參與這一行業(yè)。這或許不是一件好事。這種情況完全有可能出現(xiàn),但對從40年代發(fā)展起來的軟件開發(fā)行業(yè)而言,情況一直如此。是的,在一些情況下,有人仍然認為,不會使用打孔卡片的開發(fā)者是業(yè)余人士。

仍需檢驗

如果Swift如蘋果所宣傳的一樣,那么我們將看到更多、更快、更穩(wěn)定的應(yīng)用。

最終,Swift的性能如何仍需要通過實踐去檢驗。蘋果喜歡在臺上公布各種指標和數(shù)據(jù),以突顯某款產(chǎn)品相對于競爭對手的優(yōu)勢。但對編程語言來說,情況更微妙。人們需要花一定時間才能了解Swift究竟有何優(yōu)勢。這將是一次徹底的變革,或許也將是自App Store推出以來,蘋果開發(fā)者社區(qū)迎來的最重要變革。終端用戶或許不會看到任何改變,這樣的情況是正常的。不過,現(xiàn)在你至少可以對其他人解釋,為何Swift值得我們?yōu)橹d奮。

0相關(guān)評論

發(fā)表評論

最新最熱相關(guān)資源

安卓蘋果應(yīng)用推薦