壹個完整的App開發需要哪些技術?在回答這個問題之前,我們首先要了解App都有哪些類型,不同的類型適用於哪些需求,用戶可以根據自己的需求選擇不同的App開發。
壹、 App有哪些形式
WebApp:簡單來說,Web App就是針對iOS/Android優化後的web站點,用戶不需要下載安裝即可訪問。壹般的web站點測重使用網頁技術在移動端做展示,包括文字,視頻,圖片等,而Web App更側重“功能”,是基於網頁技術開發實現特定功能的應用,必須依賴手機瀏覽器運行。Web App開發成本低,維護更新簡單,支持雲修復,用戶不用下載更新,但是App的用戶體驗不足,頁面跳轉遲鈍甚至卡殼,頁面交互動態效果不靈活,而且可能上不了AppStore,如果企業的核心功能不多,App需求側重於信息查詢,瀏覽等基礎功能,可以選擇Web App。
Native App(原生App):Native App是基於智能手機操作系統(現在主流的是ios和Android)用原生程序編寫運營的App。Native App運行時是基於本地操作系統的,所以它的兼容能力和訪問能力更好,擁有最佳的用戶體驗、最好的交互界面,但也是開發難度最大,開發成本和維護成本最高的App。
Hybrid App(混合App):是指半原生半web的混合類App,同時采用網頁語言和程序語言進行開發,通過不同的應用商店進行打包分發,用戶需要下載安裝使用。Hybrid App兼具Native App良好的用戶交互體驗和web App跨平臺開發的優勢,因在開發過程中使用網頁語言,所以開發成本和難度大大降低。Native App是現在的主流應用,大型的App如淘寶/掌上百度/微信都是走的Hybrid App路線。
二、開發不同類型的App需要用到哪些技術?
Web App:iOS/Android的內置瀏覽器是基於webkit內核的,所以在開發webApp時,多數使用html或html5、CSS3、JavaScript技術做UI布局,使其在網站頁面上實現傳統的C/S架構軟件功能,服務端技術用java、php、ASP。現在也有很多壹鍵生成webApp的平臺,如百度siteApp/移動開發平臺APICloud,APICloud平臺提供基於騰訊x5瀏覽器引擎生成webApp,因為移動端的超級流量入口微信/手機qq等用的也是騰訊x5內置瀏覽器,所以用騰訊x5瀏覽器生成的App在移動頁面展示時適配於微信的瀏覽體驗,這樣可以幫助webApp引流。
Native App:
開發Native App需要根據運行的手機系統采用不同的開發語言,開發Android App需要的開發語言是java,還需要熟悉Android環境和機制。主要知識點如下:
1. 開發環境,Android Studio、eclipse.如何搭建Android開發環境可以去百度。
2. 數據結構,App的某些功能涉及到做算法,所以要有壹定的數學基礎
3. Android SDK,會API接口開發,包括自行開發API的能力和調用第三發API的經驗。
4. 熟悉tcp、IP,socket等網絡協議
5. 如果涉及到服務器,妳還需要了解webservice相關知識和相應的開發語言,常用有PHP、JSP、ASP.Net.
6. 除了這些功能基礎,App開發還涉及到UI設計、框架、性能優化、調試適配等。
Objective-C是開發iOS系統App的主流編程語言,開發者壹般用蘋果公司的iOS SDK搭建開發環境,iOS SDK是開發iOS應用程序中不可少的軟件開發包,提供了從創建程序,到編譯、調試、運行、測試等多種開發過程中需要等工具。學習iOS開發可以去看蘋果官方文檔,這是最權威的ios教程。
Hybrid App:混合開發中主流的是以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都是首選。