我自認爲對新技術仍是比較有熱情的,可對於小程序這個「新技術」,我卻徹底是被動的。去年9月份的時候,微信小程序開始內測,瞬間引爆朋友圈、知乎等一衆分享平臺。當時我大概瞭解了一下,以爲從技術角度上來講沒啥新意,也徹底沒有get到網上那些人激動的點在哪裏,因而也就沒有花不少精力去深刻了解和學習相關知識。到了11月份,我和幾個小夥伴去北京參加CSDN 舉辦的 SDCC,我特地去聽了微信專場,滴滴團隊的小程序經驗分享乾貨十足,卻依然讓我以爲這個「新技術」不管是從技術角度仍是從用戶場景角度,都沒什麼吸引人的地方。今年1月9日,小程序正式發佈,一會兒又引爆了一衆網絡媒體,連我身邊不少非IT圈的人都在找我瞭解討論小程序的事情。此次我再也坐不住了,畢竟雷布斯說過「只要站在風口豬也能飛起來」,更況且背靠騰訊的張小龍,颳起的極可能是龍捲風。因而我向公司提出申請,註冊了一個小程序帳號,開始嘗試開發一個給公司員工使用的辦公助手。接着我就遇到了一些列問題。html
程序大小限制前端
剛剛開始研究不久我就發現,每次預覽的時候,微信開發者工具都會提示你編譯包的大小是多少。由於微信小程序要求編譯包的大小不能超過1MB,1MB大概有多少呢,我給你們舉個例子,咱們以前用 Vue 開發過一個 OA 系統的手機版,不包括任何第三方依賴,全部代碼 zip 壓縮以後是400KB。咱們的這個手機版 OA 實現了大概 10 個的功能,只有PC版的1/6不到,沒有用任何圖片資源,全部的圖標都是用 font-face 實現的。小程序這個 1MB 的大小限制就註定了你的程序只能是一個簡化版,你們能夠去看看如今已經上線的微信小程序,如滴滴出行、京東購物、卷皮折扣等等,全都是簡化版。程序員
沒有消息推送web
咱們面對的第二個問題就是,微信小程序不能主動進行消息推送。雖然說如今不少 app 沒事推送各類廣告確實挺讓人神煩,可是徹底不能作任何消息推送也不行啊,畢竟這但是剛性需求。好比咱們準備作的 OA 系統,沒有消息推送弊端真的很是多,好比,有會議待開,有審批單待籤,有論壇帖子@到,全部這些東西都徹底沒法通知用戶了,那麼做爲一個 OA 系統,連提醒功能都沒有,作手機版的意義就已經大打折扣了。一樣的,社交類 APP,購物類 APP 都有不少對消息推送存在剛需的場景,小程序裏面,這些都實現不了了。小程序
不完善的語法微信小程序
其實微信小程序的語法和 Vue 是很是類似的,以致於小程序剛剛內測的時候,有人還去知乎上提問說小程序的底層是否是 Vue 實現的。但是,實際看了小程序的開發文檔以後你就會發現,小程序的指令實在是太簡單了,目前除了數據綁定、條件渲染、列表、模板、事件、引用 以外基本上沒有其餘的功能了。而反觀 Vue 的開發文檔,你會發現二者是天壤之別。API 太過繁雜會增長了不少學習成本也不是好事。但是像小程序這麼簡單的 API,提供的功能確定是很是有限的,天然也帶來了不少開發上的不便。好比,在 Vue 裏面,你能夠用不少不一樣的變量往同一個元素上面綁定不少不一樣的 class,在小程序上就沒這麼簡單了。瀏覽器
沒新意的架構微信
其實沒有新意的架構並不能算小程序的缺點,只是模仿優秀者,並且模仿的還很像,這並非很麼壞事。但是,做爲騰訊的力推產品,你們天然對它各個方面的期待都更高一些,就好像蘋果公司這幾年的發佈會,雖然也在一隻推陳出新,但是畢竟都不是什麼劃時代的設計或功能,因而你們紛紛表示蘋果已經不是原來那個蘋果了。對前端開發來講,若是小程序的架構和 Vue、React 都相似,那麼咱們又爲何要從 Vue 和 React 轉來用小程序呢?網絡
不突出的性能微信開發
小程序剛剛開始內測的時候,不少人猜想小程序是否是和 ReactNative 以及 Weex 同樣把相似 HTML 的各類標籤渲染成了手機端原生組件,從而使程序的運行流暢度大大提升。而後目前來看,事實並非這樣,在 Android 手機的開發選項中開啓「顯示佈局邊界」以後,你就能夠發現,其實小程序說白了仍是一個 webview,並且不少人在體驗太小程序以後也發現,界面的流暢度和瀏覽器相比並無什麼明顯的提升。
更封閉的體系
小程序的整個體系是封閉的,從代碼編輯器到調試環境到運行環境,全都是騰訊出的,並且目前來看全是閉源方案。包括後期的上線審覈,可搜索的關鍵字設置等等方面,全都是騰訊一家說了算,很有蘋果的做風。作過 iOS APP 的同窗應該是對蘋果的行事風格有體會的,說要下架你的 APP 就下架,招呼都不打,你想去找他溝通,幾天沒人理你。
上面這些都是我從開發的角度去看小程序的問題。可能不少人會以爲不服,認爲光有程序員思惟是不行的,不少事情並不只僅是技術那麼簡單。那下面我就從運營的角度來講說小程序還有哪些問題。
流量不足
小程序剛剛提出的時候,不少人以爲機會來了,一個很重要的緣由就是你們都以爲有微信這個超級流量平臺,小程序的流量確定會很是可觀,但是結果你們都看到了。小程序不能在朋友圈分享,只能在聊天場景分享,但是你們回憶一下,通常人在聊天的時候會常常給別人分享 APP 麼?另外,小程序沒有所謂的應用市場,也就沒有排名和榜單,只能搜索,並且除了個別很是知名的 APP 或品牌名稱,好比京東,其餘的 APP 只能精確搜索。另外,所謂的線下掃描二維碼進入小程序,老實說,我想不出來有什麼線下場景必定要用戶掃描一個二維碼進入小程序才能進行下去。若是隻是付款,徹底能夠直接掃碼支付,若是是註冊會員,徹底能夠掃碼以後只顯示一個註冊頁面。小程序的入口就是這麼模糊。
功能太弱
就算有些用戶通過重重阻礙,終於掃面二維碼進入了小程序,他接着就會發現,小程序的功能因爲其編譯包大小的限制,每每顯得有點力不從心。對比一下京東的原生 APP 和京東的微信小程序,咱們不難發現,京東的微信小程序版基本上把京東 APP 裏面 80% 的功能都看掉了。若是你是個技術男如今只是想買一條手機數據線,你可能能夠在小程序上搜索數據線,查看某條搜索結果的詳情,感受不錯就買了。但是若是你要是個妹紙想買條裙子,小程序顯然不能知足你反覆比較挑選的需求。
微信小程序剛剛推出的時候,有人說微信除了小程序,不少 APP 均可以卸載掉了,還舉例說好比天氣 APP 和計算器 APP。可在我看來,這兩個 APP 都不可能被小程序取代。天氣 APP 最重要的就是天氣信息的主屏幕提醒,小程序作不到。計算器都是各個手機系統自帶的功能,小程序更沒有機會。就算手機系統不自帶計算器,用戶是但願在主屏幕上點一下打開,仍是但願先打開微信,而後切換到發現選項卡,再進入小程序欄目,最後選擇計算器功能?
「用完即走」
微信小程序提出了一個概念叫「用完即走」。這個想法聽起來好像很人性化很替用戶着想,可事實上這個需求是很是「小衆」的需求,甚至能夠說是僞需求。用戶只對一些低使用頻率,又非用不可的 APP 纔有這種需求,好比旅遊類 APP。首先旅遊類 APP 的使用頻率低,用戶不太可能每一個星期去旅遊,另外你不用好像也確實不方便。再好比某些酒店的會員 APP,你在住酒店的時候用它能夠帶來不少切實的方便和優惠。可你們在深刻想一想,咱們出去旅遊的時候,旅遊類 APP 是隻用一次仍是在一小段時間內頻繁使用?顯然是後者,那咱們爲何不在這一小段時間內安裝一個旅遊的 APP,過了這一段時間以後再刪掉?畢竟全功能的 APP 在各個方面來講都更好用。
我以爲,小程序其實從一開始就沒有打算去取代現有的原生 APP,它只是對現有 APP 生態的一個補充和完善,能夠說是一個面向小衆細分市場的產品。同時,對張小龍和騰訊來講,微信小程序可能更是微信對生態圈建設的一次嘗試。
如需轉載,請註明轉自:http://www.cnblogs.com/silenttiger/p/6323406.html
歡迎關注個人微信公衆號:老虎的小窩