隨著行動裝置的普及,Mobile App 的應用範圍也逐漸擴大。除了過往針對在遊戲和工具上面的應用,現今企業也應該慢慢注意到,整個資訊瀏覽行為的改變,並討論Mobile App在商業上應用的可能。過往與客戶的閒聊,可能會被問到公司是否擁有專屬的網站?如今可能會被問到,公司是否擁有專屬的 App 呢?接下來就介紹企業打造專屬 App 的利器 ─ Oracle MAF。
MAF 是什麼?
MAF(Mobile Application Framework)是由 Oracle 推出的行動應用程式平台,整個程式是建置在 MVC 的架構底下,而開發語言是以 Java,並搭配 HTML5 還有 Javascript 來撰寫 hybrid application。支援跨平台,能夠在現今最主流的兩大作業系統 iOS 還有 Android 上執行,並且從應用程式的開發到發行,只需要一套的程式碼,並無需要針對不同的平台而撰寫兩種不同的程式碼。在 MAF 之中有包含了 Cordava 的 Library,能夠用來和行動設備上的硬體作溝通。在最近的改版之中,也加入了能夠安裝外掛的功能,使得 MAF 寫作的彈性增大,未來若行動設備的硬體有更新,就能利用安裝外掛的方式,擴充 MAF 可支援的設備。
MAF 與 Cordova 的差異
說到 hybrid application 就讓人很容易聯想到同為用來製作 hybrid application 的 Cordova,那麼 MAF 和 Cordova 有什麼具體的差異呢?約略有以下的四點:
操作介面
MAF 是一套非常完整的開發工具,有著相當友善的 GUI 介面,能讓開發者以較直覺的方式來撰寫程式,用點擊或拖拉物件的方式來自動產生程式碼,並且有畫面預覽的功能。
反之若是使用 Cordova 並沒有 GUI 的介面,畫面上的物件也得一磚一瓦的拼湊起來,且無法立刻知道標籤或語法上是否有錯誤,甚至整體的畫面也必須在執行時才會知道。
UI 物件
MAF 中豐富的 UI 物件和 Layout,讓開發者在編輯畫面時能夠更流暢快速,使畫面排版和建立元件的時間能大幅降低。
而使用 Cordova 時,畫面的排版和物件的產生就得看開發者對於 HTML 和 CSS 的熟悉程度,速度上相對就會比較慢。
專案邏輯
依照檔案的功能以樹狀結構的方式清楚分類,並有 task-flow 的功能,獨立編輯每項功能中,頁面流轉的邏輯,讓開發者能夠一眼就了解整個功能的流程。
使用 Cordova 時,這些功能內的規則,只能埋藏在開發者的心中,或者必須將其以文件檔的方式記錄,當功能模組範圍較大、頁面較多時就很容易混淆。
整合性
MAF 啟始便內建有 Cordova 的通用外掛,只需要勾選需要的外掛即可使用,而這些外掛都是能夠在 iOS 和 Android 中通用的,並不需要開發者去尋找支援不同作業系統的外掛,MAF 的工具也整合了 debug 的工具,能夠設定中斷點,和查詢變數中的資料。
而在使用 Cordova 時,開發者就必須另外去尋找兩種作業系統都能使用的外掛,在 Runtime 的 debug 只能依賴一些輸出的 log。
為何使用 MAF?
MAF 是非常完善的開發平台。除了有非常多元的統計圖表,能夠用來分析企業內部的銷售資料、成長比例;能為企業分析商業上的行為,並做出清楚的比較,取代複雜的紙本資料,會議中只要打開行動裝置,所有資料便一目了然。且相較於以往 App 必須使用不同語言開發的狀況,MAF 只需要用 Java 來開發,對於 IT 人員之後在維護程式碼時,相對的負擔能夠減輕,且縮短時間。開發時,用直覺式將物件拖曳至畫面上,就能夠自動產生程式碼,只需要對元件,作一些屬性的設定即可,能夠快速地建立起企業專屬的 App。而對於開發人員來說,若使用兩種平台,就必須學會兩種新的語言,這是非常辛苦的,然而使用 MAF,只需要會寫 Java,並不需要再額外去學習新的語言,相對之下能更快上手。
綜合以上的優點,就能知道使用 MAF 能夠達到快速建置、簡易維護、操作便利,絕對會是企業開發 App 非常好用的一種工具。