hi,大家好,歡迎來到大熊實驗室。
最近公司開發的任務比較重,經過一段是間目前手上的項目完成得差不多了,這次公司的項目也是和小程序相關,之前在開發的時候遇到很多問題。這一次來給大家好好解釋一下,究竟什麼是小程序。
或許一談到小程序,大家第一想到的就是微信小程序。目前我們國内的技術發展到現在,但凡一個有點體量的APP都有了自己的小程序,不妨看看下面這張圖。
就目前來說,小程序有微信小程序、支付寶小程序、百度小程序、字節跳動小程序等等,後續可能還有更多。但是,我們目前接觸的最多,開發的最多的,其實還是微信小程序。微信小程序其實是小程序的鼻祖,借助微信的用戶群也是目前使用的最廣泛的小程序。
那麼,第一個問題:究竟什麼是小程序,它在技術上是一個什麼樣的存在?
我看到有很多的文章不痛不癢地提到了小程序,有些文章還煞有介事地把小程序吹得神乎其神,那麼究竟什麼是小程序?
小程序其實是相較于傳統的APP而存在的一個概念,我們現在的智能手機在使用APP的時候都是先去下載一個APP應用,然後安裝然後使用。對于業務非常複雜的應用來說,APP絕對是必須的,但是如果我們隻需要一些很簡單的功能,去開發APP其實投入是大于産出的,這個時候小程序的概念就出現了。它比APP的體積小,因此打開加載速度更快,同時又比傳統的HTML網頁多了能夠直接調用手機硬件的能力,這在我們個人或者企業的實際環境中是非常實用的,我記得之前我寫過一篇文章是說明小程序時如何控制手機藍牙的,感興趣的小夥伴可以自行搜索。
既然,小程序是介于APP和網頁之間的存在,那麼小程序也是需要下載安裝的,很多文章并沒有把小程序需要下載安裝說清楚。小程序時在什麼時候去下載安裝的呢?如果我們要使用某一個小程序,如果以前從來沒使用過,那麼 這個時候微信就會去網絡上下載到微信中,然後供你使用,如果我們以前使用過,那麼微信會直接調用本地的小程序供你使用,這一系列操作都是微信自行完成的,所以你并沒有感覺到小程序有下載安裝這個過程。
經過這麼多年的發展,很多公司将小程序開發的很大,我個人覺得這其實偏離了小程序的初衷。那麼小程序究竟有多大呢?小程序的大小其實和頁面的多少,邏輯的複雜程度成正相關,代碼寫得越多,小程序越大。但是你平時在使用的時候沒發現緩慢的情況,其實是小程序自身的優化機制——分包,也就是微信将很大的小程序切分成很多部分,使用到某一部分才去網絡上下載到微信中,因此沒感覺得很慢。小程序究竟安裝到了什麼位置呢?
小程序在Android手機上的存儲目錄為
/data/data/com.tencent.mm/MicroMsg/XXXXXXXXXXX/appbrand/pkg
以上你能看到的就是一個小程序安裝到你手機後的樣子,兩個包是一個小程序,加起來有10多MB了,一個是主包,一個是分包。好在現在手機都是4G網絡,下載起來很快,使用的時候也不會感受到有什麼緩慢。
這就回答了第一個問題,小程序是介于HTML頁面和傳統APP應用中間的一個存在,它不是什麼新奇的技術,也沒有什麼破天荒的創新。
第二個問題:如果要開發小程序,要用什麼語言?
任何網絡上的東西,都是程序員用代碼寫出來的。那麼,小程序是用什麼開發的呢?其實開發語言的簡單也是小程序現在很多人開發的原因,為什麼呢?因為小程序的開發語言是類HTML加上JS,你要知道這就是和現在前端程序員所用的技術是一模一樣的。所以前端程序員去開發小程序是沒有任何門檻的,加上程序員很多,小程序流行,又倒逼着小程序開發的人越來越多。具體小程序的代碼長什麼樣子?
如果是稍微有點前端基礎的小夥伴看到這些代碼,其實應該是很親切的,因為都是自己常用的。這就是為什麼開發小程序的都是前端程序員的原因。
還有一個問題:小程序怎麼才能讓用戶使用呢?
其實很多小夥伴都會想一個問題,我們的小程序是怎麼給用戶使用的。其實這一切微信都給我們做好了。當我們開發完成,将代碼上傳到微信
然後提交給微信審核的人員,他們審核過了以後提交發布,這樣普通的使用者就能通過二維碼或者直接搜索使用小程序了。
我想,到這裡小夥伴們應該大緻知道了究竟什麼是小程序了。具體的細節,我會在接下來一系列文章中詳細闡述,歡迎大家關注我,一起學習新奇好玩的知識。
,更多精彩资讯请关注tft每日頭條,我们将持续为您更新最新资讯!