實戰(zhàn):如何讓你的APP更加輕巧_第1頁
實戰(zhàn):如何讓你的APP更加輕巧_第2頁
實戰(zhàn):如何讓你的APP更加輕巧_第3頁
全文預覽已結束

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權,請進行舉報或認領

文檔簡介

實戰(zhàn):如何讓你的APP更加輕巧

下面為大家簡單解釋一下為什么有些手機APP或者應用程序總是那么占用空間:1.歷史原因為了兼容老版本或者一些舊有的用戶習慣,可能會有一些舊的特性包含在里面,但是有的時候可能項目開發(fā)周期短,程序員哥哥是不會去動舊有的東西的,因為一旦牽涉到修改代碼,成本是很高的。隨便去掉一個功能點,需要考慮整個業(yè)務流程邏輯是否通順完整,改完以后還需要QA再進行回歸測試,這個過程就好像是從一整棟建好的大廈里面抽掉一些磚塊,一不小心就有瞬間崩塌的危險。2.為了適應不同的用戶群體比如像office光安裝包就1G多,安裝完成之后發(fā)現(xiàn)各種組件都已經(jīng)給你裝過了,包括什么ppt啊,visio啊各種亂七八糟的組件,excel里面甚至還包含了vbscript這類開發(fā)者用到的組件;正常人類只希望用一個文檔或者excel的功能,office就會給你安裝了這么一大堆東西。3.追求炫酷、高大上有些app為了追求狂拽酷炫屌炸天的界面效果會使用一些精度比較高的資源(圖片、音頻、視頻),讓你看起來好像覺得很牛X的樣子,但是這些資源圖片占用了整個app容量的大頭。其實程序的二進制文件在編譯出來之后,把符號文件去掉以后執(zhí)行文件本身就是非常小的,多則幾M,少則幾百K4.第三方庫有些開發(fā)者為了圖省事,會直接使用一些開源框架,比如做游戲需要用cocos2d,unity3d等,應用程序可能會用到reactjs等,這樣子的好處是直接一套代碼跨平臺,節(jié)省了開發(fā)時間,提升了開發(fā)效率,但是這些第三方庫本身是非常大的,因為第三方庫它不知道你要用哪些功能,干脆把所有的東西一股腦都給你。5.用戶數(shù)據(jù)當用戶使用這些手機APP(應用程序)的時候會產(chǎn)生很多使用痕跡的,有些手機APP(應用程序)就索性直接用完之后扔在某個地方不管了,比如說產(chǎn)生一些日志文件或者一些臨時性的配置文件或者是一些數(shù)據(jù)記錄,就跟隨地扔垃圾的人一樣討厭,毫無節(jié)操可言??赐晟鲜龇N種,作為一個PM/RD肯定會有各種理由:我項目周期緊張啊、我的程序員哥哥不甩我啊、占用空間大小的事情只要不影響功能就行了啊、、、等,但是。。。這些都不能成為合理非法大量占用用戶使用空間的理由,如何讓自己的APP更加輕快,更加好用,這才是我們的終極目標。產(chǎn)品功能再牛X,細節(jié)不到位都是白搭;下面給出我自己針對上述問題的一些建議:1.解耦你的程序:現(xiàn)在大家都是用的面向對象語言,如果你的程序的類不能拆分成一個最簡單的功能,或者類依賴過多的類,肯定是很有問題的,需要程序員哥哥在寫代碼之前就要考慮清楚該如何做擴展,如何寫基礎模塊,如何寫業(yè)務模塊,哪些功能做成一個單獨的模塊,模塊里面每個類負責最小化什么樣的解耦功能;最好把工具類拆分出來,工具類有可能又分為業(yè)務型工具類和通用型工具類,說不定可以用到以后的項目中。類似Chrome的插件模型永遠是客戶端程序最經(jīng)典的架構。推薦沒事多看看《設計模式》,盡管你可能覺得過時了,不管時代怎么變化,有些基礎的思想永遠不會變。2.動態(tài)的加載所需要的庫:如果做到了上一點,第二點就很好解決了,因為所有的模塊都是熱插拔模式的,可以根據(jù)用戶的需要把一些不需要的功能模塊刪掉,保持占用空間最小化。3.盡量多用繪制庫:現(xiàn)在的繪制庫都是很牛X的了,各種算法都給你寫好了,而且優(yōu)化的非常好,只要運用得好,就不要去用一些圖片去解決問題,經(jīng)常用圖片解決問題的程序員是很懶的,懶得去了解繪制庫的用法,只要稍微多了解一下你的繪制庫,基本上秒殺各種特效了。4.削減第三方庫:很多第三方庫都包含了很多用不到的功能,把這些功能都去掉吧,這些東西哪天要用到再加上也是可以的,如果你不會削減證明你根本不了解你的生產(chǎn)環(huán)境,這樣子是很可怕的;趕緊動起來,去了解你的底層。5.盡量把一些重要的用戶數(shù)據(jù)自動上傳到云端:比如一些最近的聊天記錄,聊天記錄中一些圖片文件等最好也要存成ID號上傳到業(yè)務服務器,圖片另外用圖床存都是可以的。還有一些用戶的使用偏好配置等信息也要保存到云端,本地可以留少許的數(shù)據(jù);我有一個朋友前兩天發(fā)朋友圈說自己某信所有聊天信息都沒有了,不知道是咋回事,結果各種倒騰了一天終于搞好,但是損失的時間成本和溝通成本是無法估量的,由此可見像這種極端異常情況如果處理好了,帶來的價值遠遠是高于做這些優(yōu)化所付出

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經(jīng)權益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲空間,僅對用戶上傳內(nèi)容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對任何下載內(nèi)容負責。
  • 6. 下載文件中如有侵權或不適當內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論