Sunday, 13 October 2019

API คืออะไร

ในปัจจุบัน Mobile Application ต่างๆ หรือหน้า Web Application ที่เราเห็นกันทุกวันนี้ การทำงานทุกอย่างไม่ได้อยู่ใน Application ของ Facebook ที่ผู้ใช้งานแต่ละคนได้ Install หรือติดตั้งลงไว้ในมือถือ หรือหน้าเว็บ Facebook ที่คุณเปิดขึ้นมาเพียงอย่างเดียว แต่ต้องพึ่งพาความสามารถของ API แทบทั้งสิ้น

API คืออะไร

API ย่อมาจาก Application Programming Interface คือ  คำสั่ง (Code) ที่อนุญาตให้ Software Program สามารถสื่อสารระหว่างกันได้ ถ้าจะพูดในภาษานักพัฒนา Application แล้ว API คือเป็นช่องทางสำหรับขอใช้บริการคำสั่ง จาก Operation System (OS) หรือ Application อื่นๆ ซึ่งมันใช้งานโดยติดตั้ง Function และเรียกใช้งานตาม Doncument ที่เขียนไว้ และ API เป็นอีกหนึ่งช่องทางที่จะเชื่อมต่อกับเว็บไซต์ผู้ให้บริการ API เช่น BOT และจากที่อื่นและเป็นตัวกลางที่ทำให้โปรแกรมประยุกต์เชื่อมต่อกับโปรแกรมประยุกต์อื่น หรือเชื่ิอมการทำงานเข้ากับระบบปฏิบัติการได้

การใช้งาน APIs(Application Programming Interface)

      ในปัจจุบันนี้ API ถูกใช้งานใน application เพื่อสื่อสารกับ user โดยไม่จำเป้นต้องมีความรู้ บริษัทใหญ่ๆหลายบริษัทมีการเปิด API ให้ภายนอกเข้ามาใช้งาน เช่น facebook, google, twitter ผู้พัฒนาระบบที่สนใจ สามารถนำเอา API เหล่านี้ไปไปต่อยอด ซึ่งทางบริษัทก็สามารถขยายฐานลูกค้าออกไปได้อีก รูปแบบการนำเอา API ไปใช้งานมีดังนี้

 

(1) Web APIs

นิยมใช้กันมากในปัจจุบัน เพราะอยู่ในกลุ่มของ HTTP และขยายออกไปสู่รูปแบบ XML และ JSON ซึ่งโดนรวมแล้วก็คืออยู่บน web service เช่น
  • SOAP (Simple Object Access Protocol) ใช้ XML format ส่งข้อมูล
  • REST (Representational State Transfer) สามารถใช้ XML หรือ JSON format ส่งข้อมูล

(2) Operating Systems

API สามารถใช้งานในการสื่อสารระหว่าง application และ operating system เช่น POSIX หรือ มาตราฐานการสือสารของ OS เองก็มี API เป็น command line เพื่อควบคุมการทำงานของ OS

(3) Remote APIs

Remote APIs ทำไว้ให้ developer สามารถเข้าควบคุมทรัพยากรผ่านทาง protocol เพื่อให้มีมาตราฐานการสือสารเดียวกัน ถึงแม้ว่าจะเป็นคนละ technology เช่น Database API สามารถอนุญาตให้ developer เข้ามาดึงข้อมูลใน database หลากหลายชนิดได้ ผ่าน function เดียวกัน เพราะฉะนั้น remote API จึงถูกใช้บ่อยในงาน maintenance ด้วยทำทำงานที่ฝั่ง client ให้ไปดึงข้อมูลจาก server กลับลงมาทำงาน

(4) Libraries and frameworks

API มักจะเอาไปใช้เป็น software library ซึ่งเขียนขึ้นตาม document ในรูปบบภาษา program ที่ต่างกันออกไป ตามความเหมาะสมกับงาน เพื่อเอาไปทำเป็น framework ให้กับระบบใช้ในการสื่อสารหากัน

 

 

API ถือเป็นกลุ่มของฟังชั่น ขั้นตอน หรือคลาส (Class) ที่ระบบปฏิบัติการ (OS) หรือผู้ให้บริการ สร้างขึ้นมา เพื่อรองรับการเรียกขอข้อมูล จากโปรแกรมอื่น ๆ ทั้งนี้ API สามารถใช้งานได้กับภาษาในการเขียนโปรแกรมที่รองรับเท่านั้น ซึ่งมันจะถูกจัดทำให้อยู่ในรูปแบบ Syntax หรือ element ที่สามารถนำไปใช้ได้อย่างสะดวกสบาย

 

โดยปกติแล้ว applicaations ที่มี APIs จะต้องถูกเขียนเป็นภาษา programming และ พัฒนาเพิ่มได้ง่าย จึงจำเป็นต้องมี่การตรวจสอบโครงสร้าง API เพราะฉะนั้น API ที่ดี ผู้ที่ออกแบบต้องให้ความสำคัญในการ test เพื่อตรวจสอบ Logic ที่สามารถเกิดขึ้นได้จากการใช้งาน

APIs สร้างขึ้นจากส่วนสำคัญ 2 อย่าง 

  • (1) ข้อกำหนดที่จะอธิบายการแลกเปลี่ยนข้อมูลระหว่าง program ซึ่งทำออกมาในลักษณะ document เพื่อบอกว่า request/response ต้องเป็นอย่างไร
  • (2) Software ที่เขียนขึ้นตามข้อกำหนด และทำการเผยแพร่ออกไปให้ใช้งาน

 

ประโยชน์ของ API

  • สามารถรับส่งข้อมูลข้าม Server ได้
  • ไม่จำเป็นต้องเข้าหน้าเว็บหลัก ก็มีข้อมูลของเว็บหลัก จากเว็บที่ดึง APIเอพีไอ แบ่งเป็น
  • API ที่ขึ้นกับภาษา (language-dependent API) คือ เอพีไอ ที่สามารถการเรียกใช้จากโปรแกรมที่เขียนขึ้นด้วยภาษาเพียงภาษาใดภาษาหนึ่ง
  • API ไม่ขึ้นกับภาษา (language-independent API) คือ เอพีไอ ที่สามารถเรียกได้จากโปรแกรมหลายๆภาษา

      

ตัวอย่าง API ที่นิยมในปัจจุบัน

  • BOT API ที่มี REST API ให้ค้นหา แล้วตรวจสอบข้อมูล Exchange Currency แและ Servives อื่นๆได้
  • Twitter APIs: มี REST API ให้ค้นหา แล้วตรวจสอบข้อมูล trends ได้ โดยTwitter มีหลายเว็บ ที่มีการเชื่อมโยงข้อมูลกับ twitter ทั้งเป็นการอ่านข้อมูลจาก twitter หรือ ส่งข้อมูลเข้า twitter เองก็ตาม ซึ่งล้วนอาศัยการเชื่อมต่อแลกเปลี่ยนข้อมูลกัน ด้วย API นั้นเอง
  • Google Maps API: เปิดให้ใช้งานเพื่อนำเอาแผนที่ของ Google มาลงใน webpage โดยอาศัย JavaScript หรือ Flash และ Google Maps API คือบริการของGoogle อีกรูปแบบหนึ่งที่เราสามารถนำข้อมูลของ Google Maps ที่ทาง Google ให้บริการโดยส่วนมากจะนำมาใช้กับเว็บไซต์ ของบริษัทฯหรือเว็บไซต์ห้างร้านต่างๆ เพื่อเป็นอีกช่องทางที่ให้ลูกค้ารู้ว่าบริษัทฯ หรือห้างร้านนั้น
  • YouTube APIs: Google ยอมให้ developer สามารถนำเอา Clip video บน YouTube ไปลงใน website หรือ application ได้
  • Amazon Product Advertising API: เปิด API ให้ใช้ค้นหาสินค้า และ การโฆษณาผ่านทาง website
  • Flickr API: เพื่อให้ developer สามารถเข้าถึง คลังรูปภาพใน community

 






Google+

View My Stats