本文針對小白用戶對App作一個簡單的介紹,介紹了App都有哪些類型,不一樣的類型app開發須要哪些技術,用戶能夠根據本身的需求選擇不一樣的App開發,若不懂技術,沒有資金怎麼開發app。php
一 、App有哪些形式?html
App主要有三種形式,分別是WebApp,Native App(原生App)和Hybrid App(混合App)。html5
WebApp:簡單來講,Web App就是針對iOS/Android優化後的web站點,用戶不須要下載安裝便可訪問。通常的web站點測重使用網頁技術在移動端作展現,包括文字,視頻,圖片等,而Web App更側重「功能」,是基於網頁技術開發實現特定功能的應用,必須依賴手機瀏覽器運行。Web App開發成本低,維護更新簡單,支持雲修復,用戶不用下載更新,可是App的用戶體驗不足,頁面跳轉遲鈍甚至卡殼,頁面交互動態效果不靈活,並且可能上不了AppStore,若是企業的核心功能很少,App需求側重於信息查詢,瀏覽等基礎功能,能夠選擇Web App。java
Native App(原生App):Native App是基於智能手機操做系統(如今主流的是ios和Android)用原生程序編寫運營的App。Native App運行時是基於本地操做系統的,因此它的兼容能力和訪問能力更好,擁有最佳的用戶體驗、最好的交互界面,但也是開發難度最大,開發成本和維護成本最高的App。ios
Hybrid App(混合App):是指半原生半web的混合類App,同時採用網頁語言和程序語言進行開發,經過不一樣的應用商店進行打包分發,用戶須要下載安裝使用。Hybrid App兼具Native App良好的用戶交互體驗和web App跨平臺開發的優點,因在開發過程當中使用網頁語言,因此開發成本和難度大大下降。Native App是如今的主流應用,大型的App如淘寶/掌上百度/微信都是走的Hybrid App路線。web
2、一個app從設計到最終實現須要你懂得如下幾個必要方面算法
一、前期需求規劃與信息——你須要制定出一個完整的需求文檔,功能文檔,流程圖,時序圖。數據庫
二、交互設計、UI設計——設計出基本且完善的原型圖和app基礎的交互設計效果,以後再根據這些設計出完整的UI界面並學會切圖,一些須要作自適應的素材圖片須要作點9patch。 這裏還須要你懂得px,pt和dp之間的換算,屏幕密度的換算和相互之間的係數,以便你的app能完美適應不一樣分辨率設備。其中交互設計須要你懂得不少人機操做的技巧經驗,掌握Axure等交互工具的使用,UI設計須要你掌握Photoshop和Illustrator等操做。編程
三、使用ADT之類的開發環境進行app軟件開發,你最基本的也得掌握開發語言,熟悉開發環境和機制。瀏覽器
四、若是不是單機版的app,須要用到服務器,那你還得掌握WebService相關知識和開發語言,經常使用的有ASP.Net,PHP,JSP等。
五、熟悉並能開發數據庫。
六、某些功能須要作算法,這還須要必定得專業知識,尤爲是數學基礎。
七、熟悉API接口開發,這裏包括你自行開發API的能力以及調用第三方API的經驗。
八、熟悉TCP/IP,socket等網絡協議和相關知識。
九、熟練掌握App發佈的流程,真機調試技巧,證書,打包,上架。
3、不一樣類型的App開發須要哪些技術?
Web App:
iOS/Android的內置瀏覽器是基於webkit內核的,因此在開發webApp時,多數使用html或html五、CSS三、JavaScript技術作UI佈局,使其在網站頁面上實現傳統的C/S架構軟件功能,服務端技術用java、php、ASP。如今也有不少一鍵生成,好比應用之星平臺。
Native App:
開發Native App須要根據運行的手機系統採用不一樣的開發語言,開發Android App須要的開發語言是java,還須要熟悉Android環境和機制。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設計、框架、性能優化、調試適配等。
開發iOS系統App須要Objective-C主流編程語言,開發者通常用蘋果公司的iOS SDK搭建開發環境,iOS SDK是開發iOS應用程序中不可少的軟件開發包,提供了從建立程序,到編譯、調試、運行、測試等多種開發過程當中須要等工具。學習iOS開發能夠去看蘋果官方文檔,這是最權威的ios教程。
Hybrid App:
混合開發中主流的是以web爲主體型的開發,即以網頁語言編寫,穿插Native功能的hybrid App開發類型,網頁語言主要有html五、CSS三、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都是首選。
最後,不論是我的和企業,開發一個app都很不容易,其中涉及到時間、精力、人力和資金投入,一個簡單App的開發費用就須要6~10萬,稍微複雜些的須要10~15萬。若是你沒有App開發的預算,或者要求的App功能很簡單,想先作一個App試試水,那麼建議你們先試用在線app開發平臺,這類平臺在開發app領域都很成熟,也很專業,好比應用之星,能夠知足中小企業的基本功能,採用控件式操做方式,菜鳥也能夠製做出來專業的app。若是能實現你的需求,你何須花那個冤枉錢了。