API là gì? Phân loại và Ví dụ về API

0

API là gì?

API là cụm viết tắt của Application Programming Interface (giao diện lập trình ứng dụng). Đây là một giao tiếp phần mềm được dùng bởi các ứng dụng khác nhau. Cũng giống như bàn phím là thiết bị giao tiếp giữa người dùng và máy tính, thì API là giao tiếp phần mềm, ví dụ như giữa chương trình và hệ điều hành (OS).

API của từng OS là khác nhau, do đó các OS khác nhau thì thường sẽ không tương thích với nhau. Ví dụ những phần mềm trên Linux không thể chạy được trên máy Windows bởi vì Linux Windows có các API không giống nhau.

Mục đích chính của một API là cung cấp khả năng truy xuất đến một tập các hàm hay dùng, ví dụ, hàm để vẽ các cửa sổ hay các icon trên màn hình. Các API, cũng như hầu hết các interfaces, đều có tính trừu tượng (abstract). Phần mềm muốn cung cấp truy xuất đến chính nó thông qua các API cho sẵn, phải hiện thực API đó. Trong nhiều trường hợp, một API thường là một phần của bộ SDK, hay software development kit. Một bộ SDK có thể bao gồm một API cũng như các công cụ/phần cứng, vì thế hai thuật ngữ này không thay thế cho nhau được.

Phân loại API

1. Hệ thống API trên nền tảng web, hay gọi là web API

Loại API này hiện đang rất phổ biến, các website lớn đều cung cấp hệ thống API cho phép bạn kết nối, lấy dữ liệu hoặc cập nhật dữ liệu vào hệ thống.

Ví dụ, nếu bạn sử dụng dịch vụ bán hàng trực tuyến của Lazada, bạn sẽ cần phải thực hiện một số các tác vụ như tạo sản phẩm mới, cập nhật sản phẩm mới. Giả sử bạn có 1000 mặt hàng, việc cập nhật số lượng tồn kho bằng tay rất vất vả chưa kể nhầm lẫn do chủ quan người nhập. Lazada cung cấp hệ thống API, từ đây bạn có thể xây dựng một kết nối từ hệ thống của bạn sang Lazada và mọi thứ (trong đó có kho hàng, số tồn…) sẽ được đồng bộ với nhau.

2. Hệ thống API trên Hệ điều hành

Khái niệm này có trước cả web API, Microsoft cung cấp các hệ điều hành Windows cùng các tài liệu API là đặc tả các hàm, phương thức, lời gọi hàm cũng như các giao thức kết nối cho lập trình viên, giúp lập trình viên có thể tạo ra các phần mềm ứng dụng có thể tương tác trực tiếp với hệ điều hành.

3. Các API của thư viện phần mềm hoặc framework

API mô tả và quy định các hành vi mong muốn mà các thư viện cung cấp, một API có thể có nhiều các triển khai khác nhau và nó cũng giúp cho một chương trình viết bằng ngôn ngữ này có thể sử dụng thư viện được viết bằng ngôn ngữ khác. API cũng có thể liên quan đến các framework khi framework được xây dựng trên nhiều các thư viện và thực thi nhiều các API khác nhau. Tuy nhiên việc sử dụng API trên framework không giống với thông thường, truy cập đến các API được xây dựng trong framework sẽ mở rộng nội dung của nó và các class mới được “cắm” vào (plug) khung tự nó. Kiểm soát tổng thể luồng ứng dụng có thể nằm ngoài tầm kiểm soát của thành phần gọi bằng cách đảo ngược kiểm soát – Inversion of Control.

Tầm quan trọng của API

API là khớp nối giữa các thành phần phần mềm.

Giả sử bạn có một tính năng cần cung cấp cho module khác phần mềm khác thì bạn sẽ mở một API để tác giả của module/ phần mềm truy cập vào.

Ví dụ, trên các thiết bị điện toán thì hệ điều hành là phần mềm duy nhất có khả năng truy cập tới các thiết bị phần cứng. Do đó, hệ điều hành sẽ phải cung cấp API để ghi file, đọc file, đọc dữ liệu…. Mỗi ứng dụng khi hoạt động sẽ gọi tới API tương ứng của hệ điều hành.

Khi một phần mềm gọi tới API, phần mềm gọi có thể cung cấp dữ liệu đầu vào và đòi hỏi dữ liệu đầu ra từ API hoặc không, nhưng trong mọi trường hợp, phần mềm gọi để có thể tiếp tục hoạt động thì nó cần phần mềm cung cấp phải thực hiện những gì đã cam kết qua API.

Tuy nhiên, trên thực tế, bạn phải phụ thuộc vào Microsoft. Nếu Microsoft đóng API, ứng dụng của bạn sẽ không sử dụng được nữa.

Tóm lại, người ta thường ví von tầm quan trọng của API là: “Nếu khái niệm API không còn nữa thì trái đất này sẽ ngừng quay.”

Hiểu hơn về API qua ví dụ về Facebook

Bạn có thể sử dụng tài khoản Facebook của mình để đăng nhập vào rất nhiều trang web không do Facebook kiểm soát. Để người dùng của mình có thể sử dụng thông tin cá nhân Facebook trên các trang này, điều duy nhất mạng xã hội này cần làm là tạo ra một API đăng nhập tài khoản Facebook. Mỗi lần bạn click vào nút “Đăng nhập với Facebook” trên Instagram, WhatsApp hay Quora thì các trang web/ứng dụng này sẽ “gọi” tới API của Facebook. Công việc xác thực danh tính sẽ được Facebook thực hiện, các trang web và các ứng dụng không cần phải nhúng tay vào. Sau khi xác thực xong, Facebook sẽ “ném” lại cho các trang web và ứng dụng gọi tới API của mình trên một gói tin có nội dung đại loại như “Đây là anh Lê Hoàng, tài khoản Facebook là abcxyz” chẳng hạn. Nhờ có API mà Facebook có thể thực hiện tính năng xác thực hộ các dịch vụ khác.

Nguồn: Tech.vccloud.vn

Thegioibantin.com | VinaAspire News

Nguồn: Tech blog Bizfly Cloud

Để lại một câu trả lời

Địa chỉ email của bạn sẽ không được công bố.

may lam kem nguyen lieu lam kem - nguyen lieu lam yogurt bột lm kem may ao thun may ba lo theo yeu cau san xuat moc khoa gia re may o thun quảng co dịch vụ bốc xếp Sản xuất đồ bộ