初識(shí)APP后臺(tái)
1.APP后臺(tái)架構(gòu)
梳理app的業(yè)務(wù)流程、整理遇到問題、可行性技術(shù)、有機(jī)融合。
架構(gòu)是和業(yè)務(wù)密切相關(guān)的,其演變由業(yè)務(wù)驅(qū)動(dòng)。架構(gòu)的真實(shí)意義是為了解決問題,根據(jù)實(shí)際需求而設(shè)計(jì)。
2.APP和APP后臺(tái)的通信
APP和APP后臺(tái)通信可以使用通用語言通信和使用暗語通信兩種方式。
除非開發(fā)者對App安全性、性能要求高,不然選擇HTTP協(xié)議足夠。
通信中的長連接和短連接:
長連接就像一直保持著手機(jī)通話,使用Socket或WebSocket連接,適用于手游和聊天推送服務(wù)。
短連接就需要時(shí)才撥通電話,現(xiàn)在的主流通信方式是HTTP協(xié)議,開發(fā)效率高,有大量的第三方軟件,節(jié)約開發(fā)人員的認(rèn)知成本。
APP和后臺(tái)的通信大多數(shù)通過API(Application Programming Interface,應(yīng)用程序編程接口)
后臺(tái)返回給API的數(shù)據(jù)格式:JSON、XML。各有千秋,相比Json更加節(jié)省流量。
3.APP后臺(tái)和Web后端的區(qū)別
APP后臺(tái)需要:網(wǎng)絡(luò)傳輸?shù)牧髁浚▽D片做處理:壓縮)、移動(dòng)手機(jī)的弱網(wǎng)絡(luò)環(huán)境(手機(jī)高速移動(dòng)的網(wǎng)絡(luò)容易斷開)、手機(jī)的電量有限(APP端和后臺(tái)的運(yùn)算相互平衡)。
4.選擇服務(wù)器
傳統(tǒng)服務(wù)IDC器和云服務(wù)器
隨著業(yè)務(wù)規(guī)模的增大,面對高可用、高并發(fā)、監(jiān)控警報(bào)的問題。運(yùn)維問題解決需要的投入非常大。建議使用云服務(wù)器:用戶選擇升級(jí)后臺(tái)硬件配置、寬帶,網(wǎng)絡(luò)支付,重啟服務(wù)器。簡單、方便、快捷。
5.選擇編程語言
選擇符合場景的最熱門的編程語言,是一條重要法則。開發(fā)效率高、切記不同語言維護(hù)相同業(yè)務(wù)邏輯。但,一個(gè)系統(tǒng)中不同的業(yè)務(wù)邏輯可以使用不同的編程語言實(shí)現(xiàn)。
6.快速學(xué)習(xí)新技術(shù)
APP后臺(tái)技術(shù)容易接觸新知識(shí),明白兩個(gè)核心問題:軟件適用場景、軟件的運(yùn)行原理。
閱讀:README文件、INSTALL文件,閱讀官方文檔,閱讀源碼(Example文件),實(shí)在不行就上網(wǎng)搜索唄~
7.APP誕生流程
項(xiàng)目啟動(dòng)(產(chǎn)品經(jīng)理使用Axure制作原型圖、UI設(shè)計(jì)師設(shè)計(jì)界面、產(chǎn)品會(huì)議)-->
研發(fā)階段(根據(jù)業(yè)務(wù)需求完成后端架構(gòu)設(shè)計(jì),初步設(shè)定API接口(填入假數(shù)據(jù)))-->
測試階段(人人都是測試員,制定測試計(jì)劃)-->
正式推出階段(發(fā)布到各大應(yīng)用市場,市場推廣)
8、最適合APP開發(fā)模式
傳統(tǒng)的開發(fā)模式:瀑布模式,最大的問題是開發(fā)周期過長,迭代速度慢。
然而,移動(dòng)互聯(lián)網(wǎng)發(fā)展迅猛,需求不斷變化。因此,引入Scrum敏捷開發(fā)框架。
Scrum簡介:敏捷開發(fā)框架,一個(gè)增量、迭代的開發(fā)過程。包括若干小的迭代周期(Sprint)
使用產(chǎn)品Backlog來管理產(chǎn)品或項(xiàng)目的需求:按照商業(yè)價(jià)值排序的需求列表。開發(fā)總是先從對客戶具有較高價(jià)值的需求開始。
Sprint計(jì)劃會(huì)議分析、討論、估算得到一個(gè)Sprint的任務(wù)列表:Sprint Backlog。
后臺(tái)開發(fā)應(yīng)先設(shè)計(jì)出相關(guān)API并讓API返回假數(shù)據(jù),方便APP開發(fā)人員調(diào)用接順利開展工作。還可以對整個(gè)開發(fā)計(jì)劃有總體的規(guī)范,相當(dāng)于TDD(測試驅(qū)動(dòng)開發(fā))
每日例會(huì)中,報(bào)告:昨天做了什么、今天準(zhǔn)備做什么、什么工作需要和其他同時(shí)配合
對于測試和修復(fù)bug,測試問題需要提交到Bug管理軟件,寫明:問題描述和重現(xiàn)步驟、測試人員、負(fù)責(zé)解決問題的人員。
評(píng)審會(huì)議,演示APP的功能。
回顧會(huì)議,各自說出優(yōu)缺點(diǎn)。
技術(shù)反饋,APP應(yīng)具有意見反饋功能,產(chǎn)品經(jīng)理可以通過后臺(tái)系統(tǒng)賬號(hào)可以和用戶交流。
最后,敏捷開發(fā)適用于需求多變、開發(fā)周期短的項(xiàng)目,并不是萬能的。
---------------------
原文:https://blog.csdn.net/qq_36347817/article/details/78938210