আমি আমার অ্যাপ্লিকেশনগুলিতে ইতিমধ্যে ECMAScript 6 এবং ECMAScript 7 টি বৈশিষ্ট্য (বাবেলকে ধন্যবাদ) ব্যবহার করছি - মোবাইল এবং ওয়েব উভয়ই।
প্রথম পদক্ষেপটি অবশ্যই ECMAScript 6 স্তরের ছিল। আমি অনেক অ্যাসিঙ্ক প্যাটার্ন, প্রতিশ্রুতি (যা সত্যই আশাব্যঞ্জক), জেনারেটর (নিশ্চিত নয় যে * প্রতীক কেন) ইত্যাদি এগুলির মধ্যে থেকে প্রতিশ্রুতিগুলি আমার উদ্দেশ্যটিকে বেশ ভালভাবে উপযোগী করে তুলেছিল। এবং আমি এগুলিকে আমার অ্যাপ্লিকেশনগুলিতে ব্যবহার করছি।
আমি কীভাবে একটি মৌলিক প্রতিশ্রুতি বাস্তবায়িত করেছি তার একটি উদাহরণ / সিউডোকোড-
var myPromise = new Promise(
function (resolve,reject) {
var x = MyDataStore(myObj);
resolve(x);
});
myPromise.then(
function (x) {
init(x);
});
সময় অতিবাহিত হিসেবে আমি এর নাম ECMAScript জুড়ে 7 বৈশিষ্ট্য, এবং তাদের হচ্ছে একজন এসে ASYNC
এবং AWAIT
কীওয়ার্ড / ফাংশন। এটি একসাথে দুর্দান্ত বিস্ময়কর কাজ করে। আমি আমার কিছু প্রতিশ্রুতি দিয়ে প্রতিস্থাপন শুরু করেছি async & await
। তারা প্রোগ্রামিং শৈলীতে দুর্দান্ত মান যোগ করবে বলে মনে হচ্ছে।
আবার, এখানে আমার অ্যাসিঙ্ক, অপেক্ষার ফাংশনটি কেমন দেখাচ্ছে তা একটি সিউডোকোড-
async function myAsyncFunction (myObj) {
var x = new MyDataStore(myObj);
return await x.init();
}
var returnVal = await myAsyncFunction(obj);
বাক্য গঠন ত্রুটিগুলি (যদি থাকে) একদিকে রেখে, দুজনেই ঠিক একই জিনিসটি করে যা আমার মনে হয়। আমি প্রায়শই আমার প্রতিশ্রুতিগুলির বেশিরভাগটি async দিয়ে প্রতিস্থাপন করতে সক্ষম হয়েছি, অপেক্ষায় রয়েছে।
প্রতিশ্রুতিবদ্ধ অনুরূপ কাজ করলে কেন অ্যাসিঙ্ক, অপেক্ষা করা দরকার?
Async, একটি বড় সমস্যা সমাধানের জন্য অপেক্ষা করছে? নাকি কলব্যাক নরকের জন্য এটি অন্যরকম সমাধান ছিল?
যেমনটি আমি আগেই বলেছি, আমি প্রতিশ্রুতি এবং অ্যাসিঙ্ক ব্যবহার করতে সক্ষম, একই সমস্যাটি সমাধানের অপেক্ষায়। অ্যাসিঙ্কের অপেক্ষা করার মতো নির্দিষ্ট কিছু আছে কি?
অতিরিক্ত নোট:
আমি আমার রিএ্যাক্ট প্রজেক্ট এবং নোড.জেএস মডিউলগুলিতে ব্যাপকভাবে অ্যাসিঙ্কটি, অপেক্ষা এবং প্রতিশ্রুতি ব্যবহার করছি। প্রতিক্রিয়া বিশেষত একটি প্রাথমিক পাখি হয়ে গেছে এবং প্রচুর ECMAScript 6 এবং ECMAScript 7 বৈশিষ্ট্য গ্রহণ করেছে।