fbpx

რა არის და როგორ მუშაობს API?

რა არის და როგორ მუშაობს API?

API ჩვენი ცხოვრების ჩუმი, მაგრამ განუყოფელი ნაწილია. ყოველდღიურად, როდესაც მაგალითად რაიმე სტატიას კითხულობ რომლის გაზიარებაც გსურს და იქვე აჭერ Facebook-ის ღილაკს და ძალიან მარტივად აშეარებ, შენ API-ს იყენებ.

თვითონ ეს აკრონიმი – API – იშიფრება, როგორც აპლიკაციის პროგრამირების ინტერფეისი (Application Programming Interface – API). ყველაზე მარტივად რომ ვთქვათ, ესაა ტექნოლოგია, რომელიც 2 სისტემას ერთმანეთთან აკავშირებს. მისი ფუნქციონირება ამ ანალოგიით ძალიან კარგად იხსნება:

წარმოიდგინე, რომ უზარმაზარ ბიბლიოთეკაში ხარ, “ბეჭდების მბრძანებლის” პოვნა გინდა და წარმოდგენაც კი არ გაქვს, საიდან შეიძლება, დაიწყო ძებნა. საბედნიეროდ, ამჩნევ ბიბლიოთეკარს, რომელსაც წინ წიგნების კატალოგი უდევს და მასთან მიდიხარ. ეუბნები, რომ “ბეჭდების მბრძანებლის” პირველი წიგნი გინდა. ის კი თაროების ლაბირინთში მიძვრება და შენთვის წიგნი მოაქვს.

ეს ანალოგია იყო, ახლა კი მთელი ეს პროცესი ტექნიკურ ტერმინებში გადავიყვანოთ:

ბიბლიოთეკა – მონაცემთა ბაზა (database)
წიგნები – მონაცემები (data)
შენ – მომთხოვნი (requestor), ანუ აპლიკაცია/სისტემა, რომელიც ინფორმაციას ეძებს
ბიბლიოთეკარი – API, ანუ მას მიაქვს მოთხოვნა მონაცემთა ბაზაში და აბრუნებს ინფორმაციას მომთხოვნ აპლიკაციაში
წიგნების კატალოგი – კონკრეტული ფორმატი, რომელსაც მოთხოვნა უნდა დაემორჩილოს, რომ API-სთვის გასაგები იყოს
წიგნი, რომელიც ბიბლიოთეკარისგან მიიღე – შენს მოთხოვნაზე API-ს პასუხი

მაშასადამე, მარტივი ენით – API არის ის, რაც ორ სისტემას შორის ინტერფეისის როლს ასრულებს და მონაცემთა მიმოცვლას, მის სისწრაფესა და უსაფრთხოებას უზრუნველყოფს.


API იქმნება დეველოპერებისთვის და დეველოპერების მიერ, მაგრამ განსაკუთრებული კომფორტი მოაქვს საბოლოო მომხმარებლებისთვის, ანუ ჩვენთვის, რადგან ჩვენგან უხილავად და წამზე ნაკლებ დროში მიმოცვლის სისტემებს შორის ინფორმაციას.

API-ები დიდი ხანია არსებობს, თუმცა ცოტა ხნის წინ მათი პოპულარობა საგრძნობლად გაიზარდა. კომპანიები იყენებენ ამ ტექნოლოგიას, რომ გაუსწრონ კონკურენტებს ინფორმაციის მომხმარებლისთვის მიწოდების უფრო სწრაფი და ეფექტიანი გზების მოძიებით.

როგორ მუშაობს API?

API კომუნიკაციას იმ წინასწარ დადგენილი წესების მიხედვით ამყარებს, რომლებიც განსაზღვრავენ, აპლიკაციებს/მოწყობილობებს როგორ შეუძლიათ ერთმანეთთან “ლაპარაკი”. განვიხილოთ რეალური მაგალითი:

როდესაც ტელეფონით საკუთარ Facebook-ის ექაუნთზე შედიხარ, შენ Facebook-ის აპლიკაციას ეუბნები, რომ გინდა შენს ექაუნთთან დაკავშირება. აპლიკაცია გამოიძახებს API-ს, რომ მან შენი ექაუნთი იპოვოს. ამის შემდეგ Facebook თავისი ერთ-ერთი სერვერიდან ამოიღებს ამ მონაცემს (შენს ექაუნთს) და მას აპლიკაციაში გამოუშვებს – და გაიხსნება. Voilà.

ყველა API შეიძლება დავყოთ ორ დიდ კატეგორიად, ესენია – საჯარო და კერძო.

საჯარო – ისეთი API, რომელიც ღიაა გარე სუბიექტის მიერ გამოსაყენებლად. მაგალითად ესენია Google maps API, რომელიც რუკის ფუნქციონალს გაგიმართავს პროდუქტში, ან LinkedIn-ის კომპანიის ძიების API, რომელიც კომპანიების ძებნის საშუალებას მისცემს შენს პროდუქტს.

კერძო – შიდა გამოყენებისთვის, დეველოპერებისთვის ან აპლიკაციებისთვის შექმნილი API, რომელთან წვდომაც შეზღუდულია.

API ორ სისტემას შორის ინტერფეისის როლს ასრულებს და მონაცემთა მიმოცვლას, მის სისწრაფესა და უსაფრთხოებას უზრუნველყოფს.

API-ის სახეობები

ახლა კი, API-ების ძირითად 2 ტიპს გავეცნოთ:

REST API – ყველაზე ხშირად გამოყენებული API და იშიფრება, როგორც რეპრეზენტაციის მდგომარეობის ტრანსფერი (representational state transfer) და მონაცემები JSON ფორმატით მოაქვს. საჯარო API-ების უმეტესობა მას სისწრაფის, საიმედოობისა და, მთლიან სისტემაზე ზემოქმედების გარეშე, მოდულური კომპონენტების ხელახალი გამოყენებით მასშტაბირების შესაძლებლობის გამო მოიხმარს. REST API მონაცემებთან წვდომას წინასწარ განსაზღვრული ოპერაციების გამოყენებით იძლევა. REST API-ები URL-ებსა და HTTP პროტოკოლზეა დაფუძნებული.

SOAP — (Simple Object Access Protocol) ცოტა უფრო კომპლექსურია, ვიდრე REST, რადგან გზავნილების მიმოცვლისას მეტ გამჭვირვალობას მოითხოვს. ის მონაცემთა ტრანსფერისთვის XML–ს იყენებს, უფრო მკაცრ წესებსა და მეტ უსაფრთხოებას ითხოვს.

საბოლოოდ, API-ს დადებითი და უარყოფითი მხარეებიც შევაჯამოთ.

დადებითი:

– ის user-თვის კარგად ინტეგრირებულ და მარტივ სამომხმარებლო გამოცდილებას ქმნის.

– თუ გამოიყენებთ მზა API-ს, შეგეძლებათ, თქვენი პროდუქტის იმ მახასიათებლებზე ფოკუსირდეთ, რომლებიც უფრო ფუნდამენტურია მისთვის.

– API-ს შეუძლია, კონკრეტული მახასიათებლების იმპლემენტაციის ძალისხმევა შეგიმციროს.

უარყოფითი:

– ზოგიერთი გარკვეული თანხა ჯდება (მოთხოვნების რაოდენობის მიხედვით).

– მთავარ უარყოფითი კი ისაა, რომ სხვა სისტემაზე ხდები დამოკიდებული.

ეს იყო იმ აკრონიმის მოკლე ახსნა, რომლის შესახებ ხშირად გაგვიგია, მაგრამ ბოლომდე შეიძლება ვერ ვხვდებოდეთ რას ნიშნავს. API-ები, როგორც აღვნიშნე უკვე დიდი ხანია არსებობენ და ესე იქნება სანამ ბიზნესები განაგრძობენ მათ გამოყენებას. ეს კი მათი რომ საკმაოდ ფართო გამოყენებით და მაღალი ეფექტიანობით აიხსნება.

რუბრიკის წარმდგენია

Share this post