面向介面的好處

來源:互聯網
上載者:User
一個介面可以從三方面去考察:
制定者(或者叫協調者), 實現者(或者叫生產者), 調用者(或者叫消費者)。

介面本質上就是 由制定者來協調實現者和調用者之間的關係。

所以通常說的“面向介面編程”可以理解為:
只有實現者和調用者都遵循“面向介面編程”這個準則,制定者的協調目的才能達到。

一個老生常談的例子就是JDBC。

很多人費解:既然我每串連一種資料庫(如mysql)都要事先部署驅動程式,那我直接存取驅動程式不就行了。還要JDBC幹嗎。

實際上,JDBC已經起了至關重要的作用了:正因為驅動程式是按照JDBC所規定的方法編寫的,你才可以按照JDBC的方式去使用。
換句話說,如果驅動程式提供者不按照JDBC標準來編寫,而是按它自己獨創的方式編寫,那麼你在使用驅動程式的時候就要花時間查看驅動程式的文檔以搞清楚用法。而當你日後決定使用另一種資料庫的時候,這種資料庫的驅動程式也不是按照JDBC編寫的,你又得去搞清楚另一套完全不同的用法,而你的所有代碼都必須做相應的更改。這種代價是不可想象的。

而現在的情況是,驅動程式提供者都按照JDBC規定的方式來編寫,程式員都按照JDBC規定的方式來使用。程式員不用關心自己正在使用何種資料庫,而驅動程式編寫者也不用費盡心力去編寫介面文檔來向程式員解釋驅動程式的用法,大家都向標準看齊就行了。

現在,你覺得面向介面編程的好處還不明顯嗎。

當你正在你的鍵盤上打字的時候,你是否想到,你在學校就學會了的打字方法至今還在用,因為所有電腦鍵盤的布局都是一樣的。
這時,你會不會由衷地感激這個設計鍵盤配置的人呢。正是他讓你只要學會一種打字方法就可以用在所有電腦的鍵盤上。

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.