Kotlin 能用来开发 React Native 吗?

0. 引子

前段时间出去休了半个月假,公众号文章史无前例的断了一周,不过不要紧,我这不是又回来了嘛。

0?wx_fmt=jpeg

摄于:清境农场

闲话少说,既然 Kotlin 可以编译为 Js,那么我们很容易就可以用它去做前端或者 Nodejs 开发。目前官方也已经给出了 React 的 Demo,惊得我只好给大婶儿们双击 666 啊。

1. 死于黎明前的黑暗

既然 React 都有 Demo 了,那么问题来了,居然到现在了,都还没有一个能跑起来的 React Native 的 Demo,不合理啊,甚至连官方的人都说:

0?wx_fmt=jpeg

扎心了老铁!你贴的可是去年 4 月份的对话,专业点儿行不?

好啊,那我给你们看看 Slack:

0?wx_fmt=jpeg

这段话翻译成中文那就是:哥啊,kotlin 搞 react-native 到底靠不靠谱啊,react-native 打包的时候看到 kotlin.js 直接就挂机了啊。

0?wx_fmt=jpeg

每次看到这个界面我都想说嗷个大头鬼啊。。

我随后翻了翻 React-Native 的 issue,发现:

0?wx_fmt=jpeg

我当时还觉得这哥们肯定打开方式不对啊,后来仔细瞅了瞅下面的问题描述,我觉得它可以跟前面 Slack 上的兄弟握个爪了,亲切地。

0?wx_fmt=jpeg

你没看错,这哥们的代码就只有引入 Kotlin 这么一行,然后 React-Native 的 打包工具就得累死累活的搞,10分钟后直接超时。。

你以为闹着玩呢?仔细一看 Kotlin.js 行数居然真的这么多!

0?wx_fmt=jpeg

我靠,以后我看谁还敢在他的网页里面引入这东西。。

0?wx_fmt=jpeg

说白了就是 KotlinJs 的标准库太大了,成了 React Native 的 bundle 工具无法逾越的一道鸿沟。。

2. 还记得当年 64K 旁边的 Proguard 么?

其实我也踩到了这个坑啊,在出去休假前曾花了两个晚上琢磨怎么编译这东西,无解。后来在外面浪的时候,坐在沙滩上看着海浪轻轻的拍,好美啊。。啊,然后它就拍在了我的大胖脸上,当时脑子里面就闪过 slap、smack。。。额,对,我怎么没去 slack 上面问问呢。

0?wx_fmt=jpeg

然后几分钟后就有大神回复:

0?wx_fmt=jpeg

他这一句犹如醍醐灌顶,我瞬间想到,完了,衣服都湿了没得换可咋办。。

开玩笑啦。这里顺便提一句,这个 Slack 真心不错,里面还能看到 Jake Wharton 最近也在踩一些 KotlinJs 的坑呢。

我们先来说说 DCE,这个东西的功能有点儿类似大家很熟悉的 Proguard 中去除没有引用到的代码的功能,就是传说中的 Shrink 啦。显然,Kotlinjs 标准库里面的那 37k 代码我们不可能完全用到,例如我就写了下面一点儿代码给 React Native 代码用:

 
 
  1. package com.bennyhuo.rnkt

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值