一 、App有哪些形式?
App主要(yao)有三种形式,分别是(shi)WebApp,Native App(原生App)和Hybrid App(混合App)。
WebApp:简单(dan)来说,Web App就是(shi)针(zhen)对iOS/Android优化后(hou)的(de)web站点,用户(hu)不(bu)需要下载安装即可访问。一般的(de)web站点测重(zhong)使用网页(ye)技(ji)术(shu)(shu)在移动端做展示,包括文字(zi),视频,图(tu)片(pian)等(deng),而Web App更(geng)(geng)侧重(zhong)“功(gong)(gong)(gong)(gong)能”,是(shi)基于(yu)(yu)网页(ye)技(ji)术(shu)(shu)开发实现特定(ding)功(gong)(gong)(gong)(gong)能的(de)应用,必(bi)须依赖(lai)手机浏览器(qi)运行。Web App开发成本低,维护更(geng)(geng)新简单(dan),支(zhi)持(chi)云修复,用户(hu)不(bu)用下载更(geng)(geng)新,但是(shi)App的(de)用户(hu)体验不(bu)足,页(ye)面跳转迟钝(dun)甚至卡壳(qiao),页(ye)面交互动态(tai)效果不(bu)灵(ling)活(huo),而且可能上不(bu)了AppStore,如果企业(ye)的(de)核心功(gong)(gong)(gong)(gong)能不(bu)多,App需求侧重(zhong)于(yu)(yu)信息查(cha)询,浏览等(deng)基础功(gong)(gong)(gong)(gong)能,可以选择Web App。
Native App(原生(sheng)App):Native App是基(ji)于智(zhi)能(neng)手机操作系统(tong)(tong)(现(xian)在主流的(de)(de)(de)是ios和Android)用原生(sheng)程序编写(xie)运(yun)营的(de)(de)(de)App。Native App运(yun)行时(shi)是基(ji)于本地操作系统(tong)(tong)的(de)(de)(de),所(suo)以它的(de)(de)(de)兼(jian)容能(neng)力和访问能(neng)力更(geng)好,拥有(you)最(zui)佳的(de)(de)(de)用户(hu)体验、最(zui)好的(de)(de)(de)交互界(jie)面,但也是开(kai)发(fa)难度最(zui)大,开(kai)发(fa)成本和维护成本最(zui)高的(de)(de)(de)App。
Hybrid App(混合App):是指半原生半web的混合类App,同时采用网页语言和程序语言进行开发,通过不同的应用商店进行打包分发,用户需要下载安装使用。Hybrid App兼具Native App良好的用户交互体验和web App跨平台开发的优势,因在开发过程中使用网页语言,所以开发成本和难度大大降低。Native App是现在的主流应用,大型的App如淘宝/掌上百度/微信都是走的Hybrid App路线。
二、一个app从设(she)计到最(zui)终实现需要(yao)(yao)你懂得以下几个必(bi)要(yao)(yao)方(fang)面
1、前(qian)期需求(qiu)(qiu)规划与信息——你需要(yao)制定(ding)出一(yi)个完整的需求(qiu)(qiu)文档,功能(neng)文档,流程(cheng)图(tu),时序图(tu)。
2、交互(hu)设(she)(she)(she)计(ji)、UI设(she)(she)(she)计(ji)——设(she)(she)(she)计(ji)出(chu)基(ji)(ji)本且完善的(de)原型(xing)图(tu)(tu)和app基(ji)(ji)础(chu)的(de)交互(hu)设(she)(she)(she)计(ji)效果,之(zhi)后(hou)再根据这些设(she)(she)(she)计(ji)出(chu)完整(zheng)的(de)UI界面(mian)并学会切图(tu)(tu),一些需(xu)(xu)要(yao)做自适(shi)应的(de)素材图(tu)(tu)片(pian)需(xu)(xu)要(yao)做点9patch。 这里还需(xu)(xu)要(yao)你(ni)懂(dong)得px,pt和dp之(zhi)间(jian)的(de)换(huan)(huan)算(suan),屏幕密(mi)度(du)的(de)换(huan)(huan)算(suan)和相互(hu)之(zhi)间(jian)的(de)系数,以便你(ni)的(de)app能(neng)完美适(shi)应不(bu)同分辨(bian)率设(she)(she)(she)备。其中交互(hu)设(she)(she)(she)计(ji)需(xu)(xu)要(yao)你(ni)懂(dong)得很(hen)多人机操(cao)(cao)作的(de)技巧经验(yan),掌握Axure等交互(hu)工(gong)具的(de)使用,UI设(she)(she)(she)计(ji)需(xu)(xu)要(yao)你(ni)掌握Photoshop和Illustrator等操(cao)(cao)作。
3、使(shi)用ADT之(zhi)类的开(kai)发(fa)环境进行app软件开(kai)发(fa),你最(zui)基本的也得掌(zhang)握开(kai)发(fa)语言,熟(shu)悉(xi)开(kai)发(fa)环境和机制。
4、如果不是单机版的(de)app,需要用到服务器(qi),那你还得(de)掌握WebService相(xiang)关知识和开发语言,常用的(de)有//ASP.Net,PHP,JSP等。
5、熟(shu)悉并能开发数据库,如(ru)MySql等。
6、某些(xie)功(gong)能(neng)需要做算法(fa),这(zhei)还需要一定(ding)得专业知(zhi)识,尤其(qi)是数学基础。
7、熟悉(xi)API接(jie)口开发(fa),这里包括你自行开发(fa)API的(de)能力以(yi)及调用第三方API的(de)经(jing)验。
8、熟(shu)悉TCP/IP,socket等网络协(xie)议和相关知识。
9、熟练掌握App发(fa)布的(de)流程,真机调试测试技巧(qiao),相关证(zheng)书申请,打(da)包(bao),不同应用市场的(de)上架。
三、不同类型的App开发需(xu)要哪些技(ji)术?
Web App:
iOS/Android的内(nei)置(zhi)浏(liu)览器是基于webkit内(nei)核(he)的,所以在开发webApp时,多数使用html或html5、CSS3、JavaScript技术做UI布局,使其在网站(zhan)页面上(shang)实(shi)现(xian)传统(tong)的C/S架构(gou)软件功能,服务端技术用java、php、ASP。
Native App:
开(kai)发(fa)(fa)Native App需要根据运(yun)行(xing)的手机系统采用(yong)不同的开(kai)发(fa)(fa)语(yu)言,开(kai)发(fa)(fa)Android App需要的开(kai)发(fa)(fa)语(yu)言是java,还(hai)需要熟悉Android环境和机制。Android开(kai)发(fa)(fa)涉(she)及到的技术点非常(chang)庞杂。
主要知识点如下:
1. 开发(fa)环(huan)境,Android Studio、eclipse.如何搭(da)建Android开发(fa)环(huan)境可以去百(bai)度。
2. 数据结构(gou),App的某(mou)些功能涉及到做(zuo)算法,所(suo)以要有一(yi)定(ding)的数学(xue)基(ji)础
3. Android SDK,会API接口(kou)开(kai)发,包括自行开(kai)发API的能力和调用第三发API的经验。
4. 熟悉tcp、IP,socket等网络(luo)协(xie)议(yi)
5. 如(ru)果涉及到服务器,你还(hai)需要(yao)了解webservice相关知(zhi)识和相应的(de)开发语言,常用有PHP、JSP、ASP.Net.
6. 除了这些功能基础(chu),App开发还涉(she)及到UI设(she)计、框架、性能优(you)化、调试适配等。
开(kai)(kai)(kai)发(fa)iOS系统App需要Objective-C主流编(bian)程(cheng)语言(yan),开(kai)(kai)(kai)发(fa)者一(yi)般用(yong)苹果(guo)公(gong)司的iOS SDK搭建(jian)开(kai)(kai)(kai)发(fa)环境,iOS SDK是开(kai)(kai)(kai)发(fa)iOS应用(yong)程(cheng)序中不可(ke)少的软件开(kai)(kai)(kai)发(fa)包,提(ti)供了(le)从创建(jian)程(cheng)序,到编(bian)译、调试(shi)、运(yun)行、测(ce)试(shi)等(deng)多种开(kai)(kai)(kai)发(fa)过(guo)程(cheng)中需要等(deng)工具(ju)。学习iOS开(kai)(kai)(kai)发(fa)可(ke)以去(qu)看苹果(guo)官方(fang)文档,这(zhei)是最权威的ios教程(cheng)。
Hybrid App:
混(hun)合开(kai)发中主(zhu)流的(de)(de)是(shi)以web为主(zhu)体型(xing)的(de)(de)开(kai)发,即以网(wang)页语(yu)言编写(xie),穿(chuan)插Native功能的(de)(de)hybrid App开(kai)发类型(xing),网(wang)页语(yu)言主(zhu)要(yao)有html5、CSS3、JavaScript。Web主(zhu)体型(xing)的(de)(de)App用(yong)(yong)户(hu)体验(yan)好坏,取决于底层中间(jian)件的(de)(de)交互与跨平台的(de)(de)能力。国内外有很(hen)多(duo)优(you)秀的(de)(de)开(kai)发工具,如国外的(de)(de)AppmAkr、Appmobi,国内的(de)(de)APICloud,APICloud的(de)(de)底层引擎用(yong)(yong)Deep Engine,使用(yong)(yong)半(ban)翻译(yi)(yi)式原(yuan)理(li),将运行中的(de)(de)web翻译(yi)(yi)成Native API,并且支持扩展API,开(kai)发时(shi)可调(diao)用(yong)(yong)用(yong)(yong)原(yuan)生语(yu)言开(kai)发的(de)(de)功能模块,以此达到媲美(mei)原(yuan)生App的(de)(de)用(yong)(yong)户(hu)体验(yan),同时(shi)节省开(kai)发时(shi)间(jian)。
对企(qi)业来说,可以根据自己的(de)需求选择(ze)不(bu)同的(de)开(kai)(kai)(kai)发(fa)类型(xing)和(he)开(kai)(kai)(kai)发(fa)工具,目(mu)前(qian)来看,Hybrid App已(yi)经(jing)(jing)成为移动(dong)开(kai)(kai)(kai)发(fa)趋(qu)势,一(yi)方面(mian)Hybrid App开(kai)(kai)(kai)发(fa)时不(bu)采用(yong)或者大部分不(bu)采用(yong)原(yuan)生语言,却能拥有原(yuan)生应用(yong)的(de)特(te)性,一(yi)方面(mian)随着(zhe)web技术的(de)发(fa)展,Hybrid App技术已(yi)经(jing)(jing)成熟,很多(duo)大型(xing)App淘宝、微(wei)信、携程(cheng)都(dou)属(shu)于这种开(kai)(kai)(kai)发(fa)模式(shi),Hybrid App给企(qi)业移动(dong)应用(yong)的(de)开(kai)(kai)(kai)发(fa)、维护、更新都(dou)带来了极高的(de)便(bian)捷性,从成本投入用(yong)户(hu)体验(yan)考虑,Hybrid App都(dou)是首(shou)选。
四、总结而言
威之德信息APP开发公司属于一(yi)(yi)个需要技(ji)术专(zhuan)(zhuan)业特(te)别强的人员(yuan)进行(xing)定制(zhi)(zhi)开发,威之德信息专(zhuan)(zhuan)业定制(zhi)(zhi)开发APP。一(yi)(yi)般(ban)一(yi)(yi)个功(gong)(gong)能普通(tong)一(yi)(yi)点的APP而言,比如B2C商城APP开发,价格一(yi)(yi)般(ban)需要在6~10万左右,如果(guo)功(gong)(gong)能相对丰(feng)富和(he)负责的APP开发项(xiang)目,则需要10~20万以上的费用,很(hen)多企业可(ke)能会考虑自己招聘(pin)进行(xing)APP开发,往(wang)往(wang)因为缺少管理经验和(he)项(xiang)目把(ba)控能力,几(ji)乎项(xiang)目成本翻了(le)几(ji)倍,前(qian)期试水的话,直(zhi)接找(zhao)专(zhuan)(zhuan)业的APP开发公司进行(xing)项(xiang)目开发更加明(ming)智。