জানুন এপিআই (API) কী এবং কেন ব্যবহার করা হয়

কখনো ভেবে দেখেছেন কি, কম্পিউটার, বিভিন্ন সফটওয়্যার, এবং আপনার ভিজিট করা ওয়েবসাইট গুলো একে অপরের সাথে কীভাবে কথা বলে বা সম্পর্ক স্থাপন করে? ওয়েবসাইট গুলো একে অপরের সাথে কানেক্টেড থাকার দরকার কেন পড়ে; ধরুন আপনি কোন ওয়েবসাইট থেকে কোন এয়ার লাইন্সের টিকিট বুক করতে চান, তাহলে আপনাকে সেই এয়ার লাইন্সের ওয়েবসাইটে যেতে হবে এবং টিকিট বুক করতে হবে।

কিন্তু এমন অনেক ওয়েবসাইট থাকে যারা আরো অনেক এয়ার লাইন্সের ওয়েবসাইটের সাথে কানেক্টেড থাকে এবং আপনি একটি ওয়েবসাইট থেকেই সকল এয়ার লাইন্স টিকিট বুক করতে পারেন। আবার যারা অনলাইন শপিং করেন তারা নিশ্চয় জানেন এমন অনেক ওয়েবসাইট থাকে যেখানে একটি ওয়েবসাইট থেকে সকল ই-কমার্স সাইটের পণ্য মূল্য তুলনা এবং দাম চেক করা যায়, তো এই সাইট গুলো কীভাবে একসাথে একাধিক সাইটের সাথে কানেক্টেড থাকে। এটি সম্পূর্ণভাবে বুঝতে হলে আপনাকে এপিআই (API) সম্পর্কে জানতে হবে!

এপিআই কি?

এপিআই এর সম্পূর্ণ রুপ হচ্ছে অ্যাপ্লিকেশন প্রোগ্রামিং ইন্টারফেস (Application Programing Interface)। একজন সাধারন ইউজার হিসেবে কখনোই এর মান দিয়ে এর কাজ বোঝা সম্ভব নয়, চলুন সহজ করে সম্পূর্ণ বিষয়টি বোঝার চেষ্টা করি।

এপিআইকে মূলত এক ধরনের টুল বলতে পারেন যেটা একটি সফটওয়্যারকে আরেকটি আলাদা সফটওয়্যারের সাথে কানেক্ট করতে এবং একই রুলে চলতে সাহায্য করে। এখন ধরুন আপনি একজন ৩ডি মডেলার এবং আপনার একজন প্রতিবেশী হলেন সিভিল ইঞ্জিনিয়ার। ইঞ্জিনিয়ার সাহেব আপনার কাছ থেকে তার নেক্সট প্রজেক্টের জন্য একটি ৩ডি মডেল ডিজাইন করিয়ে নিতে চান।

কিন্তু সমস্যা হচ্ছে আপনি কথা বলেন বাংলা ভাষায় আর আপনার প্রতিবেশী ইঞ্জিনিয়ার কথা বলেন চাইনিজ ভাষায়, তাহলে আপনারা নিজেদের মধ্যে কথা বলবেন কীভাবে? অবশ্যই আপনাদের একজন অনুবাদকের প্রয়োজন পড়বে, যিনি উভয় ভাষা জানেন এবং আপনাদের একে অপরেরটা বুঝিয়ে দিতে পারবেন। এপিআইকে আপনি এই উদাহরনের অনুবাদকের সাথে তুলনা করতে পারেন, এটি এমন একটি টুল যেটা বিভিন্ন অ্যাপ্লিকেশনের কথা বোঝে এবং একটার সাথে আরেকটাকে কানেক্টেড করে দেয়।

যেকোনো প্রোগ্রামের সাথে এপিআই যুক্ত করানো যেতে পারে এবং সেটিকে আলাদা প্রোগ্রামের সাথে কানেক্ট করা যেতে পারে। ধরুন আপনার উইন্ডোজ কম্পিউটারের নোটপ্যাডে আপনি কিছু লিখলেন এবং সেটাকে প্রিন্ট করতে চাচ্ছেন। এবার আপনার নোটপ্যাড প্রোগ্রামটি যদি প্রিন্টারের এপিআই এর সাথে সংযুক্ত থাকে তবে নোটপ্যাড প্রিন্টারকে সরাসরি আদেশ দিতে পারবে এবং প্রিন্ট করাতে পারবে। আবার ধরুন আপনি একটি ওয়েবসাইট তৈরি করলেন যেখান থেকে যেকোনো প্রতিষ্ঠানের এবং যেকোনো পরীক্ষার রেজাল্ট দেখতে পাওয়া সম্ভব।

তবে আপনার সাইটটিকে সমস্ত রেজাল্ট সাইট এবং তাদের ডাটাবেজের সাথে এপিআই এর মাধ্যমে কানেক্ট করতে হবে। কোন ইউজার যখন কোন রেজাল্ট জানতে চেয়ে আপনার সাইটে অনুসন্ধান করবে, এপিআই তখন ঐ রেজাল্ট সাইটের ডাটাবেজ চেক করবে এবং তার সামনে ঐ ডাটাবেজ থেকে রেজাল্ট প্রদর্শিত করবে। এভাবে এপিআই এর অনেক সুবিধা রয়েছে, যেগুলোর মাধ্যমে অনেক অ্যাপ্লিকেশন বা অনেক ওয়েবসাইটকে একত্রিত করে আরো বেটার এবং সহজে সেবা প্রদান করা হয়ে থাকে।

ধরুন আপনার কাছে একটি আবহাওয়া অ্যাপ আছে যেটা আপনার লোকাল অবস্থানের আবহাওয়া বার্তা প্রদান করে। কিন্তু চিন্তা করে দেখুন, যদি এই অ্যাপটিকে সারাদেশের সকল লোকাল অ্যাপের সাথে যুক্ত করানো যায় তবে একটি অ্যাপ থেকেই আপনি সারাদেশের আবহাওয়া বার্তা পেতে পারবেন।

আশা করি এপিআই কি এবং কীভাবে কাজ করে এটা নিয়ে আপনার মনে আর কোন সন্দেহ নেই, এবার বিভিন্ন পর্যায়ে এর ব্যবহার গুলো নিয়ে আলোচনা করা যাক।

ব্যবসায় এপিআই

অনলাইন ভিত্তিক কোম্পানি এবং ওয়েবসাইটের মাধ্যমে সেবা প্রদানকারী কোম্পানিদের সংখ্যা বর্তমানে অগুনতি। গুগল, ফেসবুক, টুইটারের মতো বড় বড় কম্পানিরা তাদের মধ্যের লড়ায় বজায় রাখার জন্য তৃতীয়পক্ষ সাইটে তাদের সেবা প্রদর্শন করানোর ব্যবস্থা করিয়ে থাকেন।

আপনি অনেক ওয়েবসাইট ভিজিট করে থাকলে অবশ্যই লক্ষ্য করবেন, আর্টিকেল তো থাকে ঐ সাইটেই কিন্তু সেখানে সরাসরি ফেসবুক কমেন্ট যুক্ত করা থাকে, অর্থাৎ ওয়েবসাইটের আর্টিকেলে ফেসবুক কমেন্ট করা যায় এবং কমেন্ট গুলো ফেসবুকেও পাবলিশ হয়। আবার দেখা যায়, ওয়েবসাইট থেকেই টুইটারের লেটেস্ট পোষ্ট গুলো দেখতে পাওয়া যাচ্ছে, এগুলো সবই কিন্তু এপিআই দ্বারা সম্ভব হয়ে থাকে।

কোরাতে দেখবেন ফেসবুক বা গুগল অ্যাকাউন্ট ইউজ করে লগইন করা যায়, এটি কীভাবে কাজ করে? কোরা সরাসরি ফেসবুক, গুগলের ইউজার ডাটাবেজের সাথে কানেক্টেড রয়েছে, যখন কোন ইউজার ফেসবুকের মাধ্যমে লগইন করে ফেসবুক কোরাকে ঐ ইউজারের ডিটেইলস প্রদান করে এবং কোরাতে লগইন হয়ে যায়।

এতে আপনার এক অ্যাকাউন্ট দিয়েই সকল কাজ হয়ে যায়। এপিআই এর মূল উদ্দেশ্য মূলত এটাই, সকল ওয়েবসাইট এবং সফটওয়্যার গুলোকে একত্রে কাজ করিয়ে সেবার মান উন্নত করা।

ব্রাউজারে এপিআই

শুধু আলাদা অ্যাপ্লিকেশন বা ওয়েবসাইট গুলো নয়, বরং আপনার পছন্দের ইন্টারনেট ব্রাউজারটিতেও এপিআই ব্যবহৃত হয়। আপনার ইন্টারনেট ব্রাউজারটি ওয়েবসাইট এবং বিভিন্ন ওয়েব অ্যাপ্লিকেশনের সাথে আপনার কম্পিউটার বা সিস্টেমকে সংযুক্ত করতে সাহায্য করে। ধরুন আপনি ফেসবুকে ভয়েস বা ভিডিও চ্যাট করতে চাচ্ছেন কিংবা স্কাইপ এর ওয়েব ভার্সন ব্যবহার করতে চান, এক্ষেত্রে এই ওয়েব অ্যাপ্লিকেশন গুলো আপনার সিস্টেম থেকে মাইক, স্পীকার, ওয়েবক্যাম ইত্যাদি অ্যাক্সেস করার প্রয়োজন রয়েছে। আর এই অ্যাক্সেস গুলো আপনার ইন্টারনেট ব্রাউজার সেই ওয়েবসাইট পর্যন্ত এপিআই এর মাধ্যমে পৌছিয়ে থাকে।

অনেক ওয়েবসাইট রয়েছে যারা আপনার লোকেশন জানতে চায় কিংবা আপনার সিস্টেম ডিটেইলস দেখতে চায়, ব্রাউজার এদের সাহায্য করে। এমনকি এপিআই এবং ব্রাউজারের সাহায্যে কোন ওয়েবসাইট কুকিজ না স্টোর করেই আপনার কম্পিউটারের কোন ফাইল অ্যাক্সেস বা স্টোর করতে পারে।

গভর্নমেন্টে এপিআই

সফটওয়্যার গুলো বা ওয়েবসাইট বা ব্রাউজার ছাড়াও সরকার নিজেও বিভিন্ন সার্ভিসকে এক জায়গা থেকে নিয়ন্ত্রন করার জন্য এপিআই ব্যবহার করে থাকে। দেশের বিভিন্ন বাহিনির ডাটাবেজ একই সূত্রে বাঁধা থাকতে পারে যেখানে কোন প্রয়োজনে এক যাওয়া থেকে তথ্য অনুসন্ধান করেই সকল তথ্য পাওয়া যায়। আবার সকল শহরের সিসিটিভি ক্যামেরা গুলোকেও একত্রে এক জায়গা থেকে নিয়ন্ত্রন করার জন্য কানেক্টেড করে রাখা হয়।

এপিআই এর সবচাইতে বড় সুবিধা হচ্ছে কোন অ্যাপ্লিকেশনে নতুন ফিচার যুক্ত করার জন্য নতুন করে প্রোগ্রামিং করার প্রয়োজনীয়তা পড়ে না। বরং একটি অ্যাপ্লিকেশন থেকে আর সুবিধা আরেকটি অ্যাপ্লিকেশনে যুক্ত করা যায়। ধরুন একটি অ্যাপ্লিকেশনে শুধু টেক্সট চ্যাট করা যায় কিন্তু সেটাকে অন্য কোন অ্যাপ্লিকেশনের এপিআই এর সাথে যুক্ত করিয়ে ভয়েস চ্যাট, ভিডিও চ্যাট সহ সকল ফিচার পাওয়া সম্ভব। আপনি নিজে চাইলেও ফেসবুকের এপিআই ব্যবহার করে নিজের ফেসবুক অ্যাপ কিংবা ম্যাসেঞ্জার বানাতে পারবেন।

শেষ কথা

তো এপিআই বলতে আমরা কি বুঝলাম, এটি মূলত একটি টুলস যেখানে প্রোগ্রামিং এবং কম্যান্ড ব্যাবহারের মাধ্যমে এক অ্যাপ্লিকেশন আরেকটি অ্যাপ্লিকেশনের সাথে যুক্ত হতে পারে এবং নিজেদের ফিচার একে অপরের সাথে ভাগাভাগি করে নিতে পারে। কম্পিউটার সফটওয়্যার, অ্যাপ্লিকেশন, ওয়েবসাইট, ওয়েব অ্যাপ্লিকেশন, সার্ভার, ডাটাবেজ ইত্যাদি এপিআইএর মাধ্যমে কানেক্টেড থাকতে পারে। এই কানেকশনের মাধ্যমে সার্ভিসকে আরো উন্নত করা হয় এবং এক জায়গা থেকেই সবকিছু নিয়ন্ত্রন এবং সকল ফিচার প্রদান করতে সাহায্য করে।

এক কথায় বলতে বর্তমান সময়ে এপিআই ছাড়া কিছুই সম্ভব নয়, প্রত্যেকটি আপ্লিকেশনে বা ওয়েবসাইটে বা যেকোনো জায়গায় এপিআই সাপোর্ট থাকতেই হবে, স্ক্রাচ থেকে নিশ্চয় কিছু ডেভেলপ করা আর সম্ভব নয়!

You may also like...

Leave a Reply