做一個app需要什么技術(shù)?這個首先取決于你想要開發(fā)一個什么類型的app,你如果想開發(fā)一款電商類的app,那你最好掌握混合開發(fā)技術(shù)。即HTML5+Native混合技術(shù),現(xiàn)在市面上很多app都使用了混合開發(fā)技術(shù),例如:淘寶、京東、微信、支付寶等等。
這些app的開發(fā)人員在不同的場合都分享過使用混合技術(shù)開發(fā)各自產(chǎn)品的經(jīng)驗。
除了掌握混合開發(fā)技術(shù),有些app的開發(fā)還需要你具備以下能力:
1.前期需求規(guī)劃、信息的能力:你需要制定出一個完整的需求文檔,越明確越好,功能文檔越相系越好,流程圖,時序圖。前期準(zhǔn)備的越充分,后續(xù)問題出現(xiàn)的就越少。
2.交互設(shè)計、UI設(shè)計的能力:你除了最是個程序員,還得是個設(shè)計師。
你得能設(shè)計出基本且完善的原型圖和app基礎(chǔ)的交互設(shè)計效果圖,之后再根據(jù)這些設(shè)計出完整的UI界面并學(xué)會切圖,一些需要做自適應(yīng)的素材圖片需要做點9patch。
這里還需要你懂px,pt和dp之間的換算,屏幕密度的換算和相互之間的系數(shù),以便你的app能完美適應(yīng)不同分辨率設(shè)備。
其中交互設(shè)計需要你懂得很多人機操作的技巧經(jīng)驗,掌握Axure等交互工具的使用,UI設(shè)計需要你掌握Photoshop和Illustrator等操作。
3.使用ADT之類的開發(fā)環(huán)境進(jìn)行app軟件開發(fā),你需要掌握java語言,熟悉android環(huán)境和機制。
4.如果不是單機版的app,需要用到服務(wù)器,那你還得掌握WebService相關(guān)知識和開發(fā)語言,常用的有ASP.Net,PHP,JSP等。
5.熟悉并能開發(fā)數(shù)據(jù)庫。
6.數(shù)學(xué)知識要好。因為某些功能需要做算法。
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)試技巧,證書,打包,上架。
App開發(fā)其實不適合一個人做,費心費力還費錢,除非是一個單機版的小應(yīng)用,或者利用現(xiàn)成的app開發(fā)簡單的第三方應(yīng)用,否則還是找一個專業(yè)的第三方APP外包公司來做比較好,相比個人,專業(yè)靠譜的公司能幫你省時省力多了。