一晚上之間,微信小程序刷爆了行業網站和朋友圈,小程序真的能如張小龍所說讓用戶「即用即走」嗎?前端
其功能能和動輒幾十兆安裝文件的APP相比嗎?小程序
開發小程序,是否是意味着移動應用開發的一次推倒重來,企業的運營成本會不會所以增長?微信小程序
近日,筆者參加了一次騰訊自選股介紹小程序開發過程的內部沙龍,自選股小程序產品經理Poppy和首席開發工程師小K的一番海聊,從開發技術和行業走勢兩個方面爲咱們揭開了小程序的祕密。緩存
今年7月,騰訊自選股團隊接到微信的邀請,作一個Web+的應用測試。當時他們還不知道,這就是微信小程序的首批開發內測。而當時,其實連「小程序」這個名字也尚未肯定。服務器
三個月後,「騰訊自選股」成爲第一個開發成功的微信小程序。相比於原來身量龐大的APP,它無需用戶下載、安裝,便可在微信內一鍵即達,並可實現盯盤、看盤、在線交易等APP的核心功能。自選股的用戶無需離開微信,就能夠邊聊天邊看盤乃至進行股票交易,與身處大戶室的感覺幾乎無異。微信
這三個月,是小程序撥雲見日、從無到有的三個月,自選股團隊爲探索開發一款完美的小程序奏響了先聲。網絡
揭祕一:在內容上有所取捨,更符合小程序所適配的場景app
小程序的特色在於「輕」。自選股小程序的安裝包只有900K,輕裝的實現,首先來自於取捨的理念。學習
「小程序不是對APP的原樣照搬。」Poppy介紹說,自選股小程序對APP中深度、專業的資訊服務作了取捨,只收錄了支持個股的部分資訊。由於在微信裏,用戶能夠經過訂閱號、服務號等多種渠道收看資訊,小程序沒必要再作重複建設,而是主要適配交易與交流同步的應用場景。測試
小程序開發團隊對自選股作了從新設計。圍繞用戶的核心需求,在自選股小程序的頁面上,最終只保留了自選、行情和設置三個頁卡,輕巧而清晰。
揭祕二:採用WebSocket協議實現數據實時性
顯示實時行情是股票應用核心功能之一,但實時數據傳輸最爲佔用網絡資源,也影響到小程序應用的流暢性和用戶體驗。
自選股小程序採用WebSocket完美解決了這個問題。小K說,以往數據更新多采用輪詢機制,即客戶端按照必定的週期頻率發起數據請求,對網絡資源的佔用較大。自選股小程序的解決方案是採用WebSocket,當服務器有數據更新時主動PUSH,從而下降了無效的網絡傳輸,使數據的實時性更強。
揭祕三:數據緩存加速數據呈現
自選股小程序經過數據緩存,加速頁面的數據呈現。本地緩存文件最大能夠達到10M。
10M緩存量是根據自選股用戶的偏好來設置的。數據顯示,80%用戶的自選股不超過20支,一隻股票的緩存數據大約300K,10M的緩存空間足夠緩存30支以上的股票。這對於絕大多數用戶來講已經足夠了,並且實現了用少許數據支持頁面的流暢呈現。
揭祕四:響應式繪圖完美適配不一樣機型
Canvas在使用前須要設置大小以便佔位。而在小程序裏面,目前Canvas不支持RPX的方式,Canvas須要動態添加圖形的寬高數據。
爲了更快渲染Canvas,且不出現閃屏效果,自選股小程序在啓動程序時即在後臺記錄用戶所用設備的屏幕尺寸。進入Canvas繪製頁時在OnLoad方法中計算Canvas大小並設置畫布。這完美地解決了在小程序中實現響應式繪圖的問題。
揭祕五:簡潔的UI平衡美觀與實用
自選股小程序的UI十分簡潔。與iOS開發徹底不一樣,從UI到總體前端處理大部分都採用CSS作渲染。對個別須要用到PNG的設計元素,對PNG作無損壓縮。這讓小程序在頁面的美觀與程序的輕靈之間找到了平衡。
揭祕六:人性化優化很重要
對於股票應用來講,任何一支股票的異動都須要立刻看到變化,不然對於用戶來講是致命的缺陷。開發團隊認識到,小程序之輕毫不能以犧牲核心功能和用戶體驗爲代價。所以,在自選股團隊的建議下,微信團隊專門開發了小程序動畫支持功能。如今,自選股小程序中,股票一旦發生價格變化會自動閃爍,提醒用戶重點關注,讓小程序的功能徹底不輸APP。
揭祕七:人人可作小程序
「自選股小程序表明了目前微信小程序開發的標杆和極限。」Poppy對此十分自信。股票類應用自己是比較複雜的移動應用。自選股小程序開發成功,至關於釐定了小程序開發的邊界。只要你的應用不比自選股更復雜,就必定能實現小程序應用。
微信小程序做爲一個輕應用,它的優點之一在於使開發變得相對容易。自選股小程序的研發之因此走過了三個月時間,是由於他們做爲微信小程序應用開發的拓荒者,和微信小程序研發團隊共同經歷了開發、完善底層技術的全過程,甚至客觀上成爲小程序開發標準的參照。
小程序到底該有多大才算「輕」,在小程序開發之初,微信團隊對此也沒有概念。當得知自選股小程序最終完成的安裝包只有900 K後,他們將小程序安裝包體量的上限定在了1024K。
揭祕八:對流量入口的爭奪將再次開啓
小程序規避了過去加載應用必需的掃碼、下載、安裝等繁複過程,更容易觸發用戶應用,更方便商家留存用戶信息。月活量已經超過八億用戶的微信已經成爲了一種實實在在的生活方式,其中集合了豐富的生活場景入口。微信小程序的出現,能夠幫助O2O行業獲取更多用戶,是個絕對的利好。Poppy認爲:「基本上,服務類的商家都適合作小程序。」
小K認爲,相對APP,小程序的開發更爲容易,只需一套代碼就適配全部機型,視應用複雜程度,最多五六我的一個月就能夠搭建出來,成本優點十分明顯。
有人說,互聯網APP創業的風口正在關閉。但小程序所倡導的基於微信環境的輕型應用的理念,爲已陷入增速減緩的互聯網移動應用帶來一股清流,爲服務類APP的轉型發展帶來了啓發。
「H5程序俱樂部」是一個專一微信小程序學習交流,相關外包/招聘需求信息發佈的微信公衆號。
「H5程序俱樂部」微信號:wxappclub 或者 微信掃一掃關注