速来报名!AICon北京站鸿蒙专场~ 了解详情
写点什么

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:133304
用户头像

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

关注

评论

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

RocketMQ消息模型

废材姑娘

Java RocketMQ

大作业1

蓝黑

币币交易所系统开发详情说明

千里公路建设尽收眼底,3D可视化监测管养运,领导都惊呆了

一只数据鲸鱼

物联网 数据可视化 3D可视化 公路建设 智慧交通

甲方日常 79

句子

工作 随笔杂谈 日常

程序员修炼之路:你该知道的 7 个必经阶段

阿里巴巴云原生

阿里云 程序员 云原生 自我思考 成长笔记

Ubuntu 使用 Iptables 做网络转发

wong

iptables Ubuntu20.04

区块链商城系统开发技术详解

区块链数字货币交易所开发的简介

国外低代码平台趟过那些坑,对国内低代码企业有哪些启示?

DT极客

漫画 | 带你领略前端发展史的江湖恩怨情仇

苏南

程序员 大前端 漫画 时代发展

这道面试题,出错率90%

田维常

面试

LINUX SHELL脚本攻略

田维常

有没有听说过通达快递?

escray

极客时间 极客大学 课程作业 大作业 架构师训练营第 1 期

区块链钱包开发的核心优势

区块链钱包开发的功能与特点

纵观 ActiveX 平台的兴衰史,看开发控件的技术演变

葡萄城技术团队

SpreadJS activex

《数据挖掘:实用的机器学习工具和技术,第4版》PDF版免费下载

计算机与AI

数据挖掘 机器学习 数据科学

区块链挖矿系统开发功能方案

2020年11期券商App行情刷新及交易体验评测报告

博睿数据

APM 数据 AIOPS 证券

我参与阿里巴巴 ASoC-Seata 的一些感悟

阿里巴巴云原生

阿里云 开发者 云原生 感悟 seata

7 天开发后台系统技术小结

老魚

程序员 全栈 建站

Python的GIL

yunson

Python GIL

数仓缓慢变化维深层讲解

大数据老哥

大数据 数据仓库 数仓

mysql binlog轻量同步工具binlog portal

dothetrick

Java MySQL springboot Binlog spring Boot Starter

数字货币交易所开发的功能与特点

Flink SQL 实战:双流 join 场景应用

Apache Flink

flink 流计算

智慧社区管理平台建设,智慧平安小区整体解决方案

t13823115967

智慧社区安防系统平台开发

智慧公安防控管理平台搭建,重点人员管控系统解决方案

t13823115967

智慧公安

区块链app开发要多少钱?如何根据项目需求了解价格?

对冲基金的子基金模式vs集中管理

9527

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