1. 有沒有人知道什麼是API
API(Application Programming Interface,應用程序編程介面)是一套用來控制Windows的各個部件(從桌面的外觀到為一個新進程分配的內存)的外觀和行為的一套預先定義的Windows函數.用戶的每個動作都會引發一個或幾個函數的運行以告訴Windows發生了什麼.
這在某種程度上很象Windows的天然代碼.其他的語言只是提供一種能自動而且更容易的訪問API的方法.VB在這方面作了很多工作.它完全隱藏了API並且提供了在Windows環境下編程的一種完全不同的方法.
這也就是說,你用VB寫出的每行代碼都會被VB轉換為API函數傳遞給Windows.例如,Form1.Print...VB 將會以一定的參數(你的代碼中提供的,或是默認參數)調用TextOut 這個API函數.
同樣,當你點擊窗體上的一個按鈕時,Windows會發送一個消息給窗體(這對於你來說是隱藏的),VB獲取這個調用並經過分析後生成一個特定事件(Button_Click).
API函數包含在Windows系統目錄下的動態連接庫文件中(如User32.dll,GDI32.dll,Shell32.dll...).
API 聲明
正如在"什麼是API"中所說,API函數包含在位於系統目錄下的DLL文件中.你可以自己輸入API函數的聲明,但VB提供了一種更簡單的方法,即使用API Text Viewer.
要想在你的工程中聲明API函數,只需運行API Text Viewer,打開Win32api.txt(或.MDB如果你已經把它轉換成了資料庫的話,這樣可以加快速度.注:微軟的這個文件有很多的不足,你可以試一下本站提供下載的api32.txt),選擇"聲明",找到所需函數,點擊"添加(Add)"並"復制(Copy)",然後粘貼(Paste)到你的工程里.使用預定義的常量和類型也是同樣的方法.
你將會遇到一些問題:
假設你想在你的窗體模塊中聲明一個函數.粘貼然後運行,VB會告訴你:編譯錯誤...Declare 語句不允許作為類或對象模塊中的 Public 成員...看起來很糟糕,其實你需要做的只是在聲明前面添加一個Private(如 Private Declare Function...).--不要忘了,可是這將使該函數只在該窗體模塊可用.
在有些情況下,你會得到"不明確的名稱"這樣的提示,這是因為函數.常量或其他的什麼東西共用了一個名稱.由於絕大多數的函數(也可能是全部,我沒有驗證過)都進行了別名化,亦即意味著你可以通過Alias子句使用其它的而不是他們原有的名稱,你只需簡單地改變一下函數名稱而它仍然可以正常運行.
你可以通過查看VB的Declare語句幫助主題來獲取有關Alias的詳細說明.
消息(Messages)
好了,現在你已經知道什麼是API函數了,但你也一定聽說過消息(如果你還沒有,你很快就會)並且想知道它是什麼.消息是Windows告訴你的程序發生了哪些事件或要求執行特定操作的基本方法.例如,當用戶點擊一個按鈕,移動滑鼠,或是向文本框中鍵入文字時,一條消息就會被發送給你的窗體.
所有發送的消息都有四個參數--一個窗口句柄(hwnd),一個消息編號(msg)還有兩個32位長度(Long)的參數.
hwnd即要接受消息的一個窗口的句柄,msg即消息的標識符(編號).該標識符是指引發消息的動作類型(如移動滑鼠),另外兩個參數是該消息的附加參數(例如當滑鼠移動時游標的當前位置)
但是,當消息發送給你時你為什麼看不到呢--就象有人在偷你的信一樣?請先別惱火,讓我告訴你.
小偷其實是Visual Basic.但它並沒有偷走你的信,而是在閱讀了之後挑出重要的以一種好的方式告訴你.這種方式就是你代碼中的事件(Event).
這樣,當用戶在你的窗體上移動滑鼠時,Windows會發送一條WM_MOUSEMOVE消息給你的窗口,VB得到這條消息以及它的參數並運行你在事件MouseMove中的代碼,同時VB會把這條消息的第二個32位數(它包含了x,y坐標,單位為像素(Pixel),每個位16位)轉換為兩個單精度數,單位為緹(Twip).
現在,如果你需要游標坐標的像素表示,然而VB已經把它轉換成了緹,因此你需要重新把它轉換為以像素為單位.在這里,Windows給了你所需要的,但VB"好意地"進行了轉換而使你不得不重新轉換.你可能會問--我難道不能自己接收消息嗎?答案是肯定的,你可以使用一種叫做子類處理(Subclass)的方法.但你除非必須否則最好不要使用,因為這與VB的安全程序設計有一點點的違背.(注:子類處理確實有很大的風險,但如果使用得當,是很有用處的.不過有一點一定要注意,即千萬不要使用VB的斷點調試功能,這可能會導致VB崩潰!)
需要補充說明的是:你可以發送消息給你自己的窗口或其他的窗口,只需調用SendMessage或PostMessage(SendMessage會使接受到消息的窗口立刻處理消息,而PostMessage是把消息發送到一個稱為消息隊列的隊列中去,等候處理(它將會在該消息處理完後返回,例如有些延遲)).你必須制定接受消息的窗口的句柄,欲發送消息的編號(所有的消息的編號均為常量,你可以通過API Text Viewer查得)以及兩個32位的參數。
另一種含義:
1:美國石油協會(API:American Petrolenm Institute):制定機油標準的組織。汽車用發動機機油必須符合API提出的標准。
2:API還有一種含意:空氣污染指數。【英文 air pollution index 的縮寫】
3:在JAVA中,API除了有應用「程序程序介面」的意思外,還特指JAVA API的說明文檔,也稱為JAVA幫助文檔。
4.API Q1質量體系認證是您向用戶證明您有一套API認可的完善的質量管理體系, 有些石油、天然氣設備製造商所生產的產品目前沒有所適用API會標產品的規范對應, 但他們又想向用戶證明他們的產品或服務符合API標準的要求,所以API Q1質量體系認證可以幫您辦到。API Q1質量體系認證特別適用於那些所生產的產品沒有相應的API會標產品規范所對應的石油、天然氣設備生產廠家, 或向石油、天然氣行業提供服務的公司。
另一種含義:
使用API(應用編程介面,英文全稱:Application Programming Interface)構建業務是實現開放式業務結構的關鍵技術,也是下一代網路區別於傳統電信網的主要特點之一。目前,關於下一代網路的開放式業務API標准主要包括:由Parlay組織、3GPP和ETSI SPAN共同制定的Parlay/OSA API以及由SUN公司在Java平台上推出的JAIN API。
Parlay API是由Parlay組織定義的便於業務開發者快速創建電信業務的應用編程介面,自1999年成立以來,Parlay組織已制定了4個版本的Parlay協議。開放式業務結構(OSA)是3GPP制定的多媒體業務框架,選定Parlay作為其開放式業務介面API。兩者結合的Parlay/OSA API獨立於具體的實現技術,可以應用於固定網路、移動網路以及下一代網路的業務提供;獨立於具體的實現語言,可以用C、C++、Java等各種語言實現;定義了完善的認證和授權機制,以支持對第3方應用的支持。
Parlay/OSA API位於由網路運營商管理的Parlay網關和由業務提供商管理的應用伺服器之間。Parlay網關對應用伺服器屏蔽了下層網路的技術實現細節,使得應用伺服器可以使用統一的方式對網路能力進行訪問。
Parlay/OSA API包括兩類介面:業務介面和框架介面。業務介面提供應用訪問網路能力和信息的介面,框架介面提供業務介面安全、管理所必需的支持能力。業務介面保證用戶能夠接入傳統網路,如呼叫控制、呼叫管理、發送消息、用戶交互等;框架介面提供的功能有:業務登記、業務預訂、業務發現、認證、授權和綜合管理。
JAIN API和Parlay/OSA API設計思想相近,功能上具有互補性。它採用專一的Java語言實現,並且定義了比較完備的訪問各種網路的網路協議API。目前Parlay/JAIN聯合工作組正在進行兩者的融合工作。
http://ke..com/view/16068.htm
http://www.itise.com/phrase/200604241228185.html
2. JAVA的JDK和API的區別是什麼
JAVA的JDK和API的區別是:
1、Java好比房子,API好比土地,JDK好比開發商的關系。
2、 JDK與API都是為了JAVA,互依互存,又各自獨立,只有共同才能創造價值。
一、全稱:
1、JDK:Java Development Kit 。
2、API:Application Programming Interface 。
二、概念:
1、Java:是一種可以撰寫跨平台應用軟體的面向對象的程序設計語言。Java 技術具有卓越的通用性、高效性、平台移植性和安全性,廣泛應用於PC、數據中心、游戲控制台、科學超級計算機、行動電話和互聯網,同時擁有全球最大的開發者專業社群。
2、JDK:
(1)、JDK是Sun Microsystems針對Java開發員的產品。JDK本身使用了Java語言編寫。簡單的說JDK是面向開發人員使用的SDK,它提供了Java的開發環境和運行環境。SDK是Software Development Kit 一般指軟體開發包,可以包括函數庫、編譯程序等。
(2)、 自從Java推出以來,JDK已經成為使用最廣泛的Java SDK(Software development kit)。
3、API:
(1)、API是應用程序編程介面。
(2)、 是一些預先定義的函數,目的是提供應用程序與開發人員基於某軟體或硬體的以訪問一組常式的能力,而又無需訪問源碼,或理解內部工作機制的細節。
三、作用:
1、JDK:
(1)、jdk是Java語言的軟體開發工具包。主要用於移動設備、嵌入式設備上的java應用程序。
(2)、JDK 是整個Java的核心,包括了Java運行環境(Java Runtime Envirnment),一堆Java工具和Java基礎的類庫(rt.jar)。
(3)、不論什麼Java應用伺服器實質都是內置了某個版本的JDK。
2、API:
(1)、運行Java程序時,虛擬機裝載程序的class文件所使用的Java API class文件。
(2)、ava API在Java安全性模型方面也有貢獻。當Java API的方法進行任何有潛在危險的操作(比如進行本地磁碟寫操作)之前,都會通過查詢訪問控制器來檢驗是否得到了授權。訪問控制器是一個類,該類用來執行棧檢驗,已決定是否允許某種操作。
四、其它:
1、JDK:
(1)、JDK包含的基本組件包括:javac – 編譯器、jar – 打包工具、javadoc – 文檔生成器、jdb – debugger-查錯工具、java – 運行編譯後的java程序、appletviewer-小程序瀏覽器、Javap-Java反匯編器、Jconsole: Java進行系統調試和監控的工具等。
(2)、jdk1.8新特性:
(1)、Java 8允許我們給介面添加一個非抽象的方法實現,只需要使用 default關鍵字即可。
(2)、新增lambda表達式
(3)、提供函數式介面
(4)、Java 8 允許你使用 :: 關鍵字來傳遞方法或者構造函數引用
(5)、我們可以直接在lambda表達式中訪問外層的局部變數。
2、API:組成及特點:
(1)、所有被裝載的class文件(包括從應用程序中和從Java API中提取的)和所有已經裝載的動態庫(包含本地方法)共同組成了在Java虛擬機上運行的整個程序。
(2)、在一個平台能夠支持Java程序以前,必須在這個特定平台上明確地實現API的功能。
(3)、為訪問主機上的本地資源,Java API調用了本地方法。
(4)、由於Java APIclass文件調用了本地方法,Java程序就不需要再調用它們了。
(5)、通過這種方法,Java APIclass文件為底層主機提供了具有平台無關性、標准介面的Java程序。
(6)、對Java程序而言,無論平台內部如何,Java API都會有同樣的表現和可預測的行為。
(7)、正是由於在每個特定的主機平台上明確地實現了Java虛擬機和Java API,因此,Java程序自身就能夠成為具有平台無關性的程序。
3. 好的API有哪些特點
好的API是怎樣的,應該具備哪些特點,自由數據通過對自身資源的整理和分析,總結出了一下六點:
1、簡單為先
簡單是首要的,程序員更喜歡解決復雜的問題,這很容易讓這些復雜性影響到編寫的用戶API。因此,保持簡單就需要大量的工作,甚至面對更嚴重的挑戰。
2、提供有用的抽象
好的代碼提供了抽象,API也不能例外。用戶使用API 時,隱藏了細節,只留下要點時,就是API提供了抽象。若一個API需要用戶深入代碼或執行來理解,那這就是一個很差的抽象。
3、可發現的
前兩點是API取得良好的成績的先決條件,但,「可發現」的特點卻是API走得更遠的主要動力。好的API會在用戶打來咨詢電話之前,就進行完測試和實驗。完善的計劃、設計,包括文檔和示例,以及自我描述訪問點都能讓API具備可發現性。
4、一致和對稱
API可以通過對用戶公開的內容運用批判的眼光來實現這一特性。認真閱讀校對者的方法,檢查一致性和對稱性,並且從需要出發,進行重命名和修改。
5、遵循最不驚奇的原則
API不應該讓使用者大吃一驚,沒有令用戶抓狂的屬性。
6、把API看作一種產品
API在編寫之初,開發人員應該將自己放在用戶的角度,而不是完全處於自身的理解,將API看做一種產品。換位思考是避免誤差的最好辦法。
自由數據提供的API介面都能滿足以上幾點特徵,提供金融交易、社會輿情、生活服務、產業數據等服務,從用戶的角度出發,將用戶的需求和便利放在第一位。除此之外,自由數據作為國內領先的企業數據服務平台,擁有優質的數據資源,提供數據定製服務。
4. 我需要用api從別的地方獲取大量數據,然後存資料庫,現在有70多萬條數據,直接php獲取過來伺服器就爆了
根據需求選合適的方法咯:
比如等數據用到時再獲取,資料庫相當於緩存,第一次用到時,你的資料庫裡面必然沒有這條數據,這時就用api從別的地方獲取,並緩存到資料庫中,以後用到時就直接從資料庫里獲得了
定時定量獲取,將性能分散化,比如100ms定時獲取一條數據,這樣cpu和內存會一直維持在較低水平,幾乎不會影響性能。
伺服器空閑期間多獲取,忙的時間少獲取,比如檢測到cpu利用率小於50%,這段時間就快速同步,利用率大於90%,就停止同步
上面三條結合使用,再加上多線程,cpu利用率低就將定時器時間設的短一些,線程多一些,利用率高就設的長一些,線程少一些。無論何時,當用到某條數據時,用1的方法同步
5. 什麼是淘寶客API,有什麼作用怎麼操作呢請各位高手解析一下!
API
是淘寶網一個數據開放介面,主要是面向開發人員的,如果你是具備開發能力可以到淘寶開放平台去看他們的參考文檔自己開發基於API的淘寶客程序;如果不具備的話,也可以購買一些淘寶客API程序,我還是建議新手暫時別買,熟悉後再買,防止被騙。
API最大的特點就是可以共享淘寶百萬商品數據,自己無需維護,可以降低開發成本,
缺點是現在網路狂K
淘寶客API站點,很多這樣的站點收錄大減。
6. API是什麼意思API文檔又是什麼意思
API(Application Programming Interface,應用程序編程介面)是一些預先定義的函數,目的是提供應用程序與開發人員基於某軟體或硬體得以訪問一組常式的能力,而又無需訪問源碼,或理解內部工作機制的細節。
API文檔是一個技術內容交付文件,包含如何有效地使用和集成api的說明。它是一個簡明的參考手冊,包含了使用API所需的所有信息,詳細介紹了函數、類、返回類型、參數等,並有教程是示例支撐。
API文檔傳統上是使用常規內容創建和維護工具和文本編輯器完成的。API描述格式如OpenAPI /Swagger規范具有自動文檔編制流程,它使得團隊更容易生成和維護API文檔。
採用模式在技術領域已經開始向開發者轉移。擁有良好的API文檔的一個重要原因是它提高了使用API的開發者體驗,它與API的採納有直接的關系。
API函數包含在位於系統目錄下的DLL文件中。你可以自己輸入API函數的聲明,但VB提供了一種更簡單的方法,即使用API Text Viewer。 要想在你的工程中聲明API函數,只需運行API Text Viewer,打開Win32api.txt或MDB。
如果你已經把它轉換成了資料庫的話,這樣可以加快速度。 使用預定義的常量和類型也是同樣的方法。 API除了有應用「應用程序介面」的意思外,還特指API的說明文檔,也稱為幫助文檔。
(6)api的特點直接存儲大量數據擴展閱讀:
API,往往是和SDK放在一起的。SDK即軟體開發工具包。
軟體開發工具包是一些被軟體工程師用於為特定的軟體包、軟體框架、硬體平台、操作系統等創建應用軟體的開發工具的集合,一般而言SDK即開發Windows平台下的應用程序所使用的 SDK。
它可以簡單的為某個程序設計語言提供應用程序介面API的一些文件,但也可能包括能與某種嵌入式系統通訊的復雜的硬體。
一般的工具包括用於調試和其他用途的實用工具。SDK 還經常包括示例代碼、支持性的技術註解或者其他的為基本參考資料澄清疑點的支持文檔。
參考資料:網路- API