《Disney +》 迪士尼、Marvel、彼思、星球大戰…  目標是成為傳說的貓皇!「貓咪大尋寶」登場!   Melty Blood 新作「MELTY BLOOD: TYPE LUMINA」上「Fate」Saber正式參戰!!   四月份PlayStation Plus遊戲:《Days Gone》、《Oddworld: Soulstorm》以及《Zombie Army 4: Dead War》   尊爵不凡!重現《勇者鬥惡龍 達伊的大冒險》大魔王巴恩的西洋棋軍隊「哈德拉禁衛騎團 銀製西洋棋組」發售確定!   「RTA in Japan Summer 2021」於8月11日開幕!挑戰最快通關!   彩虹社新VTuber偶像男組合ROF-MAO發表!會推出合作新節目!   「CAPCOM Pro Tour Online 2021」首場比賽於4月17日日本登場!   銀座LOFT裡「PJS追憶商品特區」登場!曾完售的那個超人氣商品也以數量限定進行販售囉! 

Web App 以失敗告終後,我還是擁抱了 Native 語言

商業

當建立行動版本的招聘網站,TheLadders 發現 HTML5 這條路沒有外界標榜的那麼好。

我們的團隊 TheLadders 過去為求職者建立的應用程式,開始轉向 PhoneGap,去精心製作一些跨平台 App。它不僅讓我們去利用我們在 HTML5、CSS 和 JavaScript 現有的專業知識,而且我們能很快地舉一反三。

因為我們會希望一個接一個的 Web App 開發挑戰中,越積越多轉換零件和組合的知識,來取代原生代碼(Native)。

  • 開發上 Native 比 PhoneGap 流暢許多

最初,我們認為 PhoneGap 的小型學習曲線,將是非 iOS 開發人員的資產,但很快就發現,PhoneGap 有其特點和技術上的挑戰,大致來看,Native 流暢許多。

事實證明,利用 QA 測試 iOS 的應用程式,及 Android 螢幕的各種特性,皆是非常複雜的流程。而我們耗費精力,試圖將 PhoneGap 的代碼,於所有平台上,轉換成能代表它的東西。但結果,沒多久我們就將其撤下。

「一次編寫,運行各地」是理想目標。在後端編譯 Java、Python 和 Ruby 成代碼寫入,就可馬上適用於全球虛擬網路中。

然而,Native 越來越罕見,沒有人會用 C 去寫一個網站。在這越來越小眾的情況下,其原始性能就變得非常重要。你將很快看不到 Call of Dutywritten 使用 Java,或是 Final Cut Pro 使用 Ruby。

然而,後端成功的虛擬化方式,並沒有在前端實現。早期跨平台的 GUI 工具包,如 Java Swing,協助將「一次編寫,運行各地」改變成「一次編寫,到處除錯」。它面臨的挑戰,除了在所有平台上除錯外,用戶介面的規範和模式,還有平台間皆也有很大差距,Mac OS X 看起來或感覺起來,都不像 Windows8 使問題複雜化。

當我們回歸 Native ,更流暢、一致的經驗,讓我們可以達到完美的解決方案,回報給我們的客戶。憑藉著強大的工程團隊,iOS 的 Mastering Cocoa 被證明,它比我們想像的要容易得多,大量文檔和強大的研發生態體系,反而比 PhoneGap 的 Native ,速度更快,並且看起來更具現代化

這種方法的主要缺點是,Android 必須完全獨立開發,然而,在服務層面有很多複雜的問題。我們選擇先找出在 iOS 的經驗,然後於 Android 使用相同 REST 服務層面。

2013 年九月,我們開始在 Android 方面著手,將 iOS 的應用程式當成手邊的樣本,以及作為 REST API 的例子,並於感恩節做出最終版本,這是一個相當快的建構,我們也設定可以自由改變 UI 去接受 Android UI 的習性和手勢。

當然,在應用程式上必須考慮到 iPhones 和 Android 設備之間,有著微妙而明顯的差異,Android 有一個超過 iOS 的導航機制,另外,Android 也有實體返回鍵,所以不需要將它放在螢幕上。在 Android 手機上的其他按鈕,也有製造出底部的菜單和工具列,但時常會意外點擊到。

Native 使我們能夠有效地管理這些問題,並量身打造其外觀、感應、導航和應用程式的手勢於特定平台上。除了 PhoneGap 外,解決方案還有:Titanium,它是 JavaScript 編譯原生代碼,並使用 native widgets,但即使你有 native widgets,你仍需要以某種方式,去解決平台上返回鍵與無返回鍵的差異性。

這一切都是學習過程,我們從構思到交貨階段已經相對較快,而目前總共製作給求職者和招聘人員三個 App 。

現在,我們堅持獨立使用 Native!

延伸閱讀:

開發 App 用 Native 語言還是 Hybrid 好?Coder 你怎麼看?

Android 首席設計師談軟體設計:偏愛用 Native 開發的人,是因為「盲目的狂熱」

(資料來源:Fast Company ; 圖片來源:Christian Heilmannryanne laiPhil MhackNY, CC Licensed)

Source: techorange.com

隨機商業新聞

Disney Plus