Jump to content

API

Википедиа — Чөлөөт нэвтэрхий толь
14:44, 11 Арванхоёрдугаар сар 2016-ий байдлаарх B140930263 (хэлэлцүүлэг | оруулсан хувь нэмэр) хэрэглэгчийн хийсэн залруулга

Аппликейшн програмчлалын интерфейс (API)

Аппликейшн програмчлалын интерфейс буюу API гэдэг нь хэрэглээний програм хангамжийг бий болгох subroutine, протоколууд болон tools-н олонлог юм. Сайн API нь программын сайн үндэс суурь болдог. API нь үйлдлийн систем, өгөгдлийн сангийн систем, компьютерийн техник хангамж, мөн програм хангамжинд суурилдаг. API-г тодорхойлогч нь маш олон байдаг бөгөөд ихэвчлэн хэрэглэдэг үндсэн тодорхойлолтууд нь өгөгдлийн бүтэц, обьект , хувьсагч, эсвэл алсын дуудлага юм. Олон төрлийн API байдаг бөгөөд жишээ нь : POSIX, Microsoft Windows API, the C++ Standard Template Library, and Java API. Энэхүү documentation-г API-г ашиглахад хялбар болгохын тулд хийлээ. API-гийн эрх зүйн байдал нь оюуны өмчийн хуулийн тал дээр маргаантай байдаг.

Зорилго:

График хэрэглэгчийн интерфэйс нь хэрэглэгч програм ашиглахад илүү хялбар болгодог шиг, програмчлалын интерфэйс нь хөгжүүлэгчид аппликейшнд суурилсан технологи хийхэд хялбар болгодог.

Агуулга:

• Зорилго

• Хэрэглээ

• Сангууд болон тогтолцоонууд

• Үйлдлийн систем

• Алсын API

• Веб API

• Java API

• Дизайн

• Бодлого төлөвлөлт

• Зохиогчийн эрх болон маргаан

Хэрэглээ:

Сангууд болон тогтолцоонууд

API-гийн програм хангамжийн library нь ихэнхдээ олон төрөлтэй байдаг: API-гийн library-н зарчим нь цогц бодит хэрэгжилтээр тодорхойлогддог. API нь адил програмчлалын интерфэйстэй өөр library-уудаас олон төрлийн формын хэрэгжүүлэлтийг авч ажиллаж чаддаг. Бусад library-н адил хэл дээр бичигдсэн програмыг API салган авч хэрэгжүүлэхийг зөвшөөрдөг. Жишээ нь: Scala болон java хөрвүүлэгчид нь bytecode дээр ажилладаг ба scala хөгжүүлэгчдийн давуу тал нь ямар ч java API-г ашиглаж чаддаг. API нь ямар ч програмчлалын хэл байсан өөрчилж чаддаг.API нь LUA горимын хэл бөгөөд ерөнхий код, нарийн төвөгтэй өгөгдлүүд, алдаанууд, Java-н обьект хандалтат хэлний ангиудын шинж чанар ба классын гишүүд зэргээс бүрдэнэ.API нь бас хэлний үүрэгтэй Интерфэйс хийхэд fortran аас python интерфейс-г мөн SWIG ба F2PY түүлийг ашигладаг. API нь програм хангамжын фрэймворкыг төрөлжүүлж чаддаг: Фрэймворк нь өөр өөр API-г өөр өөр library-уудтай ерөнхийд нь хэрэгжүүлж чаддаг бөгөөд идэвхитэй төлөвт байгаа классын агууллагыг өөртөө удамшуулцж авч чаддаг.

Үйлдлийн систем API нь үйлдлийн систем ба аппликейшн хоёрын хоорондох онцлогийг гаргадаг. Ерөнхий том 3-н бэлэн болсон хэрэглээний програмын холбоос бол Windows үйлдлийн системийн WIN32 API, POSIX-ийн үндсэн суурь систем(үүнд: UNIX LINUX-ийн дэвшилтэд хувилбарууд болон MAC-OS-X(http://en.wikipedia.org/wiki/Mac_OS_X_Lion) орно)ийн POSIX API(http://en.wikipedia.org/wiki/POSIX_Threads) мөн JAVA(http://en.wikipedia.org/wiki/Java) виртуаль машиний загварийн програм болох JAVA API байна. POSIX жишээ нь: API нь POSIX дээр бичсэн кодыг аль нэг үйлдлийн систем дээр шалгаад дараа нь өөр үйлдлийн систем дээр ч ажиллах боломжтой болгох юм. Linux болон Berkeley Software Distribution POSIX API-уудыг хэрэгжүүлэх үйлдлийн системүүдийн жишээ юм. API-н онцлог нь эх код нь 2тын интерфейс аппликейшн буюу ABI-д суурилсан байдаг. Жишээ нь POSIX APIтай нийцдэг бол Linux Standard Base нь ABI тай нийцдэг.

Алсын API

Алсын API хөгжүүлэгчид нь хэлээс үл хамааран харилцаа холбооны тодорхой стандартыг ашиглан өөр технологиуд дээр хамтран ажиллах боломж олгодог. Гэхдээ прокси обьект дээр нь өөрчлөлт хийвэл алсын обьект дээр хүртэл өөрчлөлт хийх шаардлага гардаг.

Веб API

Веб API интерфейсын тодорхойлолт нь компани болон аппликейшнүүдийн хоорондох харилцан үйлчлэлийг харуулдаг.

Java API

Java маш олон бэлэн бэлдсэн class-уудтай байдаг ба тэдгээрийг JAVA API гээд байгаа юм. Эдгээр class-уудыг хэд хэдэн Package (багц)-д хувиарилсан байдаг. Package-ууд нь өөрсдийн гэсэн нэртэй байх ба жишээ нь javax.swing энэ package нь Swing GUI-н class-уудыг агуулдаг. Мөн java.util гэж маш хэрэгтэй ultilities буюу хэрэсэлүүдийн package байдаг. Ер нь бол эдгээр бэлэн class-уудыг ашиглахдаа package-г import хийх эсвэл зүгээр package-н нэрийг бичээд ард нь class-н нэрийг бичсэнээр ашиглах боломжтой юмаа. Бид 2 дахь аргийг нь ашиглаж байсан. System, String, Math гээд л эдгээр нь java.lang package-д багтдаг(java.lang package нь java-с цаанаас нь автоматаар import хийгдсэн байдаг). Жишээ нь : String обьект нь тэмдэгт стрингтэй ажиллахад хэрэг болох стейт, бихэвиорыг; File обьект нь програмчид файлсистем дээр хялбархнаар файл үүсгэж, устгаж, шалгаж, харьцуулж, өөрчлөх боломж олгодог; Socket обьект нь сүлжээний сокетуудыг үүсгэж, хэрэглэх боломж олгодог; олон янзын GUI обьектын контролууд нь янз бүрийн товчнууд, чекбоксууд болон графикан юзер интерфейстэй холбоотой өөр юу л байна бараг цөмийг нь агуулсан байдаг. Үнэндээ сонголт хийж болох мянга мянган классууд энэ санд бий. Эдгээрийг ашигласнаар програмч тухайн аппликейшны дизайнд л анхаарах боломжтой болох бөгөөд харин түүнийг ажилуулах (далд орших, доорх) дэд бүтцэд нэг их анхаараад байх шаардлагүй болдог.

Жавагийн Жава Платформ АПИ Тодорхойлолтуудын Лавлах нь (http://java.sun.com/javase/6/docs/api/index.html) Жава Платформ 6, Стандарт Эдишинтэй дагалдах бүх пакажууд, интерфейсүүд, классууд, фийлдүүд (fields), методуудын тухай тайлбар, тодорхойлолтыг агуулсан байдаг. Дизайн API-н загвар нь хэрэглээнд маш чухал ач холбогдолтой. Програмын интерфейсын үүрэг нь мэдээллийг нууцлан бичих бөгөөд ажиллах зарчим нь хэрэглэгчийн мэдэх шаардлагагүй програмын нарийн төвөгтэй модулиудыг нууцлах боломж олгодог. Тиймээс API загвар нь хэрэглэгчийн хүлээгдсэн цорын ганц хэрэгсэл юм. Програмын интерфейсийн загвар нь програм хангамжийн чухал хэсэг бөгөөд програм хангамжийн байгууламжийн цогц хэсэг юм. Иошуа Блок зэрэг хэд хэдэн зохиогч API-г хэрхэн зохион байгуулах талаар зөвлөмж гаргасан байдаг.

Бодлого

API технологийн компаниуд өөр хоорондоо нэгтгэх хамгийн түгээмэл нэг арга байдаг. Бизнесийн эко системийн гишүүд нь сайтар бодсоны эцэст API-г ашигласан юм. API-г гаргах гол бодлого нь:

• Хамгаалалт: API-г зөвхөн компаны дотоод ажилчид хэрэглэнэ. • Хамтрагч: Зөвхөн тодорхой бизнесийн түншүүд API ашиглаж болно. Жишээ нь Uber болон Lyft зэрэг машины үйлчилгээний компаниуд нь үйлчлүүлэгчдэд автомашины уралдаанд захиалга өгөхдөө шууд аппликейшнээс өгөхийг зөвшөөрдөг. • Нээлттэй: API – г бүх хэрэглэгчид ашиглах боломжтой.

Зохиогчийн эрх болон маргаан

2010 онд Oracle Corporation Android үйлдлийн систем суулгагдсан Java шинэ хэрэгжилтийг тараасан учир Google-ийг шүүхэд өгсөн. Google JavaApi-г хуулбарлах ямар нэгэн зөвшөөрөлгүй байсан хэдий ч OpenJDK-тай адил төсөл боловсруулсан. Шүүгч Уильям Alsup Oracle-н талд ялалтыг өгсөн хэдий ч google-н энэ үйл явдалаас шалтгаалан програм хангамжийн хуулбарын талаар тушаалуудыг өргөн барьсан байдаг.