Приложен програмен интерфейс - един
Приложен програмен интерфейс
Приложен програмен интерфейс (понякога приложен програмен интерфейс) (на английски интерфейс за приложно програмиране, API [хей-пиш-ах].) [1] - набор от предварително дефинирани класове. процедури. функции. структури и константи. осигурен от приложението (библиотека услуга) за използване във външни софтуерни продукти. Използва се от програмисти да пишат всички видове приложения.
API, като средство за интегриране на приложения
API определя функционалност, която осигурява програма (модул. Библиотеката) и API ви позволява да пренебрегнем факта, че е тази функционалност е реализирана.
Ако програмата (модул библиотека) се счита като черна кутия. приложния програмен интерфейс - набор от "копчета", които са на разположение на потребителите на кутията, тя може да се превърне и издърпайте.
Софтуерни компоненти да комуникират помежду си чрез приложния програмен интерфейс. Така обикновено образуват йерархия компоненти - високо ниво компоненти API ниско ниво използват компонент, и тези, от своя страна, се използва API на ниско ниво дори повече компоненти.
Съгласно този принцип са построени върху данни Internet Protocol. Стандартен протокол стека (мрежа OSI модела) съдържа 7 нива (физически слой за предаване на битове за слой протокола за прилагане, HTTP и подобни IMAP протоколи). Всеки слой използва функционалността на предишното ниво на данни и на свой ред осигурява желаната функционалност на следващото ниво.
Важно е да се отбележи, че концепцията на протокола е близка по смисъл на концепцията за API. И двете са функционалност абстракция, само в първия случай става дума за прехвърляне на данни, а вторият - от взаимодействието на приложения.
API функции и класове на библиотеката включва описание на подписите и семантиката функции.
подпис функция
Така например, в C ++ на език за програмиране, проста функция се определя еднозначно от съставителя на неговото наименование и последователност видове аргументите си, че е функция подписа на този език. Ако функцията е метод на класа, подписът ще бъдат включени и името на класа.
В метод език за програмиране на подписа на Java е името му, и типа на параметрите последователност; Тип на стойностите в подписа не участва.
семантика функция
Семантиката на функции - описание на това какво прави функцията. Семантика функция включва описание на това, което е резултат от функция в резултат на което зависи. Обикновено резултат изпълнение зависи само от стойностите на аргументи на функция, но в някои звена има понятието за държава. Тогава в резултат на функция може да зависи от състоянието и, освен това, резултатът може да бъде промяна в държавата. Логиката на тези отношения и промените, свързани с семантиката на функция. Пълно описание на семантиката на функции е изпълними функции или математическа дефиниция на функция.
операционни системи API. Проблемите, свързани с разнообразието на API
Почти всички операционни системи (UNIX. Windows. Mac OS. И така нататък. Г.) имат API, чрез които разработчиците могат да създават приложения за тази операционна система. Основната операционна система API - набор от системни функции.
В софтуерната индустрия като цяло стандарт API за стандартна функционалност, са важни, защото те гарантират, че всички програми, използващи обща API, ще работят еднакво добре или поне типичен обичайния начин. В случай на API ГПИ, това означава, че програмата ще има подобен потребителски интерфейс, който улеснява развитието на нови софтуерни продукти.
От друга страна, различията в операционните системи от различни API значително затрудняват приложения за преводи между платформи. Има различни методи за заобикаляне на това затруднение - писане "междинен» API (приложен програмен интерфейс графичен WxWidgets Qt интерфейси GTK и т.н ......), Писането на библиотеките, които се показват на системата изисква една операционна система изисква друга OS (като среда за изпълнение, както Вино . на Cygwin. и така нататък. р.), въвеждането на стандарти за кодиране на езици за програмиране (например стандарт на езика с библиотека), писането на интерпретирани езици, приложени на различни платформи (ш. питон. Perl. PHP. TCL. Java. и така нататък. и т.н. ) ..
Също така трябва да се отбележи, че на разположение на програмиста е често няколко различни API, което позволява да се постигне същия резултат. Където всеки API се осъществява обикновено с помощта на софтуерни API компоненти на по-ниско ниво абстракция.
Така на практика на всяко ниво в действителност има няколко възможни алтернативни API. Например: ние може да пише на оригиналния документ не е в HTML, както и да LaTeX. за показване може да се използва всеки браузър. Различните браузъри обикновено използват различни HTML-библиотека, и в допълнение, всичко това може да бъде (по принцип) се събира с помощта на различни библиотеки и примитиви на различни операционни системи.
Основните трудности на съществуващ API многостепенни системи, следователно са:
- Сложността на кода за пренасяне софтуер от един API в друга система (например, OS промяна);
- Загубата на функционалност по време на прехода от по-ниска към по-високо ниво. Грубо казано, всеки "слой» API е създадена за улесняване на прилагането на стандартен набор от операции. Но това наистина е трудно или невъзможно става по същество да изпълнява някои други операции, което осигурява по-ниска API ниво.
Най-добре познат API
Използва се в уеб програмиране обикновено се определя от HTTP-заявки, определени, както и определянето на структурата на HTTP-отговор за изразяването на които използват XML или JSON формат. Web API е почти синоним на уеб услугата, въпреки че през последните години се дължи на тенденциите в Web 2.0 прехода от SOAP за почивка тип комуникация. Уеб интерфейси, които осигуряват комбинация от множество услуги в нови приложения, известни като хибрид.
бележки
- ↑ често неправилно изразен [API]. И използва съкратена версия на превода - интерфейса на приложението.
Тази статия липсва цитати източници на информация.
Вижте това, което "интерфейс за приложно програмиране" в други речници:
Изпълнение Приложен програмен интерфейс - при прилагане на компютърните технологии програмен интерфейс (PAPI) (програмиране на производителността на приложенията интерфейс) преносим интерфейс (приложена като библиотека), за да хардуерни броячи за изпълнение на модерна ... ... Wikipedia
Interface (ООП) - интерфейс (.. От Латинска наред с лицето между латинската и повърхността) е семантично и синтаксис в кода се използва за задаване на услугите, предоставяни от класа или компонента. Интерфейсът дефинира границата ... ... Wikipedia
Приложен програмен интерфейс - набор от предварително дефинирани класове, функции, структури и константи, предоставени от приложение (услугата библиотека) за за използване в външни софтуерни продукти. Използва се от програмисти да пишат всички видове приложения (инж. Приложение ... ... Бизнес Речник
Интерфейс (обектно-ориентираното програмиране) - Този термин, има и други приложения, вижте интерфейс (пояснение) .. Интерфейс (лат. Интер «между» и лице «повърхност") семантичен и синтаксис в кода, използван да се уточни ... ... Wikipedia
Интерфейс - Този термин, има и други приложения, вижте интерфейс (пояснение) .. Интерфейс (инж. Интерфейс чифт, интерфейс, преграда) на интерфейса между двете системи, устройства или програми, които някои от техните ... ... Wikipedia
Interface (COM) - Интерфейс Picture и прилага своя клас «Заедно». COM интерфейс (от модела за обекти на английски език. Компонент и английски език. Интерфейс взаимодействие) набор от абстрактни функции и свойства, чрез които програмите. Интерфейсът е дефиниран абстрактен клас ... Wikipedia
Интерфейс (хардуер) - интерфейс (от част на английски гранична повърхност, преграда.) Набор от средства и методи на взаимодействие между елементите на системата. В зависимост от контекста, терминът се отнася за отделен елемент (интерфейс), а ... ... Wikipedia
- Интерфейс за приложно програмиране. Dzhessi Rassel. Тази книга ще бъде направено в съответствие с вашата поръчка на технологии технология за печат при поискване. Високо качество на съдържанието от статиите в Уикипедия! Приложен програмен интерфейс (понякога ... Прочетете повече купи за 1125 рубли
- сървър на приложения "Zope". S. Е. Грегер. Разгледа Python език за програмиране и въпроси за кандидатстване Zope приложения (Z Object среда за публикуване), за да се развиват уеб-базирани приложения. Описанието на синтаксиса на Python, изграждане на ... Прочетете повече Купи за 640 рубли
- Python 3 и 5. PyQt за разработка на приложения. Владимир Dronov. Описан Python 3 език: типове данни, оператори, условия, примки, регулярни изрази, функции, обектно-ориентирани инструменти за програмиране, работа с ikatalogami файлове, често ... Прочети повече купи за 620 рубли за електронни книги