写点什么

MIT 为面向对象程序员带来福音

  • 2011-10-08
  • 本文字数:820 字

    阅读完需:约 3 分钟

在最近的一篇新闻中,麻省理工学院介绍了一种新技术,可以自动记录对象之间的联系。这个系统能够判断出:

大型软件项目中对象的交互方式,因此可以通知此后的对象,让它们知道需要哪些对象来设计特定类型的功能。

Larry Hardesty 来自 MIT 新闻办公室,他认为:过去四十年来,软件工程的主要创新就是面向对象编程语言的发展,对象可以看作

程序用来存储计算方式细节的存储库,让程序员可以聚焦于更大、更全面的问题。

开发人员常常面对这样的挑战:随着系统规模不断变大,对象的数目也不断增加,它们之间的交互关系会变得数量庞大。要理解整个系统,他们需要花费很多时间。MIT 的计算机科学和人工智能实验室的想法就是从这里出发。这个系统名为 MatchMaker,可以自动化学习正在开发中的系统内对象的交互方式。

该系统对于需要添加功能的开源软件来说特别有用,Solar-Lezama 和他的学生 Zhilei Xu 和 Kuat Yessenov 已经通过 Eclipse Framework 展示出了这一点。

在 MatchMaker 中,开发人员可以在一个查询字段中输入对象的名字。作为返回结果,MatchMaker 会列出所有与指定对象连接在一起的对象,以及现有任何方法需要做出的修改。

不过,系统还是会产生一些错误的引用,即使如此,正像 Solar-Lezama 指出的,就算出现类似情况,开发人员至少还是能获得一些指导。他们试图以实验的方式证实自己的观点,研究了 8 名刚刚接触 Eclipse 的用户。开发人员分为两组,每组四人。第一组必须在不使用 MatchMaker 的情况下解决一个问题,第二组可以利用该系统,但是收到来自 MatchMaker 的信息也不完整。尽管如此,第二组中所有开发人员的表现还是超出了第一组中的任意。然而,还是要指出:在这个上下文中,8 个人的研究还是不具有代表性。

未来将会告诉我们:MatchMaker 能否达成人们对它的期望。如果您想了解更多细节,您可以阅读研究人员们提交的论文,该论文已被本年度SPLASH 的OOPSLA 大会接受。

查看英文原文: InfoQ: MIT introduces Oracle for Object-Oriented Programmers

2011-10-08 02:133272
用户头像

发布了 479 篇内容, 共 157.3 次阅读, 收获喜欢 49 次。

关注

评论

发布
暂无评论
发现更多内容

阿里面试官纯手打:金九银十跳槽必会Java核心知识点笔记整理

Java架构之路

Java 程序员 架构 面试 编程语言

字节内部MySQL宝典意外流出!极致经典,堪称数据库的天花板

比伯

Java 编程 架构 面试 程序人生

在函数计算中到底该不该使用 VPC?

donghui

Serverless

WiFi6 与 5G 的异同分析

石君

5G wifi 28天写作

阿里2021年首次公开五份Java并发编程全彩小册:模型+原理+应用+模式+面试题五管齐下

Java架构追梦

Java 学习 架构 面试 并发编程

工作11年,从阿里P8出来,头发也没了,人也虚了,就剩下这份笔记了!

Java架构之路

Java 程序员 架构 面试 编程语言

并发阻塞队列(BlockingQueue)— 生产者消费者模式核心部件

码农架构

Java 架构 jdk 设计模式

细节!3部分讲明白HotSpot:运行时+编译器+垃圾回收器

996小迁

Java 架构 虚拟机 hotspot

百度研究院的追星逐浪,中国科技的奋发自强

脑极体

中美上市软件公司对比中的投资启示

ToB行业头条

五分钟快速掌握Maven的核心概念

Java架构师迁哥

为什么建议没事不要随便用工厂模式创建对象?

码农架构

Java 学习 设计模式

Linux I/O 原理和 Zero-copy 技术全面揭秘

赖猫

c++ Linux linux编程 服务器开发 I/O

K线成交量管理系统开发、成交量管理系统开发

W13902449729

K线成交量管理系统开发 成交量管理系统开发

超强Android进阶路线知识图谱:Kotlin可能带来的一个深坑,持续更新中

欢喜学安卓

android 程序员 面试 移动开发

即构微信小程序直播组件是什么?有哪些功能?哪些小程序类目可以使用?

ZEGO即构

量化策略交易软件开发|量化策略交易系统APP开发

系统开发

比特币矿机工作原理

v16629866266

比特币 比特币区块链

Linux网络之 从 C10K 到 DPDK

赖猫

c++ Linux linux编程 C10K DPDK

“区块链+数字身份”,道路坎坷前途光明

CECBC

数字技术

区块链发展应以密码应用创新为根基

CECBC

区块链 密码学

DeFi流动性挖矿管理系统开发|去中心化金融借贷系统开发

W13902449729

去中心化金融借贷系统开发 DeFi流动性管理系统开发

2021年编排将成为DevSecOps关键推动者

啸天

DevSecOps 应用安全 开发安全

Serverless 架构到底要不要服务器?

Serverless Devs

Java 云计算 Serverless 运维 云原生

如何利用策略模式避免冗长的if-else/switch分支判断代码?

码农架构

Java 学习 设计模式

高并发架构---TCP

赖猫

TCP 后端 高并发 TCP/IP 服务器开发

现货合约量化交易系统开发搭建

薇電13242772558

数字货币 策略模式

Java 程序经验小结:类层次优于标签类

后台技术汇

28天写作

厉害了!来看看这份超全面的《Android面试题及解析》,一线互联网公司面经总结

欢喜学安卓

android 程序员 面试 移动开发

持续集成对IT团队和企业分别有哪些好处?

禅道项目管理

DevOps 运维 开发 CI/CD

区块链大趋势

CECBC

数字经济

MIT为面向对象程序员带来福音_开源_Michael Stal_InfoQ精选文章