MIT為物件導向程式設計師帶來福音

發表於2011-10-08

在最近的一篇新聞中,麻省理工學院介紹了一種新技術,可以自動記錄物件之間的聯絡。這個系統能夠判斷出:

大型軟體專案中物件的互動方式,因此可以通知此後的物件,讓它們知道需要哪些物件來設計特定型別的功能。

Larry Hardesty來自MIT新聞辦公室,他認為:過去四十年來,軟體工程的主要創新就是物件導向程式語言的發展,物件可以看作

程式用來儲存計算方式細節的儲存庫,讓程式設計師可以聚焦於更大、 更全面的問題。

MIT為物件導向程式設計師帶來福音

開發人員常常面對這樣的挑戰:隨著系統規模不斷變大,物件的數目也不斷增加,它們之間的互動關係會變得數量龐大。要理解整個系統,他們需要花費很多時間。MIT的電腦科學和人工智慧實驗室的想法就是從這裡出發。這個系統名為MatchMaker,可以自動化學習正在開發中的系統內物件的互動方式。

該系統對於需要新增功能的開源軟體來說特別有用,Solar-Lezama和他的學生Zhilei Xu和Kuat Yessenov已經通過Eclipse Framework展示出了這一點。

在MatchMaker中,開發人員可以在一個查詢欄位中輸入物件的名字。作為返回結果,MatchMaker會列出所有與指定物件連線在一起的物件,以及現有任何方法需要做出的修改。

不過,系統還是會產生一些錯誤的引用,即使如此,正像Solar-Lezama指出的,就算出現類似情況,開發人員至少還是能獲得一些指導。他們試圖以實驗的方式證實自己的觀點,研究了8名剛剛接觸Eclipse的使用者。開發人員分為兩組,每組四人。第一組必須在不使用MatchMaker的情況下解決一個問題,第二組可以利用該系統,但是收到來自MatchMaker的資訊也不完整。儘管如此,第二組中所有開發人員的表現還是超出了第一組中的任意。然而,還是要指出:在這個上下文中,8個人的研究還是不具有代表性。

未來將會告訴我們:MatchMaker能否達成人們對它的期望。如果您想了解更多細節,您可以閱讀研究人員們提交的論文,該論文已被本年度SPLASH的OOPSLA大會接受。

相關文章