成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

你的代碼糟粕比精華要多得多

開發 后端 前端
新的研究發現,一個程序的核心功能僅在于一小部分封裝的代碼。

新的研究發現,一個程序的核心功能僅在于一小部分封裝的代碼。

如果你是一個軟件開發人員,有人問你,你寫的代碼中有多少是真正在實現實際功能的,有多少是填充物、無價值的或者只是因為實際運行編程語言所需要的? 95%? 75%? 50%?都不是!新的研究發現,只有大約5%的代碼是真正在提供核心功能。

研究人員認為,就像自然語言一樣,一些——甚至可能是絕大多數——寫下的代碼其實對于功能是不起作用的。《stalks of wheat》一文的作者認為,只有一部分代碼代表了功能的語義核心,我們稱之為精華,而其他的則是糟粕。

[[143386]]

該作者表示,一個功能的核心可以被封裝于一個小型的關鍵字集合中,這被稱為“minimum distinguishing subset” (“最小的區別化子集”)或MINSET。我們可以通過將方法分解為詞素(即,通過空格或標點符號分隔代碼),丟棄那些對函數行為不重要 的內容,同時把剩下的映射到關鍵字中。然后將那些關鍵字導入到MINSET。

為了檢驗此理論,即MINSET中的代碼只占全部代碼的一小部分,研究人員下載了1000個來自Apache、Eclipse、GitHub和 SourceForge***的Java項目。在合計超過10億行的Java代碼中,先剔除簡單的方法( tokens低于50)。就只剩下不到190 萬的不同方法,然后從中隨機抽取10,000條,確定它們的MINSET。研究中使用的代碼和數據可從Bitbucket下載。

以下為研究發現的主要結果:

  • MINSETS出奇的小。方法的平均MINSET大小為1.55個關鍵字,***值為6。

  • MINSET的大小并不隨方法規模的增加而變大。事實上,如果只看***的1000個方法,其平均和***MINSET關鍵字分別為降到1.12和4,這表明,正如作者所言:“即便是對于一些異常龐大的方法,MINSET也是一項既獨特又靈活有效的指標。”

  • 大多數代碼幾乎盡是糟粕。平均來說,在一個方法中只有4.6%的獨特詞素可以位列MINSET。也就是說,95%以上的代碼都是糟粕。

不過有幾處關鍵的地方需要指出來。首先,MINSET本身是不可執行的:它只是表征了核心功能的代碼的最小集合。剩下95%中的一些代碼(前面稱之 為糟粕)也不是無用的,因為還需要它們來運行程序。其次,盡管這項研究僅著眼于Java代碼,不過由于語言的相似性,作者表示這些發現應該也適用于其他語 言,特別是C語言和C++。

關于此項工作的意義?研究人員指出了MINSETs的潛在應用:

  • 改進代碼搜索——MINSETs可用于基于相似查詢的代碼搜索結果排名。

  • 智能IDE——具備了MINSETs索引數據庫的IDE可用于提出類似的代碼,支持自動代碼填充,加快調試過程。

  • 備選的編程形式——MINSETs可用于支持基于關鍵字的編程,也就是說,我們可以通過一個小型的關鍵字組來創建可用的代碼。

 

責任編輯:王雪燕 來源: 碼農網/小峰
相關推薦

2022-02-24 14:03:07

神經網絡數據計算

2019-05-30 22:27:51

云計算成本云服務

2021-01-14 08:47:55

Linux命令行打印

2023-05-11 13:39:39

EDA數據分析

2024-08-01 12:44:58

2020-10-10 19:30:25

lshwLinux設備信息

2024-10-21 11:00:00

2011-11-18 16:24:07

IBM毛新生數據中心世紀互聯

2018-08-08 20:49:55

2013-10-08 10:25:03

2022-08-17 09:56:02

Android隱私

2019-08-14 09:42:06

LinuxElasticsearKibana

2022-08-26 00:00:00

數據庫數據倉庫OLAP

2015-06-10 11:15:42

iOS開發

2014-08-05 17:09:55

2009-08-17 16:34:21

.NET分布式緩存Memcached

2011-05-24 09:15:26

JavaC#

2023-02-26 00:00:04

ChatGPTLUIAIGC

2015-06-19 06:41:45

生命科學云計算集群計算

2017-01-17 10:09:22

Linux操作系統應用程序
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 精品日韩一区二区 | 精品国产视频 | 亚洲第1页 | 国产精品久久久久久影视 | 免费h在线| 亚洲网在线 | 国产伦精品一区二区三区高清 | 欧美激情视频一区二区三区在线播放 | 亚洲国产一区二区视频 | 亚洲精选一区二区 | 久久久精品欧美 | 亚洲精品久久久久久久久久久 | 日韩中文字幕免费在线 | 高清国产一区二区 | 国产成人免费视频网站高清观看视频 | 中文字幕一级毛片视频 | 青青草视频网 | 99爱视频 | 日韩成人影院在线观看 | 欧美黑人一区二区三区 | 国产成人综合网 | 天天看天天爽 | 久久草在线视频 | 最新国产精品视频 | 99久久精品免费看国产小宝寻花 | 五月激情六月婷婷 | 国产精品免费大片 | 91免费看片神器 | 男女网站免费 | 亚洲啪啪 | 天天草狠狠干 | 亚洲激情专区 | 亚洲91视频 | 精品国产一级片 | 国产精品美女久久久久aⅴ国产馆 | 国产一区三区在线 | 欧美日韩精品一区二区天天拍 | 免费毛片www com cn | 中文字幕一区二区三区四区五区 | 亚洲一区二区三区四区五区中文 | 欧美日韩一区二区电影 |