我不明白世界各地的時尚使用XML來存儲設置,頁面或GUI佈局,甚至豆集。如何用Java替換XML?
如果我們考慮到這樣的事實,即XML是不是一個單一的語言,而是一個模板來定義多國語言,大衆的瘋狂變得明顯。
爲什麼要使用DOZENS的語言而不是使用某個ONE?
例如,Java。
它可以定義或聲明任何類型的GUI層次結構,設置表格等等。
那麼,爲什麼我們不使用java文件來存儲所有的東西呢?
例如,一種可以提供設置在Java格式文件是這樣的:
class Properties {
String dbpassword = "password";
String database = "localhost";
String dbuser = "mkyong";
}
這個文件可以在運行時通過編譯器和由反射提取的字段動態編譯。
那麼,我們爲什麼不這樣做呢?
想到的唯一原因是安全性。
外部文件可能包含不僅性能,而且一些構造函數代碼,它可以破解應用程序或使其崩潰。
所以。這種情況是否有保護?我們可以限制運行時編譯文件的可能功能嗎?
UPDATE
我不即指的Java。 Java只是一個示例。我需要使用單一語言的方法。
更新2
我要求,這將是更好地使用整個項目方面的一種語言。
假設在MVC模式,我們將使用三個不同語言的模型,視圖和控制器!這將是無稽之談!我們使用單一語言。我的意思是我們人們使用不同的語言,但每個程序員都使用一種仍然分離MVC的單一語言。這是什麼配置文件:多一個概念的分離。因爲概念被分開了,使用不同的語言沒有任何意義。
這也適用於HTML/JavaScript/CSS。沒有意義擁有三種語言。沒有任何該死的感覺!
我當然明白歷史原因等,但這些都是沒有意義的,這些都只是麻煩的原因。
那麼,爲什麼我們會看到同樣性質的新項目和新項目呢?
爲什麼MS爲WPF創建了XAML?他們提出了新的C#語言,爲什麼不把XAML加入其中呢?
爲什麼Oracle爲JavaFX創建FXML?感謝上帝,他們放棄了JavaFX腳本!因爲他們想爲RIA提供三種語言!
簡單地說,因爲有不是基於Java的系統/應用程序/框架?!請求VB6開發人員包含Java代碼 - 我希望你知道我的意思 –
對於你的擔憂,JSON將是更好的選擇。但即使如此,Lisp和Scheme程序員仍然會沮喪地搖頭...... – Ned
@NedNowotny已經有一個[json-schema的草稿版本](http://json-schema.org/)可用,但它像缺少面向對象的繼承一樣有其侷限性。你可以用「包含」allOf定義來繞過這個定義(比如fe消息),但是你不能覆蓋那裏定義的東西 - 被驗證的json消息必須經過兩次驗證檢查,相對於原始json模式和提到的一個。但是,如果被引用者包含諸如「addidionalProperties」之類的東西:false「驗證將很有可能失敗擴展參數 –