Api nghĩa là gì

Về cơ bản có thể hiểu API là giao diện lập trình ứng dụng, phần mềm trung gian cho phép các ứng dụng giao tiếp với nhau. Để tìm hiểu rõ hơn về API là gì cũng như một số ví dụ về API, tham khảo nội dung bài viết dưới đây của Taimienphi.vn.


API là viết tắt của Application Programming Interface [giao diện lập trình ứng dụng], là phần mềm trung gian cho phép 2 ứng dụng giao tiếp với nhau. Mỗi khi sử dụng các ứng dụng, chẳng hạn như Facebook, hoặc các ứng dụng gửi tin nhắn tức thì hoặc kiểm tra thời tiết trên điện thoại, đồng nghĩa với việc bạn đang sử dụng API. Nếu bạn vẫn còn thắc mắc API là gì, thì hãy cùng Taimienphi.vn tìm hiểu dưới đây.

API [Application Programming Interface] là gì ? Tìm hiểu API là gì?

Ví dụ về API

Khi sử dụng ứng dụng trên thiết bị di động, ứng dụng sẽ kết nối Internet và gửi dữ liệu tới máy chủ. Sau đó máy chủ lấy dữ liệu, diễn giải dữ liệu, thực hiện các hành động cần thiết và gửi dữ liệu trở lại thiết bị của bạn. Ứng dụng giải thích dữ liệu và hiển thị các thông tin đọc được cho bạn. Và nó được gọi là API.

Để giải thích rõ hơn, tham khảo ví dụ dưới đây:

Thử tưởng tượng bạn đang ở trong một nhà hàng, và menu có 1 loạt các món ăn để bạn lựa chọn. Nhà bếp là một phần của hệ thống, thực hiện nhiệm vụ chuẩn bị các món mà bạn đặt. Cái còn thiếu ở đây là người để truyền đạt món ăn mà bạn yêu cầu tới nhà bếp và mang đồ ăn ra cho bạn. Đó chính là người phục vụ hoặc có thể nói là API. Người phục vụ sẽ truyền đạt các yêu cầu của bạn tới nhà bếp và mang đồ ăn ra cho bạn.

Ngoài ra API cũng cung cấp lớp bảo mật

Các dữ liệu trên điện thoại của bạn không bao giờ được tiếp xúc hoàn toàn với máy chủ, và tương tự máy chủ không bao giờ tiếp xúc với điện thoại. Thay vào đó các thiết bị giao tiếp vơi các gói dữ liệu nhỏ, chỉ chia sẻ những thứ cần thiết, giống như đặt hàng. Khi bạn nói với nhân viên nhà hàng những món mà bạn muốn ăn, họ sẽ truyền đạt yêu cầu của bạn tới nhà bếp và mang đồ ăn ra cho bạn.

API trở nên giá trị hơn, chiếm 1 phần lớn doanh thu của các doanh nghiệp. Các công ty lớn như Google, eBay, Salesforce.com, Amazon và Expedia chỉ là một vài trong số các công ty kiếm tiền từ API. Những gì “nền kinh tế API” đề cập đến là thị trường của API.

API hiện đại

Trong nhiều năm qua, API được mô tả là giao diện kết nối chung với ứng dụng. Gần đây API hiện đại bổ sung một số tính năng mới, làm cho nó trở lên hữu ích:

- API hiện đại tuân thủ các chuẩn [thường là HTTP và REST], dễ sửu dụng, dễ truy cập và dễ hiểu. Tham khảo bài viết HTML5 là gì tại đây

- Các API này được xử lý giống như các sản phẩm nhiều hơn là code. Chúng được thiết kế cho các đối tượng người dùng cụ thể [chẳng hạn như các nhà phát triển thiết bị di động], và có các phiên bản cho người dùng và duy trì vòng đời của nó.

- Vì các API được chuẩn hóa nhiều hơn nên vấn đề bảo mật và quản lý cũng nghiêm ngặt hơn, cũng như các vấn đề theo dõi và quản lý hiệu suất, quy mô.

- Giống như các sản phẩm phần mềm khác, API hiện đại cũng có vòng đời phát triển phần mềm [SDLC] riêng từ thiết kế, thử nghiệm, xây dựng, quản lý và các phiên bản. Ngoài ra các API hiện đại cũng được ghi lại cho người dùng và các phiên bản.

//thuthuat.taimienphi.vn/api-la-gi-30030n.aspx
Như vậy bài viết trên Taimienphi.vn vừa giải thích cho bạn API là gì cũng như cung cấp cho bạn các tính năng của API hiện đại. Cũng như API, có nhiều bạn đọc đang thắc mắc rằng SQL là gì?, một hệ thống cơ sở dữ liệu rất phổ biến mà bất cứ lập trình viên nào cũng cần đến. Nếu có thắc mắc hoặc câu hỏi nào còn thắc mắc, bạn đọc có thể để lại ý kiến của mình trong phần bình luận bên dưới, Taimienphi.vn sẽ trả lời câu hỏi của bạn sớm nhất có thể.

"API" đổi hướng tới đây. Đối với các định nghĩa khác, xem API [định hướng].

Một giao diện lập trình ứng dụng [tiếng Anh Application Programming Interface, viết tắt API] là một giao diện mà một hệ thống máy tính hay ứng dụng cung cấp để cho phép các yêu cầu dịch vụ có thể được tạo ra từ các chương trình máy tính khác, và/hoặc cho phép dữ liệu có thể được trao đổi qua lại giữa chúng. Chẳng hạn, một chương trình máy tính có thể [và thường là phải] dùng các hàm API của hệ điều hành để xin cấp phát bộ nhớ và truy xuất tập tin. Nhiều loại hệ thống và ứng dụng thực hiện API, như các hệ thống đồ họa, cơ sở dữ liệu, mạng, dịch vụ web, và ngay cả một số trò chơi máy tính. Đây là phần mềm hệ thống cung cấp đầy đủ các chức năng và các tài nguyên mà các lập trình viên có thể rút ra từ đó để tạo nên các tính năng giao tiếp người- máy như: các trình đơn kéo xuống, tên lệnh, hộp hội thoại, lệnh bàn phím và các cửa sổ. Một trình ứng dụng có thể sử dụng nó để yêu cầu và thi hành các dịch vụ cấp thấp do hệ điều hành của máy tính thực hiện. Hệ giao tiếp lập trình ứng dụng giúp ích rất nhiều cho người sử dụng vì nó cho phép tiết kiệm được nhiều thời gian tìm hiểu các chương trình mới, do đó khích lệ mọi người dùng nhiều ứng dụng hơn.

Tập tin:ApiWith3Clients.jpg

API với 3 clients, dùng ý niệm UML

Mục lục

  • 1 Mô tả
  • 2 Xem thêm
  • 3 Tham khảo
  • 4 Liên kết ngoài

Mô tảSửa đổi

Một trong các 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, là trừu tượng [abstract]. Phần mề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 tình huống, 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.

Có nhiều mô hình thiết kế khác nhau cho các APIs. Interfaces nhằm là cách thực thi nhanh nhất thường gồm các tập các hàm, thủ tục, biến và các cấu trúc dữ liệu. Tuy nhiên, các mô hình khác vẫn tồn tại, như bộ thông dịch dùng để ước giá biểu thức trong ECMAScript/JavaScript. Một API tốt thường cung cấp một "hộp đen" hay là một lớp trừu tượng [abstraction layer] bao bọc nó, nhằm đảm bảo là nhà lập trình không thể biết cách hiện thực cụ thể bên trong của mỗi hàm trong API. Điều này làm cho việc thiết kế lại hay cải tiến hàm của API đó trở nên dễ dàng hơn vì nó không làm đổ ỗ các đoạn mã khác mà có sử dụng các hàm đó.

Có hai dòng chính sách đối với việc công bố các APIs:

  1. Một số công ty bảo vệ APIs của họ một cách mạnh mẽ. Ví dụ, Sony thường chỉ cung cấp API chính thức của PlayStation 2 cho các nhà phát triển PlayStation có đăng ký. Điều này là vì Sony muốn giới hạn những người có thể viết trò chơi trên PlayStation 2, và muốn thu lợi nhuận từ những người này càng nhiều càng tốt. Đây thường là chính sách đối với các công ty mà họ không thu lợi từ việc bán các hiện thực API của họ. Tuy nhiên, PlayStation 3 là công bố hoàn toàn APIs.
  2. Một số công ty thì cung cấp miễn phí APIs. Ví dụ, Microsoft công bố hầu như hoàn toàn thông tin về các API, để cho các phần mềm có thể được viết chạy trên nền Windows. Việc bán của các phần mềm hãng thứ 3 đồng thời với việc phải mua Hệ điều hành Microsoft Windows. Đây thường là các công ty thu lợi nhuận từ việc bán các hiện thực API.

Một số APIs, chẳng hạn các API là chuẩn cho một hệ điều hành, được hiện thực dưới dạng các thư viện mã độc lập được phân phối kèm theo hệ điều hành. Một số khác thì đòi hỏi nhà sản xuất phần mềm phải tích hợp API trực tiếp vào trong chương trình. Microsoft Windows APIs đi kèm theo hệ điều hành cho phép mọi người có thể sử dụng chúng. Phần mềm cho các hệ thống nhúng như thiết bị chơi trò chơi thường thuộc vào loại tích hợp vào trong ứng dụng. Trong khi các tài liệu API chính thức của PlayStation là nên đọc, nhưng nó chẳng giúp ích gì nếu ta chẳng có các hiện thực của nó, dưới dạng một thư viện độc lập hay bộ phát triển phần mềm.

Một API mà cho phép truy xuất và sử dụng tự do được gọi là "mở." Các APIs được cung cấp bởi phần mềm mở [như mọi phần mềm được phân phối theo giấy phép đăng ký GNU], là mở theo đúng nghĩa, vì mọi người có thể xem mã nguồn của phần mềm và tìm ra API. Mặc dù việc tham khảo hiện thực vẫn tồn tại cho một API [như với Microsoft Windows cho Win32 API], thì việc tạo thêm các hiện thực bổ sung vẫn có thể diễn ra. Ví dụ, hầu hết các Win32 API có thể được cung cấp từ hệ thống UNIX dùng phần mềm tên là Wine.

Xem thêmSửa đổi

  • Simple DirectMedia Layer - Thư viện lập trình đa phương tiện, đa hệ thống SDL
  • Document Object Model
  • Microsoft Platform Development Kit - Giao diện lập trình hệ thống Microsoft Windows
  • Application binary interface [ABI]
  • Ontology [computer science]
  • Open Service Interface Definitions [OSID]
  • Plugin
  • DirectX
  • Universal Home API
  • BIOS call interface
  • Single UNIX Specification
  • Java API
  • ASPI - giao diện lập trình linh kiện
  • Carbon và Cocoa

Tham khảoSửa đổi

Liên kết ngoàiSửa đổi

  • eBay API
  • EVDB API Lưu trữ 2005-12-26 tại Wayback Machine
  • Flickr API
  • Google API
  • Linux Kernel API
  • Skype API Lưu trữ 2005-12-27 tại Wayback Machine
  • Yahoo API Lưu trữ 2011-12-19 tại Wayback Machine
  • Java API
  • PayPal API
  • Rest API

Video liên quan

Chủ Đề