【簽約】青島洋相扎堆兒與廣州小跑科技、青島夢想?yún)R戰(zhàn)略合作
一 、App有哪些形式?
App主要有三種形式,分別是WebApp,Native App(原生App)和Hybrid App(混合App)。
WebApp:簡單來說,Web App就是針對iOS/Android優(yōu)化后的web站點,用戶不需要下載安裝即可訪問。一般的web站點測重使用網(wǎng)頁技術(shù)在移動端做展示,包括文字,視頻,圖片等,而Web App更側(cè)重“功能”,是基于網(wǎng)頁技術(shù)開發(fā)實現(xiàn)特定功能的應(yīng)用,必須依賴手機瀏覽器運行。Web App開發(fā)成本低,維護更新簡單,支持云修復(fù),用戶不用下載更新,但是App的用戶體驗不足,頁面跳轉(zhuǎn)遲鈍甚至卡殼,頁面交互動態(tài)效果不靈活,而且可能上不了AppStore,如果企業(yè)的核心功能不多,App需求側(cè)重于信息查詢,瀏覽等基礎(chǔ)功能,可以選擇Web App。
Native App(原生App):Native App是基于智能手機操作系統(tǒng)(現(xiàn)在主流的是ios和Android)用原生程序編寫運營的App。Native App運行時是基于本地操作系統(tǒng)的,所以它的兼容能力和訪問能力更好,擁有最佳的用戶體驗、最好的交互界面,但也是開發(fā)難度最大,開發(fā)成本和維護成本最高的App。
Hybrid App(混合App):是指半原生半web的混合類App,同時采用網(wǎng)頁語言和程序語言進行開發(fā),通過不同的應(yīng)用商店進行打包分發(fā),用戶需要下載安裝使用。Hybrid App兼具Native App良好的用戶交互體驗和web App跨平臺開發(fā)的優(yōu)勢,因在開發(fā)過程中使用網(wǎng)頁語言,所以開發(fā)成本和難度大大降低。Native App是現(xiàn)在的主流應(yīng)用,大型的App如淘寶/掌上百度/微信都是走的Hybrid App路線。
二、一個app從設(shè)計到最終實現(xiàn)需要你懂得以下幾個必要方面
1、前期需求規(guī)劃與信息——你需要制定出一個完整的需求文檔,功能文檔,流程圖,時序圖。
2、交互設(shè)計、UI設(shè)計——設(shè)計出基本且完善的原型圖和app基礎(chǔ)的交互設(shè)計效果,之后再根據(jù)這些設(shè)計出完整的UI界面并學會切圖,一些需要做自適應(yīng)的素材圖片需要做點9patch。 這里還需要你懂得px,pt和dp之間的換算,屏幕密度的換算和相互之間的系數(shù),以便你的app能完美適應(yīng)不同分辨率設(shè)備。其中交互設(shè)計需要你懂得很多人機操作的技巧經(jīng)驗,掌握Axure等交互工具的使用,UI設(shè)計需要你掌握Photoshop和Illustrator等操作。
3、使用ADT之類的開發(fā)環(huán)境進行app軟件開發(fā),你最基本的也得掌握開發(fā)語言,熟悉開發(fā)環(huán)境和機制。
4、如果不是單機版的app,需要用到服務(wù)器,那你還得掌握WebService相關(guān)知識和開發(fā)語言,常用的有http://ASP.Net,PHP,JSP等。
5、熟悉并能開發(fā)數(shù)據(jù)庫,如MySql等。
6、某些功能需要做算法,這還需要一定得專業(yè)知識,尤其是數(shù)學基礎(chǔ)。
7、熟悉API接口開發(fā),這里包括你自行開發(fā)API的能力以及調(diào)用第三方API的經(jīng)驗。
8、熟悉TCP/IP,socket等網(wǎng)絡(luò)協(xié)議和相關(guān)知識。
9、熟練掌握App發(fā)布的流程,真機調(diào)試測試技巧,相關(guān)證書申請,打包,不同應(yīng)用市場的上架。
三、不同類型的App開發(fā)需要哪些技術(shù)?
Web App:
iOS/Android的內(nèi)置瀏覽器是基于webkit內(nèi)核的,所以在開發(fā)webApp時,多數(shù)使用html或html5、CSS3、JavaScript技術(shù)做UI布局,使其在網(wǎng)站頁面上實現(xiàn)傳統(tǒng)的C/S架構(gòu)軟件功能,服務(wù)端技術(shù)用java、php、ASP。
Native App:
開發(fā)Native App需要根據(jù)運行的手機系統(tǒng)采用不同的開發(fā)語言,開發(fā)Android App需要的開發(fā)語言是java,還需要熟悉Android環(huán)境和機制。Android開發(fā)涉及到的技術(shù)點非常龐雜。
主要知識點如下:
1. 開發(fā)環(huán)境,Android Studio、eclipse.如何搭建Android開發(fā)環(huán)境可以去百度。
2. 數(shù)據(jù)結(jié)構(gòu),App的某些功能涉及到做算法,所以要有一定的數(shù)學基礎(chǔ)
3. Android SDK,會API接口開發(fā),包括自行開發(fā)API的能力和調(diào)用第三發(fā)API的經(jīng)驗。
4. 熟悉tcp、IP,socket等網(wǎng)絡(luò)協(xié)議
5. 如果涉及到服務(wù)器,你還需要了解webservice相關(guān)知識和相應(yīng)的開發(fā)語言,常用有PHP、JSP、ASP.Net.
6. 除了這些功能基礎(chǔ),App開發(fā)還涉及到UI設(shè)計、框架、性能優(yōu)化、調(diào)試適配等。
開發(fā)iOS系統(tǒng)App需要Objective-C主流編程語言,開發(fā)者一般用蘋果公司的iOS SDK搭建開發(fā)環(huán)境,iOS SDK是開發(fā)iOS應(yīng)用程序中不可少的軟件開發(fā)包,提供了從創(chuàng)建程序,到編譯、調(diào)試、運行、測試等多種開發(fā)過程中需要等工具。學習iOS開發(fā)可以去看蘋果官方文檔,這是最權(quán)威的ios教程。
Hybrid App:
混合開發(fā)中主流的是以web為主體型的開發(fā),即以網(wǎng)頁語言編寫,穿插Native功能的hybrid App開發(fā)類型,網(wǎng)頁語言主要有html5、CSS3、JavaScript。Web主體型的App用戶體驗好壞,取決于底層中間件的交互與跨平臺的能力。國內(nèi)外有很多優(yōu)秀的開發(fā)工具,如國外的AppmAkr、Appmobi,國內(nèi)的APICloud,APICloud的底層引擎用Deep Engine,使用半翻譯式原理,將運行中的web翻譯成Native API,并且支持擴展API,開發(fā)時可調(diào)用用原生語言開發(fā)的功能模塊,以此達到媲美原生App的用戶體驗,同時節(jié)省開發(fā)時間。
對企業(yè)來說,可以根據(jù)自己的需求選擇不同的開發(fā)類型和開發(fā)工具,目前來看,Hybrid App已經(jīng)成為移動開發(fā)趨勢,一方面Hybrid App開發(fā)時不采用或者大部分不采用原生語言,卻能擁有原生應(yīng)用的特性,一方面隨著web技術(shù)的發(fā)展,Hybrid App技術(shù)已經(jīng)成熟,很多大型App淘寶、微信、攜程都屬于這種開發(fā)模式,Hybrid App給企業(yè)移動應(yīng)用的開發(fā)、維護、更新都帶來了極高的便捷性,從成本投入用戶體驗考慮,Hybrid App都是首選。
四、總結(jié)而言
APP開發(fā)屬于一個需要技術(shù)專業(yè)特別強的人員進行定制開發(fā),一般一個功能普通一點的APP而言,比如B2C商城APP開發(fā),價格一般需要在6~10萬左右,如果功能相對豐富和負責的APP開發(fā)項目,則需要10~20萬以上的費用,很多企業(yè)可能會考慮自己招聘進行APP開發(fā),往往因為缺少管理經(jīng)驗和項目把控能力,幾乎項目成本翻了幾倍,前期試水的話,直接找專業(yè)的APP開發(fā)公司進行項目開發(fā)更加明智。