人人創(chuàng)業(yè)的今天,當心里有一個想法后扁眯,想立馬把想法變成產品壮莹。大家都知道,第一階段以技術為核心姻檀,沒有技術怎么做出產品呢命满?可并不是每個人都懂技術。外包绣版?不靠譜胶台,都把自己的項目當作是革命性的想法,技術還是要掌握在自己手里杂抽,于是乎诈唬,到處挖技術大牛,要知道技術大牛那可是要花重金請的缩麸,可萬一在實施過程中铸磅,某大牛跟你的想法相左呢,那你的項目就OOXX了杭朱。所以在第一階段阅仔,找一個靠譜的人,才是上策弧械;有一定經驗八酒,能獨立做項目的人即可。
下面我介紹新項目如何實施(第一階段):
以O2O項目為例子刃唐,這里我介紹“揾食”平臺的整個項目搭建過程羞迷。
“揾食” 分為Android版本界轩,IOS版本, H5版本,api服務闭树,業(yè)務支撐系統耸棒。(其中Android版本和iOS版本又分為客戶版和商家版)
在初期版本,考濾到快速開發(fā)报辱,直接選用成熟開源的第三方框架。同時某些經常變動的功能使用H5開發(fā)单山,所以整個客戶端架構是原生+H5混編模式碍现。
一,Android版本:
1米奸,開發(fā)語言選用大人熟悉的Java昼接;
2,網絡框架使用Volley(對RESTful支持比較好)悴晰;
3慢睡,圖片緩存框架使用Glide(比ImageLoader更輕量);
4铡溪,網絡請求方面統一作緩存漂辐,超時,404等處理棕硫,保證用戶體驗髓涯。
5,建立自己的公用組件哈扮,如:列表項纬纪,分享組件等,保證同一類型組件到處可以使用滑肉,大大提高開發(fā)效率包各。
二,iOS版本:
1靶庙,使用Object-C + Swift 混合開發(fā)问畅,某些第三方SDK只有object-c庫。新功能統一使用Swift開發(fā)惶洲。
2按声,架構方面跟Android版本類似。
三恬吕,API服務接口
雖說是初期版本签则,在接口設計時,也要考濾到向后兼容問題铐料。
1渐裂,首先將接口服務劃分為:客戶端API豺旬,商家端API,網頁API(會出現跨域問題)柒凉,這樣設計的目的是族阅,從業(yè)務上將各部分區(qū)分開來,各自業(yè)務獨立互不影響膝捞,不會出現某服務不可用時坦刀,整個系統都不能使用的情況。
2蔬咬,其次從邏輯上鲤遥,將登錄服務獨立開發(fā),采用無中心服務模式林艘,登錄 后返回空閑的API服務器地址盖奈。
3,由于采用分布式服務狐援,所以用戶的登錄信息需要統一處理钢坦,這里使用Redis緩存來存儲(同時也可以用來存儲某些業(yè)務數據),在必須登錄 后才能訪問的API服務接口上啥酱,統一作登錄 驗證爹凹。
4,使用MQ來傳送某些操作頻繁的數據 懈涛,如:登錄日志逛万,統計信息等
5,在數據統計等方面批钠,使用定時任務宇植。
6,技術上埋心,使用SpringMVC+MyBatis指郁,數據庫前期使用Mysql。
以下是系統架構圖:
以上架構支撐十萬級用戶已經毫無壓力了拷呆,拿著項目去路演拿錢闲坎,準備擴張技術團隊吧,迎接下階段大量用戶時的技術改進吧茬斧。
下一章詳細介紹各業(yè)務間的交互腰懂。