最近,知乎上關於「騰訊開發微信技術花瞭多少錢,究竟技術難度和難點有多高?」這份帖子引起瞭諸多關註,不難看出,當普通人膜拜的對象成為「明星、富二代、高官」時,程序員們心中依然是「張小龍」等殿堂級的代碼高手。如果有人問起他:「開發一款像微信這樣的 App 需要花多少錢?技術難度高不高?」,你覺得應該如何作答?
一、白天如何能懂夜的黑?
先來這麼一個比喻:
道具:肉夾饃。人物:攤主、顧客。
正常來說,顧客需要的是一個肉夾饃。
但也有的時候,顧客上來會上來就說:
給我來兩萬個肉夾饃。(內存過載)
給我來 1.356 個肉夾饃。(處理精度不足)
給我來倆,一個不要肉,一個不要夾饃。(藍屏)
不要肉夾饃,給我來條狗。(這個攤位崩潰瞭)
然後,當這個攤位真崩潰的時候,顧客通常的做法就是——用力拍打攤位,邊拍邊喊「破程序,怎麼回事?」旁邊人還不停地勸他,不行就重啟吧。
所以,你說,當用戶找軟件開發公司談業務,價格從幾百元到幾萬元不等,究竟是用戶與軟件開發商之間的信息不對等,還是說軟件開發的技術難度有多大?
有一點問題很重要:白天確實不懂夜的黑。在與不懂 IT 的客戶談需求和報價時,詳細的信息溝通就顯得極為重要。
二、有價無市才叫溢價
從「微信開發成本」這件事兒來講,其開發成本之高、開發難度之大基本上得到多數認可。道衍天機認為主要有以下幾點原因:
首先,往往一個很簡單的功能需要反復修改,在研發過程中也可能會不斷推翻之前的設計想法。因為,一款用戶體驗好的軟件不僅要平衡用戶滿意度,同時也要引導用戶,提高用戶活躍度和留存率。尤其是大公司的應用軟件,每隔一段時間都在不斷優化和迭代,也是為瞭提高用戶留存率。
此外,移動設備不同、操作系統不同,甚至版本號也各異,如果你是小公司的產業研發團隊成員,那麼功能代碼寫完可能僅是此次項目的其中一款內容,如何解決好不同移動設備的兼容新問題仍是不小的挑戰。
再者,諸如有些無法獨立實現的功能如消息推送,就需要跟第三方移動設備廠商進行合作,同樣也需要投入一定的資金成本。
還有一點非常重要的是,在龐大用戶基數的情況下,必然要處理高並發問題。從微信 2017 年 8.89 億月活用戶,1000 萬公眾號的數據可以看到,微信並不隻是一款前端的 App,它的正常運轉需要後端大量服務器的支撐,需要存儲空間的支持。
對此,李明陽的回答發人深思:" 很多東西的難度,是隨著需求變化的 ",正如小白用戶需要的僅是便宜好用,而成熟用戶已從功能需求上升到戰略層面,如何獲得與自身業務快速增長相符合的後端系統支撐?如何滿足用戶更加復雜的業務場景需求?如何處理高流量下的負載均衡?
如果說是 IT 產業的溢價太高,不如換個角度思考,高投入換回來的是高價值回報," 隻要能成交,就是合理的價格,有價無市才叫溢價。
三、自己做開發難度不小
很多用戶尤其是行業用戶,當一款 App 產品很難滿足自己日漸增長的業務需求,或者說市面上普遍產品都用得比較糟心時,外包的方式似乎不太可取,用戶往往會 " 下海 " 嘗試自己單幹,成功的也有,但往往難度不小。
你首先得瞭解開發一款 App 需要哪些環節吧?從可行性研究、需求調研分析、產品規劃、UI 設計、技術研發、程序測試,到使用和運維階段。
然後,你還得瞭解行業中流行的幾款移動開發方式,同時也需要時刻關註這類技術的發展趨勢。
從 2016 年 7 月移動信息化研究中心的一項數據顯示,基於 H5 以及混合模式的移動開發技術已逐漸在市場中占有優勢地位;原生模式的選擇比例在逐年萎縮,但應會有一絲生存餘地。
程墨 Morgan 提到,為瞭開發一款像樣的軟件,需要專人做市場定位、需求分析,專人做架構設計,更需要更多專人來寫代碼 …… 而所有這些 " 專人 " 都是有著多年的教育和經驗積累的,但說人力成本就已經直線上升。
四、一切以用戶價值為依歸
以微信生態中小程序的開發框架為例。
微信小程序技術架構圖
基於 Web 規范,采用 HTML、CSS 和 JS 等搭建的一套框架;基於多個 webview 實現 UI 視圖和邏輯處理;借助 JSBridge 實現對底層 API 接口的調用。對於技術開發者而言,小程序的開發模式仍然值得商榷。
同時,小程序在 Web 兼容性、開發環境穩定性、真機調試環境、閉源狀態,以及配套的工具鏈上都存在暫時的不完善。
自帶流量屬性、連接線下場景、原生 App 替代品,在經歷瞭圍觀、追捧、跌宕之後,小程序仍在尋找商業化的道路。
回到一開始的問題,如果現在還有人在糾結於 " 開發一款類似微信的 App 需要花多少錢 " 時,你大可告訴他 " 一切以用戶價值為依歸,用戶價值是第一位的 ",因為這是張小龍說的。
————— END —————