2016-12-07 73 views
0

所以我幫助爲我的大學編寫了一個應用程序,我想知道處理多個XML提要的最佳方式是什麼(比如體育比賽,課程信息等)。我應該爲每個XML Feed使用一個XML解析器,還是應該爲每個XML Feed編寫解析器?

我應該有一個可以處理所有提要的XML解析器嗎?或者我應該爲每個Feed編寫解析器?我們無法決定實施它的最佳方式。

這是iOS和我們使用SWIFT 3的混合和Objective-C

+0

術語「解析器」經常被錯誤地使用,通常我們理解它的含義。但在這裏我不確定你的意思。 XML解析器對特定詞彙表一無所知,它只是查找開始和結束標籤,並且您絕對應該使用現成的XML解析器而不是自己編寫。我認爲你所談論的是調用XML解析器的應用程序,而不是解析器本身,在這種情況下,您的問題的答案是:它取決於不同應用程序之間是否存在足夠的通用區域。 –

回答

0

我認爲正確的策略是編寫處理常見的數據類型,如整數,布爾值,字符串等一個基類,和然後爲每種類型的Feed編寫派生類。這是我在我的XML解析器,它是基於數據結構和蘋果公司的XML解析器使用如這裏所描述的策略:

https://developer.apple.com/library/content/documentation/Cocoa/Conceptual/NSXML_Concepts/NSXML.html

我個人更喜歡使用XPath數據模型,你可以查詢XML樹使用類似於路徑的字符串的特定節點。