2012-03-23 179 views
0

我特別希望理解這個原理,即使它效率不高,也會促使您使用它。如果我說的不對,請糾正我。反射有什麼好處?

查看這個問題的另一種方法可能是爲什麼我們應該使用它,爲什麼不呢?反射是一種編程的好方法嗎?

謝謝。

+0

你的問題表明反射在許多情況下提供了一個合理的選擇。我認爲這是一種誤解。 – Jodrell 2012-03-23 10:36:06

+2

在C++中,你不應該使用它,因爲它不存在。我不能評論其他語言,除了引用Knuth的話說,我們應該忘記小效率,大約97%的時間:過早優化是萬惡之源。 – 2012-03-23 10:36:38

+0

@Jodrell正如邁克所說,反射並不存在於C++和許多其他語言中,因此有其他選擇。實施起來可能很複雜也很昂貴。 – 2012-03-23 10:54:09

回答

2

.NET視角

在.NET框架內許多框架會停止,而不反思工作。 ASP.NET MVC純粹是在反思。

它是強大的,但權力來負責。反思很慢,所以你需要確定你在做什麼。

1

Reflection在構建軟件中給予了巨大的好處。 例如plug-in base systems幾乎不可能被髮展而不用大量使用它。

它功能非常強大(並且在.NET非常高性能),讓您在運行時以動態和通用的方式讀取/寫入數據。

+0

插件+1。 – Reniuz 2012-03-23 10:37:26