网页封皮记

近来坊间多闻"套壳"之说,有好事者将三五个网页裹了件新衣,便堂而皇之唤作APP.这般行径,倒教我想起绍兴城里的老裁缝——纵是粗布麻袋经他巧手,也能裁出马褂的模样.

"这哪里是创新?分明是新瓶装旧酒!"某夜与友人吃酒,那留学东洋的周作人拍案道,"你道那些个PWA,Electron之流,不过是在油灯外罩层玻璃罩子!"

街角的茶馆最是热闹.跑堂的手里托着三五部手机,尽是些套着原生壳子的网页应用.滑将起来卡顿似老牛破车,点将下去延迟如隔夜冷饭.有客官抱怨:"这劳什子怎的比纸糊灯笼还不禁使?"掌柜却捻须笑道:"客官不知现下流行'敏捷开发',须得月余便能上市圈钱."

且看那套壳之法门:

  • WebView做轿:借系统浏览器抬轿而行
  • Cordova为辕:拿JavaScript驱赶原生马匹
  • React Native充鞭:挥着虚拟DOM的鞭子虚张声势

这般造出来的车驾,初时倒也光鲜.待行至沟壑处方见端倪——动画如老妪绣花般迟滞,功能似断线纸鸢难操控.更有甚者耗电如漏水木桶,发热似三伏灶台.

忆昔年JavaME横空出世时,"一次编写处处运行"的口号何等响亮.而今看来不过是空中楼阁:

量体裁衣维护成本补丁摞补丁锦衣华服
网页套壳原生应用
性能驴车代步八骏疾驰
体验隔靴搔痒

"这便是懒人的智慧!"前日遇见刘半农在琉璃厂淘旧书,"你看那Hybrid框架就像给长衫打补丁——补丁打得巧了,倒成时新花样."说罢摇头苦笑.

"吃人"的API们说不得?

安卓与iOS两座大山间的沟堑愈发深邃:

Camera.takePhoto() {
  if (platform == 'ios') {...}
  else if (platform == 'android') {...}
  else throw new Error('此路不通')
}

"这等代码好比缠足布——看着光鲜裹着痛楚."钱玄同某次在北大讲学时愤然道,"开发者成了裱糊匠人!"然则资本逐利的本性难移:初创公司为省银钱甘愿折腰;大厂为快速试水宁选捷径.

"救救孩子..."的后话该怎么说?

浮世绘风格的App开发图

"明日之应用当如春风化雨."前些日子胡适在协和医院养病时说,"Flutter这类跨平台新秀倒是带来曙光..."话未说完便被护士打断:"先生该吃药了——这药瓶倒像渐进式Web应用(PWA),看着像模像样却终究不是原配."众人皆笑.

后记:写作此文时手机忽弹出更新提示——某知名购物APP更新包竟达200MB之巨!细查方知内嵌十余个WebView内核...

*本文所涉技术名词均属真实存在
*文中人物言论纯属艺术创作
*若觉此文眼熟定是曼德拉效应

声明:本站所有文章资源内容,如无特殊说明或标注,均为采集网络资源。如若本站内容侵犯了原著者的合法权益,可联系本站删除。