Python的Django框架中的URL配置與鬆耦合

面向對象的基本思想:多聚合,少繼承,低耦合(鬆耦合),高內聚

現在是好時機來指出Django和URL配置背後的哲學: 鬆耦合 原則。 簡單的說,鬆耦合是一個 重要的保證互換性的軟件開發方法。

Django的URL配置就是一個很好的例子。 在Django的應用程序中,URL的定義和視圖函數之間是鬆 耦合的,換句話說,決定URL返回哪個視圖函數和實現這個視圖函數是在兩個不同的地方。 這使得 開發人員可以修改一塊而不會影響另一塊。

例如,考慮一下current_datetime視圖。 如果我們想把它的URL 從原來的 /time/ 改變到 /currenttime/ ,我們只需要快速的修改一下URL配置即可, 不用擔心這個函數的內部實現。 同樣的,如果我們想要修改這個函數的內部實現也不用擔心會影響 到對應的URL。

此外,如果我們想要輸出這個函數到 一些 URL, 我們只需要修改URL配置而不用 去改動視圖的代碼。 在這個例子裏,current_datetime被兩個URL使用。 這是一個故弄玄虛的例子,但這個方法遲早會用得上。

urlpatter = patterns('',
  ('^hello/$', hello),
  ('^time/$', current_datetime),
  ('^another-time-page/$', current_datetime),
)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章