什麼是程式的API?
記得,那是大約在18年前,Windows 3.0才剛剛傳入中國,它的某些程式“介面”並不對外開放,如果有人得知一點“小道訊息”(即知道了某個對外不開放的“程式介面”),能夠在上面做點“事情”(指編制某個特別的“小程式”),真讓人羨慕極了。
程式“介面”是一個不夠準確的說法。一般說,“API”是指“Application Program Interface”(“應用程式介面”),通常被說成是“Application Programming Interface”(“應用程式設計介面”)。某個程式的API是一些相關命令、函式和通訊協議的集合。一旦API有了,程式設計師就可以用它與作業系統打交道,從而能夠“搭建”(“編寫”)應用程式,省時省力。API不是程式的“二進位制介面”,它必須用所謂”高階語言”描述(說明),最後與應用程式一塊兒編譯才能執行。比如,Windows的API(所謂“WinAPI”)就是由Windows作業系統API的核心集合外加某些不對外公開的“保密”API組成。Windows的核心API一般是公開的,但是,對於開發應用程式卻是遠遠很不夠的。今年2月21日,微軟發表“開放性”宣告,在網站上公佈了3萬頁有關Windows的API文件,是很不容易的,那是多少軟體工程師,耗費多少錢財,花費多少時間(以年為單位)的智力創新活動所取得的“結晶”啊!這是微軟自己對十年之前“損招”(指“捂住”通訊協議,遏制開源軟體發展)的徹底否定,值得我們歡迎。
老實說,市場佔有率的多少,不是壟斷市場的判定標準。用什麼“損招”(比如,“封閉”介面協議標準),遏制競爭對手,巧取豪奪,佔有大片市場,稱王稱霸,那才是“壟斷”。“壟斷”阻礙競爭,那才是罪惡。這次,微軟的大門算是開啟了。在市場的舞臺上,進行公開的“比試”(即產品競爭),那才算是“公平”的。開源軟體的優勢,不在於它有國家政策的保護(或支援),而是它的徹底開放性。如今微軟開放(API)了,開源軟體的天然優勢何在?空談反對“私有軟體”,今後怕是不再靈驗了。
程式“介面”是一個不夠準確的說法。一般說,“API”是指“Application Program Interface”(“應用程式介面”),通常被說成是“Application Programming Interface”(“應用程式設計介面”)。某個程式的API是一些相關命令、函式和通訊協議的集合。一旦API有了,程式設計師就可以用它與作業系統打交道,從而能夠“搭建”(“編寫”)應用程式,省時省力。API不是程式的“二進位制介面”,它必須用所謂”高階語言”描述(說明),最後與應用程式一塊兒編譯才能執行。比如,Windows的API(所謂“WinAPI”)就是由Windows作業系統API的核心集合外加某些不對外公開的“保密”API組成。Windows的核心API一般是公開的,但是,對於開發應用程式卻是遠遠很不夠的。今年2月21日,微軟發表“開放性”宣告,在網站上公佈了3萬頁有關Windows的API文件,是很不容易的,那是多少軟體工程師,耗費多少錢財,花費多少時間(以年為單位)的智力創新活動所取得的“結晶”啊!這是微軟自己對十年之前“損招”(指“捂住”通訊協議,遏制開源軟體發展)的徹底否定,值得我們歡迎。
老實說,市場佔有率的多少,不是壟斷市場的判定標準。用什麼“損招”(比如,“封閉”介面協議標準),遏制競爭對手,巧取豪奪,佔有大片市場,稱王稱霸,那才是“壟斷”。“壟斷”阻礙競爭,那才是罪惡。這次,微軟的大門算是開啟了。在市場的舞臺上,進行公開的“比試”(即產品競爭),那才算是“公平”的。開源軟體的優勢,不在於它有國家政策的保護(或支援),而是它的徹底開放性。如今微軟開放(API)了,開源軟體的天然優勢何在?空談反對“私有軟體”,今後怕是不再靈驗了。
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-444287/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 通過程式碼解釋什麼是API,什麼是SDK?API
- 什麼是 Angular 的 API Extractor?AngularAPI
- 什麼是API抓取?API
- 什麼是API介面,具體是什麼意思?API
- 什麼是API管理? - DZoneAPI
- 代理IP中的API介面是什麼?API
- Coinbase 開發的 Rosetta API 是什麼ROSAPI
- RDD到底是什麼?RDD的APIAPI
- 為什麼 GraphQL 是 API 的未來API
- RESTful API的流行的原因是什麼?RESTAPI
- 不懂就問,API是什麼API
- 到底什麼是API經濟API
- onethink的HomeController中api('Config/lists')是什麼?ControllerAPI
- 通俗易懂的解釋:什麼是APIAPI
- 什麼是“API 優先”方法? - wixAPI
- 美顏API是什麼意思?美顏API和美顏SDK有什麼區別?API
- keyiso是什麼程式?
- 什麼是JPA?Java Persistence API簡介JavaAPI
- API介面是什麼?產品經理怎麼去看API介面文件?API
- 什麼是API資料介面該怎麼使用?API
- 什麼是低程式碼的窘境?
- html的空格程式碼是什麼HTML
- 什麼是程式語言,什麼是Python直譯器Python
- 低程式碼是什麼意思?低程式碼平臺的技術特點是什麼?
- 低程式碼是什麼?
- 什麼是程式碼整理?
- 什麼是物件?什麼是抽象?怎麼理解物件導向的程式設計思想?物件抽象程式設計
- 程式設計師的悲哀是什麼?程式設計師
- Linux中程式間通訊是什麼概念?目的是什麼?Linux
- 什麼是API介面?API介面的用途以及詳細示例說明。API
- NLA是什麼?NLA的原理是什麼?
- Java是什麼_Java是做什麼的?Java
- 什麼是小程式外掛?
- 什麼是 unicode 程式碼點Unicode
- 低程式碼是什麼意思
- 低程式碼是什麼意思?
- 什麼是AOP程式設計?程式設計
- 什麼樣的程式碼稱得上是好程式碼?
- [譯]為什麼 VueX 是前端與 API 之間的完美介面Vue前端API