開發者看 WWDC 2015:只有 Swift 2 讓現場驚呼連連

早上的Keynote,驚奇不多,可能在開始之前已經有不少主題先被爆料了,加上也不算有太大的新意,相信有不少人抱怨沒有亮點才對。

WWDC 2015現場紀實

今年 WWDC 是以 9X2(iOS 9 、 OS X 、 watchOS 2)為主軸,由於是軟體開發者大會,自然也比較少在這種場合有新硬體的出現(雖然謠傳有 TV)。當然傳統的「One more thing」也是不能少,今天負責當這壓軸的就是「不想給人有飯吃」的 Apple Music 。

第一天的內容從早上的 Keynote,到下午的「Platform state of the Union」,重點都是圍繞在這三個方向。

早上的 Keynote,驚奇不多,可能在開始之前已經有不少主題先被爆料了,加上也不算有太大的新意,相信有不少人抱怨沒有亮點才對,以下就分別針對幾個重點來說明一下:

OS X El Capitan 登上優勝美地最高的山

如預期的,OS X 跟去年一樣,今年也再往前進了一版了。既然是新版不免要有新的名字,

去年是來到了優勝美地 (Yosemite),那今年該來到哪兒呢?這次取了個名字叫做 El Capitan 。 El Capitan 是 Yosemite 國家公園裡的一個地名,講白一點,還在優勝美地呀!停在原地哪都沒去,配合看這版的修改,這應該只算是一個小改版而已。

使用者介面上有一些新的小改變,大部分都沒什麼,搜尋功能不管是 Spotlight 或是 Finder 裡的搜尋,在這版本已經可以以自然語言為搜尋條件了,而不再是呆呆的關鍵字搜尋,看來哪一天 Siri 登上 PC 也是很有可能。

對於開發者比較重要的是,Metal 這個在去年在 iOS 上引入用來取代 Open GL,並號稱可以充分利用 GPU 達到比 Open GL 快數倍的效能的框架,現在也被移植到 OS X 上了!並且,原本架構在 Open GL 上的 Core Animation 和 Core Graphics 也被移植到 Metal 之上了,這樣不只使用 Metal 的遊戲可以得到很好的效能外,應用程式也可以一起受惠。

另外還有推出新的 iCloud Drive,這可以說是 iCloud 的檔案總管,可以讓你瀏覽儲存在 iCloud 上的東西,這不只是有 OS X 的版本,也有 iOS 的版本,不過看起來還真的有點像 Dropbox,Apple 似乎看起來也開始想漸漸的增加 iCloud 的業務。除了 iCloud Drive 以外,另一個跟 iCloud 相關的就是 CloudKit 了。 CloudKit 不但會是在 OS X 和 iOS 上都有外,還會有 CloudKit Web service 和 CloudKit JavaScript,讓開發者不只可以在 OS X 或 iOS 的應用程式上整合 iCloud,也可以整合 Web 上的應用。

iOS 9 讓手機與平板變得更聰明

比起 OS X,iOS 的新的東西應該算比較多了一點了,目前它的地位還是比較重要,很難動搖了。

這次的 iOS 在手機的「智慧」上下了比較多的功夫,原本有了 Siri 還覺得不夠聰明,所以在 iOS 9 多引進了主動助理 (proactive assistant) 來幫助 Siri 這個被動的傢伙。

所謂的主動助理就是根據情境,來提供使用者最相關的資訊或是建議應用程式,其實就是跟 Android 上的 Google Now 來打對台。這類的東西在其他平台上早已不是新鮮的東西,不過 Apple 把它跟 Siri 作一個整合,讓 Siri 更聰明了。

同時他還結合到其他的應用程式上面,比如說當你收到一通來電,一般來說如果你通訊錄裡面沒有這電話,就不會顯示來電者名稱,但 Proactive 會主動去搜尋你的 email 或是其他紀錄,如果這通電話是跟某一個人相關,他就會自動顯示在來電畫面中(這跟 Who’s call 有點類似)。

對於開發者來說,這個新功能帶來新的搜尋 API:Core Spotlight API,讓應用程式的內容也可以整合到主動提供的內容或是 Siri 的搜尋結果上,這作法其實跟 Google 在這兩年的 Google I/O 大會上所提的 App Indexing 是還滿類似。

此外就是,在 iPad 上終於也有了多視窗的多工模式了,這樣的多視窗多工有三種模式:

  1. Slide Over:這模式是拉出一個疊在原本應用程式上的視窗,只有拖出來的那個視窗可以被操作,疊在下面那個則無法被操作。
  2. Split View:這模式算是分割畫面,兩個應用程式一左一右並列,可以同時被操作,甚至把資料在兩者之間互相移動。
  3. Picture in Picture:這是一個子母畫面的設計,主要用於多媒體,當你看一部電影不想中斷,又需要拿 iPad 做其他事時就會很有幫助。

這給開發者帶來的問題是,由於視窗不再是傳統的比例,有可能帶來的是畫面排列的不正確,不過如果是使用了 auto layout 來實作的畫面,影響不會太大。此外,Interface Builder 也可以在不同畫面大小下,預覽使用者介面的外觀。

應用程式瘦身,這部份在 Keynote 上並沒特別提及,但也算滿重要的。首先,在新的 iOS 9,作業系統的更新檔案不再是巨無霸了。更新檔的體積縮小為原來的 1/4,因此更新流程上也有變動,希望藉由這項更動,會有更多使用者有意願轉換到新的版本。

另外在一般的應用程式方面,有 3 個新的方法來幫助達到瘦身目的,使得使用者的手機可以裝更多的東西,更新也可以更快:

  • 切割 (Slicing):在以往,為了適用不同的裝置所帶來的不同解析度,64bits 和 32bits 環境等問題,原本的應用程式包是把相關的執行碼跟資源通通包成一起,以致於整包就很肥大。但事實上,iPad2 上可能不需要只適用於 iPhone 6 的資源,64bits 的裝置會不需要 32bits 的執行碼,把它們全包成一包就顯得浪費,切割的目的就是讓不同裝置只取他們所需要的就好,這樣就不用每個裝置都需要同一包大包。
  • Bitcode:使用 Bitcode 來提交你的應用程式的好處是-App store 會幫你自動把你的應用程式重新優化。
  • 資源動態載入 (On-Demand Resources):這個用遊戲來解釋比較容易懂,遊戲應用的體積往往超肥,因為需要包含很多多媒體資料,這也使得每次下載遊戲都要花很多時間,但遊戲往往不是一開始就需要那麼多資料,假如遊戲有很多關卡,使用者其實不需要一開始就下載後面關卡的資料,而是需要再下載,資源動態載入就是可以讓你應用程式把一些資源放到真正需要的時候才去下載。

在遊戲開發相關的部分則多出了:

  • Gameplay kit:這是 Apple 提供的規則引擎 (rule engine),可實作一些有複雜規則的遊戲。
  • Replay kit:用來錄製遊戲過程讓使用者可以分享出去。
  • Model I/O:一個 3D 遊戲通常需要載入許多 3D 模型跟材質資料,Model I/O 就是用來處理這類的需求。

Apple Pay 目前有更多合作夥伴進來了,另外也加入了集點卡、商店卡等機制,而這些會被收藏到原本的 Passport 中,也因此 Passport 未來就直接改名成 Wallet,除了美國以外,也將會支援英國地區的商店與銀行。

Apple Map 地圖加入了大眾運輸系統的功能,不過這功能目前也只適用於美國、英國跟中國地區。

另外多出了兩個新的應用程式:News 和 Notes,這兩個看起來就像是直接點了 Flipboard 跟 Evernote 叫陣,News 統合了很多新聞的內容,並且會根據你的喜好推薦內容給你,而 Notes 則是會將你的內容也存到 iCloud 去。

watchOS 2 讓手錶獨立了!

新的 watchOS 2 一個很重大的改變是,為了讓手錶擺脫手機,也可以自己獨立運作,把原本放在手機端的 WatchKit Extension 放到手錶端,所以未來可以有獨立運作不需要搭配手機的手錶應用程式。

獨立的手錶程式將可以存取手錶端的硬體,像是麥克風等等,手錶上的應用程式也可以透過 wifi 直接與網路連接,未來預期出現更多有趣的應用。

另外可以開發新的應用:Complication 。所謂的 Complication 就是手錶上除了時間以外的資訊,比如說下一個待辦事項,天氣等等資訊,未來可以開發不同的 Complication 來提供錶面不同的資訊顯示。

Complication 會分為兩種類別:

  • 定時更新 (Schedule updates):定時去手機或網路上抓取資料來顯示。
  • 推送更新 (Push updates):接收到手機的推送才做更新。

在開發方面,手錶的模擬器將可以跟手機的並存並互連,開發時可以用來測試手機跟手錶之間的相關功能。

Swift 2 走入開放原始碼  即將征服世界?

作為一個被重點推廣的新程式語言,Swift 可說是一直在進步,今年終於來到 2.0 版本了。它也是在 Keynote 上,受到最大歡呼聲的時刻。主要是因為從 2.0 開始將開放原始碼了,而且是歡迎 Apple 以外的貢獻者來參與,也將會有 Linux 版本了。作為一位開發者,我還滿希望看到它可以發展出各種不同的可能性,不只拿來寫 iOS/OS X 應用程式外,或許未來還有機會往其他方向如後端開發去發展。

Swift 在這版本的改變也不小,而且大多都是朝開發者的建議去做修正,並加入一些還滿潮的功能:

  • 更豐富的註解:未來可以用 markdown 寫註解了,這對之後產生文件還頗有幫助。
  • 錯誤處理 (Error handling):Swift 之前被人所詬病的一點,即是缺乏像其他語言如 Java 的錯誤處理能力,幸好 0 版將會加入。
  • 可以寫互動性更高的 play ground 來展示程式庫了
  • Swift-er SDKs:跟原本 Objective-C 的 SDK 合作更加簡單了

目前 swift 或許還是一個未成熟的語言,但未來應該可以值得期待

發表迴響

關於我們

自 1990 年創刊 UXmaster 雜誌,1991 年獲得美國 LAN Magazine 獨家授權中文版,2006 年獲得 CMP Network Computing 授權,2009 年合併 CMP Network Magazine 獨家授權中文版,2014 年轉型為《網路資訊》雜誌網站,為台灣中小企業協助技術領導者落實企業策略,了解網路規劃及應用,為企業網路應用、管理、 MIS 、 IT 人員必備之專業雜誌網站。


與我們聯絡

加入《網路資訊》雜誌社群

© Copyright 2025 本站版權所有,禁止任意轉載 網路資訊雜誌 / 心動傳媒股份有限公司 聯絡電話:+886 2 29432416

探索更多來自 網路資訊雜誌 的內容

立即訂閱即可持續閱讀,還能取得所有封存文章。

Continue reading

Secret Link