微信小程式為什麼不被看好?

来源:http://www.cnblogs.com/jc535201285/archive/2017/02/05/6367698.html
-Advertisement-
Play Games

我自認為對新技術還是比較有熱情的,可對於小程式這個“新技術”,我卻完全是被動的。去年9月份的時候,微信小程式開始內測,瞬間引爆朋友圈、知乎等一眾分享平臺。當時我大概瞭解了一下,覺得從技術角度上來說沒啥新意,也完全沒有get到網上那些人激動的點在哪裡,於是也就沒有花很多精力去深入瞭解和學習相關知識。到 ...


 

我自認為對新技術還是比較有熱情的,可對於小程式這個“新技術”,我卻完全是被動的。去年9月份的時候,微信小程式開始內測,瞬間引爆朋友圈、知乎等一眾分享平臺。當時我大概瞭解了一下,覺得從技術角度上來說沒啥新意,也完全沒有get到網上那些人激動的點在哪裡,於是也就沒有花很多精力去深入瞭解和學習相關知識。到了11月份,我和幾個小伙伴去北京參加CSDN 舉辦的 SDCC,我特意去聽了微信專場,滴滴團隊的小程式經驗分享乾貨十足,卻依然讓我覺得這個“新技術”無論是從技術角度還是從用戶場景角度,都沒什麼吸引人的地方。今年1月9日,小程式正式發佈,一下子又引爆了一眾網路媒體,連我身邊很多非IT圈的人都在找我瞭解討論小程式的事情。這次我再也坐不住了,畢竟雷布斯說過“只要站在風口豬也能飛起來”,更何況背靠騰訊的張小龍,颳起的很可能是龍卷風。於是我向公司提出申請,註冊了一個小程式賬號,開始嘗試開發一個給公司員工使用的辦公助手。接著我就遇到了一些列問題。

  1. 程式大小限制

    剛剛開始研究不久我就發現,每次預覽的時候,微信開發者工具都會提示你編譯包的大小是多少。因為微信小程式要求編譯包的大小不能超過1MB,1MB大概有多少呢,我給大家舉個例子,我們之前用 Vue 開發過一個 OA 系統的手機版,不包括任何第三方依賴,所有代碼 zip 壓縮之後是400KB。我們的這個手機版 OA 實現了大概 10 個的功能,只有PC版的1/6不到,沒有用任何圖片資源,所有的圖標都是用 font-face 實現的。小程式這個 1MB 的大小限制就註定了你的程式只能是一個簡化版,大家可以去看看現在已經上線的微信小程式,如滴滴出行、京東購物、捲皮折扣等等,全都是簡化版。

  2. 沒有消息推送

    我們面對的第二個問題就是,微信小程式不能主動進行消息推送。雖說現在很多 app 沒事推送各種廣告確實挺讓人神煩,但是完全不能做任何消息推送也不行啊,畢竟這可是剛性需求。比如我們準備做的 OA 系統,沒有消息推送弊端真的非常多,比如,有會議待開,有審批單待簽,有論壇帖子@到,所有這些東西都完全無法通知用戶了,那麼作為一個 OA 系統,連提醒功能都沒有,做手機版的意義就已經大打折扣了。同樣的,社交類 APP,購物類 APP 都有很多對消息推送存在剛需的場景,小程式裡面,這些都實現不了了。

  3. 不完善的語法

    其實微信小程式的語法和 Vue 是非常相似的,以至於小程式剛剛內測的時候,有人還去知乎上提問說小程式的底層是不是 Vue 實現的。可是,實際看了小程式的開發文檔之後你就會發現,小程式的指令實在是太簡單了,目前除了數據綁定、條件渲染、列表、模板、事件、引用 之外基本上沒有其他的功能了。而反觀 Vue 的開發文檔,你會發現兩者是天壤之別。API 太過繁雜會增加了很多學習成本也不是好事。可是像小程式這麼簡單的 API,提供的功能肯定是非常有限的,自然也帶來了很多開發上的不便。比如,在 Vue 裡面,你可以用很多不同的變數往同一個元素上面綁定很多不同的 class,在小程式上就沒這麼簡單了。

  4. 沒新意的架構

    其實沒有新意的架構並不能算小程式的缺點,只是模仿優秀者,而且模仿的還很像,這並不是很麽壞事。可是,作為騰訊的力推產品,大家自然對它各個方面的期待都更高一些,就好像蘋果公司這幾年的發佈會,雖然也在一隻推陳出新,可是畢竟都不是什麼劃時代的設計或功能,於是大家紛紛表示蘋果已經不是原來那個蘋果了。對前端開發來說,如果小程式的架構和 Vue、React 都類似,那麼我們又為什麼要從 Vue 和 React 轉來用小程式呢?

  5. 不突出的性能

    小程式剛剛開始內測的時候,很多人猜測小程式是不是和 ReactNative 以及 Weex 一樣把類似 HTML 的各種標簽渲染成了手機端原生組件,從而使程式的運行流暢度大大提高。然後目前來看,事實並不是這樣,在 Android 手機的開發選項中開啟“顯示佈局邊界”之後,你就可以發現,其實小程式說白了還是一個 webview,而且很多人在體驗過小程式之後也發現,界面的流暢度和瀏覽器相比並沒有什麼明顯的提高。

  6. 更封閉的體系

    小程式的整個體系是封閉的,從代碼編輯器到調試環境到運行環境,全都是騰訊出的,而且目前來看全是閉源方案。包括後期的上線審核,可搜索的關鍵字設置等等方面,全都是騰訊一家說了算,頗有蘋果的作風。做過 iOS APP 的同學應該是對蘋果的行事風格有體會的,說要下架你的 APP 就下架,招呼都不打,你想去找他溝通,幾天沒人理你。

上面這些都是我從開發的角度去看小程式的問題。可能很多人會覺得不服,認為光有程式員思維是不行的,很多事情並不僅僅是技術那麼簡單。那下麵我就從運營的角度來說說小程式還有哪些問題。

  1. 流量不足

    小程式剛剛提出的時候,很多人覺得機會來了,一個很重要的原因就是大家都覺得有微信這個超級流量平臺,小程式的流量肯定會非常可觀,可是結果大家都看到了。小程式不能在朋友圈分享,只能在聊天場景分享,可是大家回憶一下,一般人在聊天的時候會經常給別人分享 APP 麽?另外,小程式沒有所謂的應用市場,也就沒有排名和榜單,只能搜索,而且除了個別非常知名的 APP 或品牌名稱,比如京東,其他的 APP 只能精確搜索。另外,所謂的線下掃描二維碼進入小程式,老實說,我想不出來有什麼線下場景一定要用戶掃描一個二維碼進入小程式才能進行下去。如果只是付款,完全可以直接掃碼支付,如果是註冊會員,完全可以掃碼之後只顯示一個註冊頁面。小程式的入口就是這麼模糊。

  2. 功能太弱

    就算有些用戶經過重重阻礙,終於掃面二維碼進入了小程式,他接著就會發現,小程式的功能由於其編譯包大小的限制,往往顯得有點力不從心。對比一下京東的原生 APP 和京東的微信小程式,我們不難發現,京東的微信小程式版基本上把京東 APP 裡面 80% 的功能都看掉了。如果你是個技術男現在只是想買一條手機數據線,你可能可以在小程式上搜索數據線,查看某條搜索結果的詳情,感覺不錯就買了。可是如果你要是個妹紙想買條裙子,小程式顯然不能滿足你反覆比較挑選的需求。

    微信小程式剛剛推出的時候,有人說微信除了小程式,很多 APP 都可以卸載掉了,還舉例說比如天氣 APP 和計算器 APP。可在我看來,這兩個 APP 都不可能被小程式取代。天氣 APP 最重要的就是天氣信息的主屏幕提醒,小程式做不到。計算器都是各個手機系統自帶的功能,小程式更沒有機會。就算手機系統不自帶計算器,用戶是希望在主屏幕上點一下打開,還是希望先打開微信,然後切換到發現選項卡,再進入小程式欄目,最後選擇計算器功能?

  3. “用完即走”

    微信小程式提出了一個概念叫“用完即走”。這個想法聽起來好像很人性化很替用戶著想,可事實上這個需求是非常“小眾”的需求,甚至可以說是偽需求。用戶只對一些低使用頻率,又非用不可的 APP 才有這種需求,比如旅游類 APP。首先旅游類 APP 的使用頻率低,用戶不太可能每個星期去旅游,另外你不用好像也確實不方便。再比如某些酒店的會員 APP,你在住酒店的時候用它可以帶來很多切實的方便和優惠。可大家在深入想想,我們出去旅游的時候,旅游類 APP 是只用一次還是在一小段時間內頻繁使用?顯然是後者,那我們為什麼不在這一小段時間內安裝一個旅游的 APP,過了這一段時間之後再刪掉?畢竟全功能的 APP 在各個方面來說都更好用。

我覺得,小程式其實從一開始就沒有打算去取代現有的原生 APP,它只是對現有 APP 生態的一個補充和完善,可以說是一個面向小眾細分市場的產品。同時,對張小龍和騰訊來說,微信小程式可能更是微信對生態圈建設的一次嘗試。


您的分享是我們最大的動力!

-Advertisement-
Play Games
更多相關文章
  • 無阻塞載入 把js放在head里,瀏覽器是怎麼去執行它的呢,是按順序載入還是並行載入呢?在舊的瀏覽器下,都是按照先後順序來載入的,這就保證了載入的js依賴不會發生問題。但是少部分新的瀏覽器已經開始允許並行載入js了,也就是說可以同時下載js文件,但是還是按先後順序執行文件的。 下載是非同步的沒問題,但 ...
  • 通常來說,javascript中的對象就是一個指向prototype的指針和一個自身的屬性列表。javascript創建對象時採用了寫時複製的理念。 只有構造器才具有prototype屬性,原型鏈繼承就是創建一個新的指針,指向構造器的prototype屬性。 prototype屬性之所以特別,是因為 ...
  • [1]效果演示 [2]點陣數字 [3]時鐘實現 [4]隨機拋物線 [5]粒子動畫 [6]公告欄擴展 ...
  • 一、題目  用JS代碼求出頁面上一個元素的最終的background color,不考慮IE瀏覽器,不考慮元素float情況。 二、題目解析   1.考察底層JavaScript基礎  前端開發,日常最常接觸的就是頁面樣式的編寫。而擺脫jQuery等工具庫,用原生js獲 ...
  • css3彈性盒子模型,box-flex,box-orient,box-direction,box-align與box-pack,box-lines,box-ordinal-group ...
  • 當使用js時我們可以使用timestamp = (new Date()).valueOf();直接獲取當前時區時間點的時間戳。註意:js中時間戳的單位是毫秒,而php中則是秒 ...
  • 轉換字元串 你可以轉換一個數字,布爾值,或一個字元串的對象: 將字元串分割成多個子字元串 為了區分一個字元串轉換為一個子字元串數組,你可以使用的split()方法: 1 var myString = "coming,apart,at,the,commas"; 2 var substringArray ...
  • HTML5的語義化標簽以及屬性,可以讓開發者非常方便地實現清晰的web頁面佈局。大多數瀏覽器基本相容html5,但目前來說ie6/ie7/ie8還不相容html5標簽,所以需要javascript處理,讓其進行相容 方法一:javascript code 如果是IE9以下的IE瀏覽器將創建HTML5 ...
一周排行
    -Advertisement-
    Play Games
  • 移動開發(一):使用.NET MAUI開發第一個安卓APP 對於工作多年的C#程式員來說,近來想嘗試開發一款安卓APP,考慮了很久最終選擇使用.NET MAUI這個微軟官方的框架來嘗試體驗開發安卓APP,畢竟是使用Visual Studio開發工具,使用起來也比較的順手,結合微軟官方的教程進行了安卓 ...
  • 前言 QuestPDF 是一個開源 .NET 庫,用於生成 PDF 文檔。使用了C# Fluent API方式可簡化開發、減少錯誤並提高工作效率。利用它可以輕鬆生成 PDF 報告、發票、導出文件等。 項目介紹 QuestPDF 是一個革命性的開源 .NET 庫,它徹底改變了我們生成 PDF 文檔的方 ...
  • 項目地址 項目後端地址: https://github.com/ZyPLJ/ZYTteeHole 項目前端頁面地址: ZyPLJ/TreeHoleVue (github.com) https://github.com/ZyPLJ/TreeHoleVue 目前項目測試訪問地址: http://tree ...
  • 話不多說,直接開乾 一.下載 1.官方鏈接下載: https://www.microsoft.com/zh-cn/sql-server/sql-server-downloads 2.在下載目錄中找到下麵這個小的安裝包 SQL2022-SSEI-Dev.exe,運行開始下載SQL server; 二. ...
  • 前言 隨著物聯網(IoT)技術的迅猛發展,MQTT(消息隊列遙測傳輸)協議憑藉其輕量級和高效性,已成為眾多物聯網應用的首選通信標準。 MQTTnet 作為一個高性能的 .NET 開源庫,為 .NET 平臺上的 MQTT 客戶端與伺服器開發提供了強大的支持。 本文將全面介紹 MQTTnet 的核心功能 ...
  • Serilog支持多種接收器用於日誌存儲,增強器用於添加屬性,LogContext管理動態屬性,支持多種輸出格式包括純文本、JSON及ExpressionTemplate。還提供了自定義格式化選項,適用於不同需求。 ...
  • 目錄簡介獲取 HTML 文檔解析 HTML 文檔測試參考文章 簡介 動態內容網站使用 JavaScript 腳本動態檢索和渲染數據,爬取信息時需要模擬瀏覽器行為,否則獲取到的源碼基本是空的。 本文使用的爬取步驟如下: 使用 Selenium 獲取渲染後的 HTML 文檔 使用 HtmlAgility ...
  • 1.前言 什麼是熱更新 游戲或者軟體更新時,無需重新下載客戶端進行安裝,而是在應用程式啟動的情況下,在內部進行資源或者代碼更新 Unity目前常用熱更新解決方案 HybridCLR,Xlua,ILRuntime等 Unity目前常用資源管理解決方案 AssetBundles,Addressable, ...
  • 本文章主要是在C# ASP.NET Core Web API框架實現向手機發送驗證碼簡訊功能。這裡我選擇是一個互億無線簡訊驗證碼平臺,其實像阿裡雲,騰訊雲上面也可以。 首先我們先去 互億無線 https://www.ihuyi.com/api/sms.html 去註冊一個賬號 註冊完成賬號後,它會送 ...
  • 通過以下方式可以高效,並保證數據同步的可靠性 1.API設計 使用RESTful設計,確保API端點明確,並使用適當的HTTP方法(如POST用於創建,PUT用於更新)。 設計清晰的請求和響應模型,以確保客戶端能夠理解預期格式。 2.數據驗證 在伺服器端進行嚴格的數據驗證,確保接收到的數據符合預期格 ...