有朝一日程序员会被人工智能取代吗?
针对这个话题,个人的观点是目前看不到这个可能性。也就是说人工智能机器人无法替代程序员。
虽然人工智能机器人可以有很多作为,可以帮助程序员写一些code, 但是他永远无法替代程序员。
那么人工智能可以帮助程序员做哪些事情呢?
我们下面通过一些例子来说明这些事情。
第一,创建工程时生成模板代码。
创建工程时生成模板代码的例子非常多,比如说你熟悉编程集成环境的话,当你选择创建一个类别的工程的时候,就会生成一些模板代码。
这种模板性的代码就是由机器生成的预置性代码。这些代码会提供整个工程的一些框架,一些入口类,一些入口函数,但是具体要做什么还是需要程序员来完成。
这种模板类的代码,相对来说比较简单。会有一些TODO的标记来提示。
接下来的代码实现部分。除了程序员以外,程序是无法自动进行的。
第二,使用命令行,来生成一些类或者组件。这些命令行也是由程序员来输入,这个过程是程序员来发动的。生成的类或者组件也是一些框架性的,指导性的代码。
这个过程无法由机器,或者人工智能来替代。程序员才知道接下来要做什么,要用哪些命令,要生成的类的名字是什么,要生成的组件的名字是什么,然后是准备用这些类和组件将来会用来做什么。
第三,使用配置文件来生成代码。如果你对SWAGGER比较熟悉的话,而且用过配置文件比如说YAML或者JSON生成微服务代码。你应该对这个过程比较熟悉。通过配置这些文件指定生成方法的名字,参数名字,参数类型,返回的数据类型。
通过生成的配置文件,你可以生成多种程序语言的代码。
这些生成的代码,对于运行一个微服务来说,框架代码部分已经足够了。也就是说你运行由这些代码构成的微服务,你就可以调用那些API的接口了。
只是此时这些接口并不能为你做什么,只会给你返回类似接口未实现的错误代码。接下来的活儿就是程序员的任务了。程序员需要找到对应的接口,然后把实现代码写完。
这样子你在调用对应的接口的时候,你就可以做实际的事情了。
我们可以看到在这个过程中,智能程序为我们做了很多事情。但是程序员必须要自己实现接口内的代码。这一部分智能程序是无法替我们完成的。
第四,以后智能程序可能会为程序员做得更多。比如会进一步的生成更多的代码来帮助程序员工作。但是他始终无法生成所有的代码。无论代码如何高级,最终还是要靠我们人类的程序员去分析,学习研究它并进一步的实现真正的功能需求。
作为一名程序员,我欢迎智能程序编程类的工具快速发展。这样的话可以让我们程序员从繁重的代码编写过程中节省很多时间, 把大量的时间花在用户需求分析上和程序结构设计上。
好啦,这个话题先聊这些吧。欢迎留言点赞关注,我们下个话题再见。
领取专属 10元无门槛券
私享最新 技术干货