নেটওয়ার্ক অ্যাপ্লিকেশন প্রোগ্রামিং ইন্টারফেস (APIs)

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

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

সকেট প্রোগ্রামিং

প্রথাগত নেটওয়ার্ক প্রোগ্রামিং একটি ক্লায়েন্ট-সার্ভার মডেল অনুসরণ। ক্লায়েন্ট-সার্ভার নেটওয়ার্কিংয়ের জন্য ব্যবহৃত প্রাথমিক API গুলি সকেট লাইব্রেরিতে প্রয়োগ করা হয়েছিল যা অপারেটিং সিস্টেমে নির্মিত হয়েছিল। বার্কলে সকেট এবং উইন্ডোজ সকেট (উইনসক) এপিআইগুলি অনেক বছর ধরে সকেট প্রোগ্রামের জন্য দুটি প্রাথমিক মান ছিল।

দূরবর্তী পদ্ধতি কল

RPC APIs তাদের কাছে বার্তাগুলি পাঠানোর পরিবর্তে রিমোট ডিভাইসগুলিতে ফাংশন আহরণ করার জন্য অ্যাপ্লিকেশনের জন্য সামর্থ্য যোগ করে মূল নেটওয়ার্ক প্রোগ্রামিং কৌশলগুলি প্রসারিত করে। ওয়ার্ল্ড ওয়াইড ওয়েব (WWW) এর প্রবৃদ্ধির বিস্ফোরণের সাথে, এক্সএমএল-RPC RPC এর জন্য একটি জনপ্রিয় পদ্ধতি হিসেবে আবির্ভূত হয়।

সহজ অবজেক্ট অ্যাক্সেস প্রোটোকল (SOAP)

এসওএপি 1990 এর দশকের শেষের দিকে একটি নেটওয়ার্ক প্রোটোকল রূপে এক্সএমএল ব্যবহার করে তার বার্তা ফরম্যাট এবং হাইপারটেক্সট ট্রান্সফার প্রোটোকল (HTTP) এর পরিবহন হিসাবে এটি তৈরি করা হয়েছিল। SOAP ওয়েব পরিষেবা প্রোগ্রামারদের একটি অনুগত নিম্নলিখিত জেনারেট করে এবং ব্যাপকভাবে এন্টারপ্রাইজ অ্যাপ্লিকেশনের জন্য ব্যবহৃত হয়ে ওঠে।

প্রতিনিধিত্বমূলক রাজ্য স্থানান্তর (REST)

REST আরেকটি প্রোগ্রামিং মডেল যা আরও সম্প্রতি দৃশ্যের উপর এসেছে এমন ওয়েব পরিষেবাগুলি সমর্থন করে। SOAP মত, REST APIগুলি HTTP ব্যবহার করে, কিন্তু XML এর পরিবর্তে, REST অ্যাপ্লিকেশনগুলি প্রায়ই একটি জাভাস্ক্রিপ্ট অবজেক্ট নোটেশন (JSON) ব্যবহার করা বেছে নেয়। রাষ্ট্র পরিচালনার এবং নিরাপত্তা তাদের প্রবণতা মধ্যে বিশ্রাম এবং SOAP অত্যন্ত পৃথক, নেটওয়ার্ক প্রোগ্রামারদের জন্য দুটি প্রধান বিবেচ্য বিষয়। মোবাইল অ্যাপগুলি নেটওয়ার্ক API গুলি ব্যবহার করতে পারে বা নাও হতে পারে, তবে যারা প্রায়ই REST ব্যবহার করে।

এপিআই এর ভবিষ্যত

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

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

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