聽布道師講iOS 9給開發者帶來了什么

jopen 8年前發布 | 11K 次閱讀 iOS開發

iOS 9 Day by Day 》作者Chris Grant在書里回顧了iOS 9給開發者帶來了哪些變革。書中13個短章把iOS 9在開發工作發揮重要作用的關鍵特征做了詳細介紹。

InfoQ網站在過去的幾個月里一直全面而具體的介紹了iOS 9的功能特點。《開發者手里的iOS 9》系列電子書幫助開發者詳細介紹了iOS 9 SDK的新功能和相關工具,并大致概述了所有新的或已升級了的框架。電子書里同時也講解了這些iOS 9新功能的使用詳述。

聽布道師講iOS 9給開發者帶來了什么

下面是InfoQ采訪技術布道師Sam Burnstone,內容關乎Swift和iOS開發生態。

InfoQ:在您看來,iOS 9最重要的三個功能特征是什么?

Sam Burnstone: 特征之一就是UIStackView。

UIStackView從根本上改變了開發者在iOS上創建用戶界面的方式。StackView的核心便是方便垂直或水平排布多個sub-view,做過Android開發的人都知道,它和LinearLayout控件非常相似。

StackView最有用的就是它會自動為每個sub-view創建和添加AutoLayout 限制條件。當然你可以控制sub-view的大小和位置,可以通過選項來配置sub-view的大小、排布以及彼此間的間距。

很明顯,蘋果已經意識到這一點并開始大力宣傳介紹UIStackView。而對于開發來說,他們最需要解決的問題是希望所有的sub-view能給進行自我定位,并定義需要被安排的sub-view的軸向,橫向的或是垂直的。而此時,視圖會自動處理子視圖的顯示效果。將StackViews內嵌到另一個StackViews里的能力表明其功能是非常強大的,產生的結果就是由于布局約束急劇減少,布局的管理將更加簡單。

UIStackView大大簡化了用戶界面開發。這是好事,特別是隨著硬件的改變。使用UIStackView,減少了開發者為簡單場景設置枯燥的約束,把繁雜的工作交給了UIKit。

特征之二:搜索功能

iOS 9允許開發者把自己的App內容公開到iOS上,用戶在不需要離開主頁的時候查看程序內容。通過使用NSUserActivity幫助用戶群體直接從結果跳到App的用戶地址來實現深層鏈接,這就大大提高了用戶體驗。

特征之三:支持從右到左

毫無疑問,雖然iOS 9里面新增了很多不錯的功能,但在我看來最有趣的就是這是支持從右到左的功能。我們不該忘記,時至今日世界上還有很多地方的書寫習慣是從右往左的,而開發從右往左的書寫習慣的App也是可以獲得利益的,前提條件是進行本地化處理。

InfoQ:你覺得這本書里最有趣的是哪一部分?

Sam Burnstone:我認為StackView這一章特別有趣。在我研究新功能的時候,驚奇的發現只要很少一部分的代碼就能實現幾乎所有的視圖層次;將大量的視覺拖動到故事版(storyboard)上或添加幾個簡易的限制也是極其簡單的!API也是經過認真考慮設計的,添加了一些額外功能,例如動畫顯示,隱藏sub-view等等。

InfoQ:在各種類型項目實施過程中,如何判斷Swift的成熟度可以取代Objective-C的?

Sam Burnstone:Swift 在項目開發的整個過程中,它的成熟度和高效成都足以支撐項目的需求;與現有的用C和Objective-C編寫的代碼庫互用性配合非常好,這就意味著可以將現有的代碼庫進行整合。然而,你也可以繼續Objective-C進行開發,并用蘋果已經發布的新功能簡單的注釋舊代碼庫,以達到改善Objective-C API在Swift里消耗過快的目的。

Swift快速發展的步伐令人相當興奮,但這背后也是有很多需要完善的地方,例如使用前一個版本的語言寫的代碼通常情況下會對下一版本語言編寫的代碼相抵抗。蘋果公司承諾承諾過將開發完畢的Swift開放出來,這就意味著開發者們需要注意他們的代碼庫在哪些領域可能出現漏洞,如何快速響應代碼變化帶來的變動。

目前來看,用Swift開發出來的工具很大一部分還是很原始的,盡管蘋果Xcode Playgrounds的發展方向很受人喜歡,這些開發工具看起來更像是用于教學或嘗試一種新的算法。蘋果確實是花了很大力氣把Swift培養成一門偉大的語言供大家學習,并盡最大可能讓所有需要的人能給接觸上它。

查看英文原文: iOS 9 Day by Day: a Review of iOS 9 for Developers

來自: http://www.infoq.com/cn/news/2016/01/ios9-day-by-day-review

 本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
 轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
 本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!