专栏名称: 码农翻身
工作15年的前IBM架构师分享好玩有趣的编程知识和职场的经验教训, 不容错过。
目录
相关文章推荐
程序员的那些事  ·  曾经对程序员最好的公司,撤退了 ·  4 天前  
程序员小灰  ·  这个大神级开源社区,你了解吗? ·  2 天前  
OSC开源社区  ·  MoonBit编程挑战赛启动,国内编程语言技 ... ·  4 天前  
OSC开源社区  ·  高通拟收购英特尔——Arm与x86之争到此为止? ·  1 周前  
51好读  ›  专栏  ›  码农翻身

一年半了,程序员如果还没有用过这个工具,要小心了......

码农翻身  · 公众号  · 程序员  · 2024-09-27 09:59

正文

我之前多次说过,编程可能是受这一波生成式人工智能浪潮影响最大的。


原因有两点,首先编程语言不像自然语言那么“模糊”,编程用的编程语言是高度形式化的,每一门编程语言都可以用一套BNF来精确地描述,程序员写的代码,只要不符合这套描述,编译或者运行时一定会被发现。所以AI来生成代码确实很合适。


其次,市面上很多软件都是开源的,免费的,并且大都集中存储在一个地方,用来训练人工智能再合适不过了。


去年3月AI火了以后,我们发现AI其实没法写一个前后连贯,包括各色人物,不断制造悬念,不断翻转的小说。但是一旦进入编程领域,只要给它清晰的、明确的模块级需求,AI是很强的


很多程序员都反映,AI对效率的提升是巨大的,一年半过去了,如果你还没有利用这个工具,可能要反思一下了。


比如之前我介绍过的秘塔AI搜索(https://metaso.cn/), 它针对编程类问题,表现就非常优秀。




01
写代码


我给他提了一个工作中常见的问题:“编写一个函数来检查一段文本中的括号是否正确匹配”。



可以看出,秘塔AI搜索不但给出了全网的搜索结果,告诉我们说要用“栈”这个数据结构,还写出了代码,解释了代码,给出了测试用例。


更牛的是,它这里有个“运行”的按钮



可以直接把测试用例和代码给运行了!



这个功能太好了,不用再把生成的代码复制到IDE中去运行了,极大地节省了时间。


再来一个需求:“写一个Python函数,给定一个年份,返回这一年所有星期天的日期”:



依然可以直接运行,丝滑无比,可见只要你把小块儿的需求描述清楚,秘塔AI搜索绝对能成为你日常开发中的好帮手。



02
找Bug


没有程序员能一下子写出完美无缺的程序,时不时就会出现一些小错误、异常啥的。有时候,一个小小的问题就能把程序员卡住半天。


秘塔AI搜索不仅仅可以写代码,更可以帮助程序员来调试程序,分析异常。


比如,学Java的很可能会写出这样的代码:

List list = new ArrayList<>();list.add("A");list.add("B");list.add("C");list.add("D");for (String item : list) {    System.out.println(item);    if(item.equals("B")){        list.remove(item);        }}

这样的代码在运行时就会抛出这样的异常:

Exception in thread "main" java.util.ConcurrentModificationException        at java.base/java.util.ArrayList$Itr.checkForComodification(ArrayList.java:1043)        at java.base/java.util.ArrayList$Itr.next(ArrayList.java:997)        at Main.main(Main.java:10)


新手一看就犯晕了:代码很正常啊,没毛病啊,为什么有这么一个古怪的异常?


把代码和异常一并抛给秘塔AI搜索,它立刻就给出了出错的原因:



这段代码抛出ConcurrentModificationException异常,是因为在迭代过程中修改了集合。解决方法是使用迭代器的remove方法或者在单线程环境中使用Java 8引入的removeIf方法。


代码也给你修改好了,Java代码也可以直接运行,结果也是正确的,这效率真是杠杠的!



03
学编程


秘塔AI搜索对于小白学习编程来说,也是一件很好的武器,在学习中无论遇到任何问题,都可以“扔”给它。


比如我在学习Python日期相关的东西,想把一个用字符串表达的日期加上几天,返回新的日期,这该怎么办呢?


秘塔AI搜索告诉我,可以使用datetime把字符串日期变成对象,然后用timedelta表示要添加的天数,两者相加就搞定了。


然后给出了一个案例,2023-01-01加上5天,点击“运行”按钮,返回2023-01-06,一目了然。




04
总结


秘塔AI搜索这次对编程类领域做了重大升级,它不仅仅可以给你找到资料,更是能帮助你写出代码,直接运行。开发中遇到任何Bug错误,把错误信息发给它,它就可以帮助你迅速地定位问题。此外它还是你学习编程的好助手,有任何问题都可以帮你搜索解答。


不止是程序员,任何人群使用秘塔AI搜索,都可以让工作和学习的效率极大提升,完全免费,真的很良心!强烈建议大家都来试一试:https://metaso.cn/