একটি এপিআই কি?

আপনি সম্ভবত "এপিআই" শব্দটি আগত দেখেছেন। অপারেটিং সিস্টেম, ওয়েব ব্রাউজার এবং অ্যাপ্লিকেশন আপডেটগুলি প্রায়শই বিকাশকারীদের জন্য নতুন এপিআই ঘোষণা করে। তবে একটি এপিআই কি?

আবেদন কার্যক্রম ইন্টারফেস

এপিআই শব্দটি একটি সংক্ষিপ্ত রূপ এবং এটি "অ্যাপ্লিকেশন প্রোগ্রামিং ইন্টারফেস" হিসাবে দাঁড়িয়েছে।

কোনও রেস্তোঁরায় মেনুর মতো একটি এপিআই ভাবুন। মেনুটি প্রতিটি খাবারের বিবরণ সহ আপনি অর্ডার করতে পারেন এমন খাবারের একটি তালিকা সরবরাহ করে। আপনি কী মেনু আইটেমগুলি চান তা উল্লেখ করার পরে, রেস্তোঁরাটির রান্নাঘরটি কাজ করে এবং আপনাকে কিছু তৈরি খাবার সরবরাহ করে। রেস্তোঁরা কীভাবে সেই খাবারটি প্রস্তুত করে তা আপনি ঠিক জানেন না এবং আপনার সত্যিকারের প্রয়োজন নেই।

একইভাবে, একটি এআইপিআই বিকাশকারীরা কী করতে পারে সেগুলির সংখ্যার ক্রিয়াকলাপের তালিকা করে এবং তারা কী করে তার একটি বিবরণ সহ। বিকাশকারীকে অগত্যা জেনে রাখা প্রয়োজন হয় না, উদাহরণস্বরূপ, একটি অপারেটিং সিস্টেম কীভাবে একটি "সংরক্ষণ করুন সংরক্ষণ করুন" ডায়ালগ বাক্স তৈরি করে এবং উপস্থাপন করে। তাদের কেবল এটি জানতে হবে যে এটি তাদের অ্যাপ্লিকেশনটিতে ব্যবহারের জন্য উপলব্ধ।

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

তবে এটি ব্যাপকভাবে সঠিক। এপিআইগুলি বিকাশকারীদের একটি প্ল্যাটফর্মের বাস্তবায়নের সুযোগ নিয়ে নিতি-কৌতুকপূর্ণ কাজ করতে সময় বাঁচাতে দেয়। এটি কোড বিকাশকারীদের তৈরি করার পরিমাণ হ্রাস করতে সহায়তা করে এবং একই প্ল্যাটফর্মের জন্য অ্যাপ্লিকেশনগুলিতে আরও ধারাবাহিকতা তৈরি করতে সহায়তা করে। API গুলি হার্ডওয়্যার এবং সফ্টওয়্যার সংস্থানগুলিতে অ্যাক্সেস নিয়ন্ত্রণ করতে পারে।

API গুলি বিকাশকারীদের জন্য জীবনকে সহজতর করে তোলে

বলুন আপনি একটি আইফোনের জন্য একটি অ্যাপ্লিকেশন বিকাশ করতে চান। অ্যাপলের আইওএস অপারেটিং সিস্টেমটি আপনার কাছে এটিকে আরও সহজ করার জন্য প্রতিটি অপারেটিং সিস্টেম যেমন করে API তেমনি প্রচুর পরিমাণে এপিআই সরবরাহ করে।

আপনি যদি এক বা একাধিক ওয়েব পৃষ্ঠাগুলি দেখানোর জন্য কোনও ওয়েব ব্রাউজার এম্বেড করতে চান তবে উদাহরণস্বরূপ, আপনাকে কেবল নিজের অ্যাপ্লিকেশনের জন্য আপনার নিজের ওয়েব ব্রাউজারটিকে স্ক্র্যাচ থেকে প্রোগ্রাম করতে হবে না। আপনি আপনার অ্যাপ্লিকেশনটিতে একটি ওয়েবকিট (সাফারি) ব্রাউজার অবজেক্ট এম্বেড করতে WKWebView API ব্যবহার করেন।

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

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

এপিআইগুলি সংস্থানগুলিতে অ্যাক্সেস নিয়ন্ত্রণ করে

অ্যাপ্লিকেশনগুলি হার্ডওয়্যার ডিভাইস এবং সফ্টওয়্যার ফাংশনগুলিতে অ্যাক্সেস নিয়ন্ত্রণ করতেও ব্যবহৃত হয় যা কোনও অ্যাপ্লিকেশনটির অগত্যা ব্যবহারের অনুমতি নাও থাকতে পারে। এজন্য এপিআইগুলি প্রায়শই সুরক্ষায় বড় ভূমিকা পালন করে।

সম্পর্কিত:কীভাবে ওয়েবসাইটগুলিকে আপনার অবস্থান জিজ্ঞাসা করা থেকে বিরত রাখা যায়

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

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

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

উইন্ডোজ, ম্যাক এবং লিনাক্সে যেমন করা ফাইলগুলি যেমন অনুমতি ব্যবহার করে তাদের ফাইল ফাইলগুলির API অনুমতি দ্বারা প্রয়োগ করা হয়। একটি সাধারণ অ্যাপ্লিকেশনটির কাঁচা শারীরিক হার্ড ডিস্কের সরাসরি অ্যাক্সেস থাকে না। পরিবর্তে, অ্যাপ্লিকেশনটিকে অবশ্যই একটি API এর মাধ্যমে ফাইল অ্যাক্সেস করতে হবে।

পরিষেবাগুলির মধ্যে যোগাযোগের জন্য API গুলি ব্যবহৃত হয়

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

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

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

সম্পর্কিত:ওআউথ কী? কীভাবে সেই ফেসবুক, টুইটার এবং গুগল সাইন ইন বোতামগুলি কাজ করে

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

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

চিত্র ক্রেডিট: patpitchaya / Shutterstock.com।


$config[zx-auto] not found$config[zx-overlay] not found