作者Hazukashiine (私は幸せです)
看板C_and_CPP
標題Re: [問題] api是什麼?
時間Fri Jun 9 17:04:11 2017
※ 引述《wei115 (ㄎㄎ)》之銘言:
: 最近自學想要寫一些比較好玩的東西,而看上了winAPI,雖然知道api是應用程式介面,但實際使用上和函式庫沒什麼區別,所以他是函式庫?
: 但仔細想想,winAPI是程式要使用核心功能的介面,用函式庫好像沒辦法實現(?),所以是用已經編譯封裝好的程式,算是dll?
: 還是兩者混合在一起用?
: 如果是函式庫,那為什麼像opneCL和QT不叫API而叫函式庫?
: 看了很多解釋還是搞不太懂API的概念
這東西是相對的 不是互斥的概念
但是大方向是這樣的 (由高到低排列) :
1. Framework
2. Library / API
3. ABI
4. ISA
Framework 是相對抽象的概念
他的的實作稱作 library
Library 必須透過 API 來描述如何使用它 (.h .hpp files)
--
※ 發信站: 批踢踢實業坊(ptt.cc), 來自: 140.113.66.155
※ 文章網址: https://webptt.com/m.aspx?n=bbs/C_and_CPP/M.1496999058.A.B53.html
1F:→ xam: 我覺得你用了更抽象的名詞來回答原本的問題.. XD 06/10 03:07
2F:推 AWEN221: 認真回答給你推 06/10 08:03
3F:推 chuegou: 知道大家在講啥...但是總覺得沒有一針見血的痛快感 06/10 10:06
4F:→ chuegou: 不過我這個非本科 從聽過api到知道api是啥也過了5年XD 06/10 10:07
Library v.s. API:
Library 要提供一個規範讓使用者方便去使用它 這一個規範叫做是 API
Library v.s. Framework:
你的 code 呼叫 library 的函式 而 framework 呼叫的是你給定的 methods 來客製化
大guy4醬~ ( ̄▽ ̄#)=﹏﹏
※ 編輯: Hazukashiine (122.116.185.23), 06/10/2017 11:11:09
5F:→ james732: 覺得這篇更抽象+1 XD 06/10 11:41
6F:→ Hazukashiine: 幫自己 QQ 06/10 14:04
7F:推 AWEN221: 我覺得原PO搞不懂的是interface而不是API 06/10 21:25
8F:→ hunandy14: 衛生紙來((遞 06/11 15:52
9F:→ hunandy14: 不會呀,最後一句話覺得太關鍵了! 06/11 15:53