编程自动化工具无法完成哪些任务?

时间:2010-12-17 22:34:07

标签: sharepoint development-environment dotnetnuke infopath

我刚刚在InfoPath上完成了一个课程,老师对程序员的未来有一个严峻的看法。我一直很难相信有人会编写一个工具,允许非技术人员完成程序员的工作,但似乎在这方面有一些进展,如SharePoint,InfoPath和DotNetNuke。 / p>

当我告诉老师我对程序员可以被替换持怀疑态度时,他要求我提出一些无法通过其中一种工具完成的事情。我很难在现场拿出一些东西(特别是因为我对这些工具的经验很少,因此没有经历过它们的缺点)。这些工具永远无法做到的一些事情是什么?

7 个答案:

答案 0 :(得分:2)

工具永远不会成为工具。

答案 1 :(得分:2)

这些工具允许您在“更高级别”进行编程,因此易于理解。这几乎总是意味着它同时限制了你。总会有这些工具不适合的东西 - 你会使用这样的工具来创建SQL Server吗?不要这么认为。

答案 2 :(得分:1)

编写程序自动化工具。或任何非平凡的算法开发。或编译器或新的编程语言

有各种各样的样板可以更换,但任何不是样板的都不可能。一个程序可以提出Dijkstra的算法,还是一个heapsort?

现在,糟糕程序员可能会陷入困境。我认为这不是一件坏事。

答案 3 :(得分:1)

编写程序的程序已经从编程的一年开始 - 这是显而易见的事情。其中一些人做的工作相当不错(但通常不是很好)。但是程序员所做的大多数事情实际上并不是编程。它是:

  • 分析
  • 设计
  • 政治
  • 文档

等等。

程序在做这些事情时非常谨慎。所以,你的工作可能是安全的。

答案 4 :(得分:0)

首先编写工具?或运行它的操作系统?或BIOS或许多其他设备中的固件?有很多领域需要程序员。我不相信计算机能够精确地解释要求;这需要有意识的智慧。除非你称那些“要求翻译”程序员,否则有意识的智能也不能以足够的精度编写要求。

简而言之,你的老师不是很聪明。

答案 5 :(得分:0)

完全同意Ziplin。

与iPhone OS或新的Android App构建器相同。他们创建了一个沙箱,您可以在沙箱中更轻松地完成基本操作。但所有使其顺利运行的东西都是由真正的程序员完成的。错误检查,构建块的低级编程......

最重要的是,有智能的人应该制作产品,以便界面直观且不会出错。那个“聪明的人”是程序员。

答案 6 :(得分:0)

编程是将自然语言,要求和“常识”转换为机器可以理解的完整且正确的算法。任何人都可以编写逐步的指令列表;程序员可以比任何人做得更好。

特定类型的编程可能会过时。程序员的角色随着时间的推移而变化:

  • 随着高级语言的接管,机器指令编程变得越来越不常见
  • 如果计算机内存丰富,知道如何在内存中重写自己的指令集的程序则不太重要
  • 像Sharepoint这样的框架,库和工具可以完成一些编程的“繁琐工作”,让程序员花更多的时间在业务逻辑和为用户增加价值的功能上

今天使用这些高级语言,内存丰富的PC,框架和库的人仍然是程序员。这些进步降低了编程领域的进入门槛。程序员分享一种独特精确,文字化的思维方式,让他们将“软”需求转化为“硬”机器逻辑。普通用户也许可以使用编程功能;但是,他们往往缺乏这种心态,他们创建的软件也会受到影响。

编程是“一切”的学科。编程的问题空间与人们想要在世界上做的不同事物的数量一样广泛。

当我们发明了一种可以从用户那里收集“软”要求的机器时,将它们与常识结合起来,并将它们转化为一个记录良好,人性化的工具,我们拥有的是真正的AI,而不仅仅是编程工具。在我们的计算机比我们的计算机更智能之前,我们将继续为程序员提供世界上的地方。