经常有人问我,ChatGPT出来这么久了,你怎样不写点教程(割点韭菜)呢?其实,从它一出来,我就重视了,也在平常的工作中进行了运用,正好最近在处理一个埋点的问题,就拿ChatGPT来进行下演示吧,看我怎样用ChatGPT来摸鱼,处理咱们平常遇到的问题。

问题是这样的,信任许多朋友也遇到过,那便是RecyclerView的Item曝光埋点问题。最开端对埋点数据要求不高的时分,埋点代码,都是直接写在onBindViewHolder�里的,这是最简略的方法,可是问题在于RecyclerView的预加载会创建一些页面不行见的缓存Item,这就导致了曝光数据不准,所以,当产品突然要求愈加精准的曝光埋点时,这种方法就显得不知所措了。

这个问题的处理,国际上大致有两种计划。

一种是基于Adapter,在滚动停止时,核算当时firstVisible和lastVisible,并与前次的记载进行比照,然后核算出曝光的Item,这种方法也是简略有用,可是弊端在于核算粒度比较粗,如果以后产品要按照「Item展现大于x%才算曝光」,这样就无法完成了。

那么另一种计划,便是核算当时View的现已制作的Rect和原始Rect的比照,然后能够揣度当时View的曝光状况,类似airbnb的epoxy,便是这种计划github.com/airbnb/epox…,这种方法的定制程度就比较高了,可是略微杂乱一点,需求处理好监听的管理,不然会有一些性能压力。

ok,现在压力给到ChatGPT,让咱们来看看它是如何处理这个问题的,下面的这些截图,便是我和ChatGPT的完好对话过程,首要,咱们把问题抛给ChatGPT,当然,最开端咱们需求给它一个比较广泛的问题,然后再一步步引导它将答案具化。

当我用ChatGPT摸了一上午鱼,结果......
看来ChatGPT仍是信手拈来。接下来将问题具化到咱们的RecyclerView。
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
由所以运用Kotlin,所以我的思路是尽量不改本来的代码,所以,拓展函数来一个?
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
这时分现已有点意思了。
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
ChatGPT果然是老实人,我说锁屏你就真的只管锁屏?
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
有点扯了,算了,先完成计划,后面再处理。
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
这个我还真没想到,之前对这种计划了解不对,还真是小刀划腚子。
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
不得不说,ChatGPT仍是很听劝的,也很有礼貌,关于我的指责,能够好好反省。
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
但当我把它的代码copy到项目里面去运行,才发现了一堆新的问题。
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
不得不说,你发明API的能力是一流的。
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
态度挺好,可是,这错的是不是有点多啊,能不能一次改完?
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
总算改完了,咱们现在在试试改变需求,看它能不能了解。
当我用ChatGPT摸了一上午鱼,结果......
不错,再加点难度。
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
这时分,ChatGPT就突然变蠢了,改了好几次都不能完成这个需求。
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
越改bug越多。
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
当我用ChatGPT摸了一上午鱼,结果......
到这个时分,我现已失去耐心了,这个bug来来回回改了这么多次,依然有问题,也许是跟我对话时刻太长,变蠢了?

总而言之,我花了一个上午的时刻想使用ChatGPT来摸鱼,但最终发现居然比我自己做还累??我不只要检查它的思路是否正确,还得给它解bug?

其实这个问题并不杂乱,咱们在问它之前,现已有一些思路了,可是终究ChatGPT并没有生成完好能契合需求的代码,不过这也不能全怪ChatGPT,它毕竟仅仅一个出道两年的练习生而已。

尽管忙了一上午没摸成鱼,可是咱们也进一步了解了ChatGPT,不行否认,它确实有用,但还不足以能要挟到我的饭碗。那么咱们能使用ChatGPT摸什么鱼吗,当然是能够的。

首要,你能够一定程度上代替搜索引擎,尽管有些问题它有些瞎扯淡,可是比起百度来说,我觉得仍是更胜一筹的,许多简略的问题,根本就能够放弃百度了,直接ChatGPT就好了。

其次,你能够借助ChatGPT来给你供给思路,尽管它的代码不一定能彻底满意你的需求,但它的思路,根本仍是契合国际惯例的,有时分甚至还能给你一些惊喜。

最终,ChatGPT是需求调教的,别指望一会儿就能给你很完善的答复,你需求一步步引导它,但关于像我这个level的程序员来说,这就好像在面试一个出道两年的练习生,有点惊喜,但不多,更多的是无奈,答复不到点子上。

当我用ChatGPT摸了一上午鱼,成果……我浪费了一上午!!!

欢迎我们重视我的公众号——【群英传】,专注于「Android」「Flutter」「Kotlin」 我的语雀知识库——www.yuque.com/xuyisheng