未来的编程可能是什么。新面貌

图片
人们总是对未来感兴趣。我是一个人,还是一个程序员,并且对编程的未来很感兴趣。在哈布雷(Habré)/极客时间(Geektimes)上已经见过类似的文章,并且在网络中也有可能在这个问题上借鉴很多。今天,我列出了未来10-20-50年内编程方面的可能创新。在帖子中,您将对当前编程语言出现的原因和必要性进行比较分析,并描述出现新语言和工具的可能原因。这里的关键词是必要性,因为原因本身就引起了必要性。


语言出现的历史背景


首先,我想列出当前编程语言的出现和普及的前提条件,最一般的列表:
原因/必要性
组装工第一台计算机的出现,需要对机器代码进行人性化
C计算机及其体系结构种类的增加。需要通用汇编程序。
C ++开发用户界面。对C程序代码进行人性化和结构化的需求。
爪哇Sun的衰落,网络的发展。需要交互式的用户浏览器交互。
C #Java的普及,当前用于Microsoft和Web平台的软件开发问题。微软需要拥有自己的技术堆栈。
Java脚本- Netscape - . - .
Objective-CApple- . Apple .
PHP/Ruby/Whatever. -.
Your Language???




下面没有对所给出的概念进行深入的科学分析。但是,如上表所示,描述了出​​现新语言或工具的原因。

量子计算机
首先想到的是量子计算机在半导体计算机时代的变化。容量将相差一个数量级,量子技术将允许解决的任务也将改变程序员的想象力极限。量子计算机的第一种语言已经被创建,可以肯定地说,随着技术的发展,将出现新的语言,最有可能基于当前的语言。

人工智能
日常使用AI的增长将影响并且已经在影响开发人员的工具和PL的结构。让我们在电话上使用语音助手。或例如与人工智能聊天。或者,如果AI发展到可以编写程序的水平呢?在后一种情况下,似乎会出现一种特殊的语言,使AI可以根据需求轻松开发程序。

新设备
iPhone的发布标志着Objective-C的普及。 X公司非常流行的设备很可能已经被开发出来,这将标志着Y语言的流行,也许是Tesla。

全球灾难
上帝禁止,可能发生全球性的大灾难或战争,这将从根本上改变人与机器之间交互的方式。可以假设,互联网(如果有的话)也将回到其根源,并且不再是无处不在的。在发生全球战争的情况下,将有必要使汽车军事化。首先,它不会像计算和可靠性那样易于使用。从我们可以假设的角度来看,类似OOP的语言将逐渐淡出背景,这为R,Fortran等计算语言提供了坚实的基础。也许它将是共生的,就像某种R ++或Fortran ++。

物理学发现
科学并没有停滞不前,研究正在各个领域进行,其中任何一个都可以成为人们的主导。如果人们可以操纵时空会发生什么?如果我们打开第五维会怎样?时光机器?显而易见,需要在适应大量数据的新内容上编写用于空间移动的软件。说到巨大,我想象着星系和宇宙的体积,这只是在想象中。这种语言会是什么?显然面向并行计算,网络基础结构,数据处理和可视化。

与设备互动的新方法
语音控制,手势控制,基于手势的输入设备,计算机对思想的控制。它已经是,它仍然是技术变得流行。



工具类


工具是程序员的单独一类需求。没有它们,进步是无法想象的,就像语言不能没有工具一样。

可视化编程
不久之前;创建可视化编程工具的尝试不计在内而且,经常(如果不是总是这样),这些工具会因无法以可视形式显示解决问题所需的零件数量而失败。作者本人试图创建类似的工具,他为此从同事那里得到了无知的情报。大多数人比较了视觉创建一个程序需要多少时间,以及他们现在花费了多少。第二种方法一直赢了。但是我仍然坚信,以视觉形式打包经常遇到的解决方案,并组织了这些解决方案的集中存储库,您可以避免需要不断返回细节,阅读代码的麻烦。

接口生成器已经存在
很长时间了,但是为什么它们缺乏灵活性?而每个新的表单或布局,您仍然需要手动完成,写下每个属性和标签?以LightSwitch为例。一个很棒的工具,但是适合非常狭窄的任务。从数据生成的接口总是样板。以某种方式对其进行自定义非常困难,这减少了它在输入表单和CRUD数据时的使用。作者一直梦想着这样的解决方案:
  • 基于数据的表单生成(WinForms,WPF,Swing,WinAPI)
  • 基于PSD的本机接口生成

它已经存在吗?还是我看起来不好?

触摸编程(语音,手势,触摸)
想象一下,未来的程序员会积极挥舞双手,并
用新语言大声说“咒语” 。坦白说,作为程序员,我为
编写代码时无法表现出情感感到非常angle恼。每天,我默默地敲打拍子,成为基于
思考和计算的无情机器人。经过这样的编码会议进入现实世界后,我
在与人交流和表达情感方面遇到了真正的困难。伙计们,是时候让我们更具表现力了!

生成器程序
工厂软件开发软件生成器是的,所有这些都是,但是没有被广泛使用。为什么?我们可以在创建开发工具的旗舰店的花园里扔石头,但是可以说,游戏不值钱,而是劳力的结果。但是,如果没有现成的解决方案存储库和基于该存储库的程序生成器,我看不到对未来进行编程。



预测


最后,我想对未来做一个预测:

  • 适应和扩展现有语言以适应新条件
  • 创建交钥匙解决方案的集中式存储库
  • 界面和程序生成
  • 基于手势和语音的触摸和视觉编程
  • 哦,是的,这就是我想要的。语言和框架的比较文档,其中您知道该方法是如何用
    X语言实现的,并且服务将以Y语言显示其实现。通过类推,我们会更快地掌握所有这些框架。

Source: https://habr.com/ru/post/zh-CN383543/


All Articles