? ? 一、移動Web APP
? ? 服務器端腳本語言可用于構建移動Web APP。但與本機應用不同,這些不支持使用設備功能和硬件。他們不能使用相機,GPS或加速度計甚至本地存儲,它們完全基于網絡。
? ? 二、原生態開發(Native App)
? ? 需要根據運行的手機系統采用不同的開發語言,開發Android App需要的開發語言是java,還需要熟悉Android環境和機制。目前較常用和較成熟的開發方式,越重視細節成本越高。主要知識點如下:
? ? 1. 開發環境,Android Studio、eclipse;
? ? 2. 數據結構,App的某些功能涉及到做算法,所以要有一定的數學基礎;
? ? 3. Android SDK,會API接口開發,包括自行開發API的能力和調用第三發API的經驗;
? ? 4. 熟悉tcp、IP,socket等網絡協議;
? ? 5. 如果涉及到服務器,還需要了解webservice相關知識和相應的開發語言,常用有PHP、JSP、ASP.Net。
? ? 三、H5開發
? ? H5開發是基于各種phonegap,ionic,react native框架上的,這些是在有限的軟件環境中做出快速的開發。成本大概是Native App的30%-50%,也是比較接近原生開發能達到效果的一種方式。如果一個App既要做Android又要做iOS版,還要電腦也可以瀏覽,那大部分頁面用HTML5開發肯定是加快開發速度的,當然會損失一些性能,流暢度會不如原生的,而且有一些調用底層的東西H5可能做不到或者做起來麻煩,所以要原生+H5混用。
? ? 四、混合開發(Hybrid App)
? ? 混合開發是用HTML,CSS和Java腳本等Web技術編寫的。您可以在各種平臺上運行這些應用程序。它們可以跨平臺兼容,因為它們不限于一種特定的編程語言。成本相對原生開發要低,做出的效果比web加殼和HTML5開發的效果要好些。
? ? 目前混合開發中主流的是以web為主體型的開發,即以網頁語言編寫,穿插Native功能的hybrid App開發類型,網頁語言主要有html5、CSS3、JavaScript。Web主體型的App用戶體驗好壞,取決于底層中間件的交互與跨平臺的能力。國內外有很多優秀的開發工具,如國外的AppmAkr、Appmobi,國內的APICloud,APICloud的底層引擎用Deep Engine,使用半翻譯式原理,將運行中的web翻譯成Native API,并且支持擴展API,開發時可調用用原生語言開發的功能模塊,以此達到媲美原生App的用戶體驗,同時節省開發時間。
? ? 對企業來說,可以根據自己的需求選擇不同的開發類型和開發工具,目前來看,Hybrid App已經成為移動開發趨勢,一方面Hybrid App開發時不采用或者大部分不采用原生語言,卻能擁有原生應用的特性,一方面隨著web技術的發展,Hybrid App技術已經成熟,很多大型App都屬于這種開發模式,Hybrid App給企業移動應用的開發、維護、更新都帶來了極高的便捷性,從成本投入用戶體驗考慮,Hybrid App都是首選。