首页
学习
活动
专区
工具
TVP
发布
精选内容/技术社群/优惠产品,尽在小程序
立即前往

重新审视 Kotlin 反射,我觉得可以合理使用

我之前每次跟别人分享 Kotlin 反射的时候,都会让大家小心点儿它,因为它一方面体积大,另一方面性能也差,不仅如此,还有一些小毛病,这些内容在我很久之前的一篇文章详细讨论了:Kotlin 反射你敢用吗...,这样通常也是可以接受的。...需要注意的是,过去的版本应该在后续的执行中也不会很慢,只是去年的文章我没有太注意这部分数据。...,这对于 Android 应用来说也不是什么大问题,毕竟 Apk 的瘦身大头应该在资源上,也许你把设计出的某一个序列帧动画用代码实现了就可以省掉好几 MB。...小结 其实之前让我觉得不安的主要是性能问题,显然这样看来倒也还好。而一些未完善的部分也在最近的版本得到了完善,因此 Kotlin 反射库的使用评级由“谨慎使用”上调为“合理使用”。 ----

1.2K20

免费拿走我的代码可以,但请对使用我的时间付费

由此,本文提议,免费的代码大家可以共用,但应付费订阅,尊重开源项目维护者的劳动成果。以下是译文。 作为软件开发人员,我不得不承认开源代码改变了世界。...这些开源软件原本可以变得更好,遗憾的是一些因素阻止了它。精疲力尽且充满失望情绪的项目发起者是造成众多有价值的项目停滞不前的重要原因: “我不会再投入时间和精力到开源项目中。...我为开源工作付出了很多自己的业余时间,这些时间原本可以用来陪伴家人、享受生活或者写作,然而这样的付出并没有收到任何物质方面的回报。我今天在此声明,决定终止目前自己所从事的所有开源工作。”...例如,红帽公司需要更多企业使用 Linux 方便其销售 Linux 企业版,Oracle 使用 MySQL的目的也是为了推广企业版,Google 希望世界上所有人都使用它的手机和浏览器,而微软正试图将开发人员吸引到一个平台上然后推送其...当我谈到 “开源 ”时,我的意思是只要代码被许可,就可以用来构建专有的东西。这通常意味着许可证( MIT 、Apache 或者 BSD),但并不总是。

1.1K80
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Effective C++条款3 我可以不使用const?

    前言 const是C++中用得非常频繁的一个关键字,但是如果你不使用这个关键字,对程序的运行结果影响不大,那么,我可以不使用const吗?...但是为了安全,推荐使用const,这是一个良好的习惯,坚持下去的结果是你的代码将变得更加健壮,当然你也可以不使用const,只不过当代码量到一定程度后,你的代码将会变得比较脆弱,而且随着量级的一步步升高...,一般来说,non-const版本可以调用const版本的实现,避免重复。...采用const引用,既可以避免多余的函数调用,也能保证数据不被修改。 如果不使用const直接传递引用,调用者会认为这个对象是可以被更改的。...但是如果你使用了mutable关键字,那么情况就不一样了,因为这个关键字使得你可以在const函数中修改mutable类型的值。

    58730

    使用 ChatGPT 可以直接写 WordPress 插件,我要失业了

    使用 ChatGPT 写 WordPress 插件 既然那么火,我也去试一下,不玩虚的,直接让它帮我写个 WordPress 插件。...我给它的需求是:创建一个自定义 WordPress 插件,在 WordPress 后台创建一个页面,这个页面罗列出所有没有关联文章的媒体文件。...插件目录,进入后台插件界面,看到 ChatGPT 刚刚写的插件: 直接激活,在媒体菜单下出现对应的子菜单: 点击进去: 真的可以,牛逼牛逼,看来我真的要失业了,以后没人找我做外包了。.../cn 使用邮箱进行注册登陆 第2步:充值1美元 充值1美金就足够,大概65卢布,实际只需要10卢布左右。...最后就可以使用 ChatGPT 帮你写 WordPress 插件了

    99630

    E006Web学习笔记-JavaScript(四):DOM

    一、概述 1、简介 Document Object Model文档对象模型; 将标记语言文档的各个部分,封装为对象,可以使用这些对象,对标记语言文档进行CRUD(增删改查)的动态操作; 2、标准 W3C...XML文档的标准模型; HTML DOM——针对HTML文档的标准模型; 我们需要学习的内容 = 核心DOM + HTML DOM; 二、Document文档对象 1、创建/获取 在html dom中,可以使用...= document.getElementById("btn2"); btn2.onclick = function(){ a.removeAttribute("href"); } <...0]; var btn1 = document.getElementById("btn1"); btn1.onclick = function(){ //创建子节点 var div3...("btn").onclick = function(){ var num = document.getElementById("num").value; var name = document.getElementById

    5710

    JavaWeb——JavaScript精讲之DOM、BOM对象与案例实战(动态添加删除表格)

    nezha2 = document.getElementById("nezha2"); nezha2.onclick = fun; </html...                       open(),打开新的浏览器窗口,返回一个新的window对象                        close(),关闭浏览器窗口,谁调用我我关闭谁...特点:1、不需要创建对象,可以直接使用,window.方法名(); 2、window引用可以省略,方法名(); 【举例】:轮播图的实现,实现思路: 页面上使用img标签展示图片; 定义一个方法,修改图片对象的...4、DOM对象 DOM,Document Object Model,文档对象模型,就是将标记语言文档的各个组成部分封装为对象,可以使用这些对象对标记语言文档进行CRUD操作。 ?...        Node:节点对象,其他5个的父对象; XML DOM:针对XML文档的标准模型; HTML DOM:针对HTML文档的标准模型; 1)Document对象 创建:在html dom模型中,可以使用

    2.2K40

    编辑技能:使用 Markdown 标记语言仅仅靠键盘也能完成排版,鼠标兄弟可以一边歇着了

    Word 或 WPS 文字设置文字作为标题1、标题2、标题3等样式,一般是这样操作:如果用 Markdown 来做同样的排版则是这样的:可以看出,在 WPS 是借助强大的富文本编辑器,结合鼠标的拖拽,...是的,这就是 Markdown 标记语言,用「# ` -」这些字符结合空格、回车来完成大部分的排版。我再举多几个例子,就能更加明白了。...我在左边已经预置好文字,只要加上这些标记符,右边就能实时看到效果。全程只是用键盘,在已有文字附近输入一些简单的符号,就能完成样式的输出。...当然,Markdown 虽然创始人规范了一些使用符号,但是在实际的应用当中,许多平台或者开发者也会自定义一些符号,产生更多的效果,这个要仔细看每个平台的帮助说明。...比如:MarkText,还有火到不行的:Obsidian,后面有机会我再起篇章写这些客户端的应用。

    12810

    【Golang语言社区】H5游戏开发--JavaScript学习:21点游戏

    一、游戏规则 21点游戏的规则有很多种,我在写这个21点游戏的时候,选取了一种规则,描述如下: 1、游戏共有两名玩家,玩家1(庄家)和玩家2,在我编写的这个21点中,玩家1是电脑,玩家2是你,电脑坐庄。...1、resource目录下,存储了游戏需要使用的图片。...2、bgm.ogg是游戏的背景音乐(我把QQ斗地主的背景音乐放进来了╮(╯▽╰)╭) 3、black_jack.html是一个网页,使用浏览器打开它就可以开始进行游戏了 4、black_jack.js存储了...="hit();" /> 我不要了 (STAND)" onclick="stand();" /> 可以从这个链接下载到:http://pan.baidu.com/s/1c1v2MQk 五、几点感受 1、我在IE8(版本8.0.7601.17514)、Chrome(版本46.0.2490.80

    1.7K60
    领券