Node.js ایپلی کیشنز تیار کرنے کے عمل میں، ایونٹ ہینڈلنگ اور غیر مطابقت پذیر پروسیسنگ کو سمجھنا اور اس کے ساتھ کام کرنا بہت ضروری ہے۔ Node.js ایک ایونٹ سے چلنے والے اور غیر مطابقت پذیر ماڈل پر بنایا گیا ہے، جس سے کاموں کو مکمل ہونے کا انتظار کیے بغیر انجام دیا جا سکتا ہے۔ درحقیقت، ایونٹ ہینڈلنگ اور غیر مطابقت پذیر پروسیسنگ کو سمجھنا اور درست طریقے سے لاگو کرنا درخواست کی کارکردگی کو بہتر بنانے کا ایک لازمی حصہ ہے۔
callback Node.js میں واقعات اور s
Node.js میں، واقعات اور callback s غیر مطابقت پذیر کارروائیوں کو سنبھالنے میں اہم کردار ادا کرتے ہیں۔ واقعات کو ہینڈل کرنے اور ان کا جواب دینے کا ایک طریقہ ہے جو کسی ایپلیکیشن کے اندر ہوتا ہے۔ Callback s، دوسری طرف، وہ فنکشنز ہیں جو کسی مخصوص ایونٹ یا آپریشن کے مکمل ہونے کے بعد انجام پاتے ہیں۔
Node.js ایک ایونٹ پر مبنی فن تعمیر فراہم کرتا ہے جہاں ایپلیکیشن کے مختلف حصے واقعات کو خارج کر سکتے ہیں اور انہیں سن سکتے ہیں۔ یہ بیک وقت متعدد آپریشنز کی موثر اور غیر مسدود پروسیسنگ کی اجازت دیتا ہے۔
Callback s کو عام طور پر Node.js میں غیر مطابقت پذیر کارروائیوں کو سنبھالنے کے لیے استعمال کیا جاتا ہے۔ وہ فنکشنز کے لیے دلائل کے طور پر پاس کیے جاتے ہیں اور آپریشن مکمل ہونے کے بعد ان پر عمل درآمد کیا جاتا ہے۔ Callback s غیر مطابقت پذیر کاموں کے دوران پائے جانے والے نتائج یا غلطیوں کو سنبھالنے کا ایک طریقہ فراہم کرتا ہے۔
callback Node.js میں استعمال کرنے کی ایک مثال یہ ہے:
// A function that takes a callback
function fetchData(callback) {
// Simulate fetching data from an asynchronous operation
setTimeout(() => {
const data = { name: 'John', age: 30 };
callback(null, data); // Pass the data to the callback
}, 2000); // Simulate a 2-second delay
}
// Call the fetchData function and provide a callback
fetchData((error, data) => {
if(error) {
console.error('Error:', error);
} else {
console.log('Data:', data);
}
});
اس مثال میں، ہمارے پاس ایک فنکشن ہے fetchData
جس کا نام ایک غیر مطابقت پذیر آپریشن سے ڈیٹا حاصل کرنا ہے(مثال کے طور پر، API کال کرنا یا ڈیٹا بیس سے استفسار کرنا)۔ یہ ایک callback فنکشن کو بطور دلیل لیتا ہے۔
فنکشن کے اندر fetchData
، ہم setTimeout
اسینکرونس آپریشن کی نقل کرنے کے لیے استعمال کرتے ہیں۔ 2-سیکنڈ کی تاخیر کے بعد، ہم کچھ نمونہ ڈیٹا بناتے ہیں اور اسے callback ایک غلطی کے ساتھ فنکشن میں بھیج دیتے ہیں(جو null
اس معاملے میں سیٹ ہے)۔
فنکشن کے باہر fetchData
، ہم اسے کال کرتے ہیں اور ایک callback فنکشن فراہم کرتے ہیں۔ میں callback ، ہم کسی بھی ممکنہ غلطی کو سنبھالتے ہیں اور موصولہ ڈیٹا پر کارروائی کرتے ہیں۔ اگر کوئی خرابی ہے تو، ہم اسے کنسول میں لاگ ان کرتے ہیں۔ دوسری صورت میں، ہم ڈیٹا کو لاگ ان کرتے ہیں.
callback یہ غیر مطابقت پذیر کارروائیوں کو ہینڈل کرنے اور ڈیٹا کے دستیاب ہونے کے بعد اس پر کارروائی کو یقینی بنانے کے لیے Node.js میں استعمال کرنے کی ایک بنیادی مثال ہے ۔ حقیقی دنیا کے منظرناموں میں، callback s عام طور پر ڈیٹا بیس کے سوالات، API کی درخواستوں، اور دیگر غیر مطابقت پذیر کاموں کو سنبھالنے کے لیے استعمال ہوتے ہیں۔
s کا استعمال کرنا Promise اور غیر مطابقت پذیری کو سنبھالنا async/await
غیر مطابقت پذیر کاموں کو آسان اور موثر طریقے سے سنبھالنے کے لیے Node.js میں "استعمال کرنا Promise اور اسے ہینڈل کرنا" ایک عام طریقہ ہے۔ ایک ایسی شے ہے جو ہمیں غیر مطابقت پذیر کارروائیوں کو سنبھالنے اور سنبھالنے میں مدد کرتی ہے، جبکہ ایک نحو ہے جو ہمیں مطابقت پذیر کوڈ کی طرح اسی طرح سے غیر مطابقت پذیر کوڈ لکھنے کی اجازت دیتا ہے۔ async/await Promise JavaScript async/await
استعمال کرکے Promise اور ، ہم غیر مطابقت پذیر کوڈ کو زیادہ آسانی اور بدیہی طور پر لکھ سکتے ہیں۔ ہمیں اب فنکشنز کو استعمال کرنے اور غیر مطابقت پذیر آپریشنز کو ہینڈل کرنے کے لیے جہنم(نیسٹڈ فنکشنز) سے نمٹنے کی ضرورت نہیں ہے۔ اس کے بجائے، ہم a کے مکمل ہونے کا انتظار کرنے اور اس کا نتیجہ واپس کرنے کے لیے await کلیدی لفظ استعمال کر سکتے ہیں ۔ async/await callback callback callback Promise
غیر مطابقت پذیر کارروائیوں کو ہینڈل کرنے کے لئے Node.js میں استعمال کرنے Promise اور استعمال کرنے کی ایک مثال یہ ہے ۔ async/await
// A mock function to fetch data from an API
function fetchData() {
return new Promise((resolve, reject) => {
setTimeout(() => {
const data = { name: 'John', age: 30 };
resolve(data); // Return data within the Promise
}, 2000);
});
}
// Using async/await to handle asynchronous operations
async function getData() {
try {
const data = await fetchData(); // Wait for the Promise to complete and return the data
console.log('Data:', data);
} catch(error) {
console.error('Error:', error);
}
}
// Call the getData function
getData();
اس مثال میں، ہم fetchData
ایک API(یا کسی بھی غیر مطابقت پذیر آپریشن) سے ڈیٹا کی بازیافت کے لیے فنکشن کا استعمال کرتے ہیں۔ یہ فنکشن a واپس کرتا ہے Promise ، جہاں ہم resolve
ڈیٹا کو واپس کرنے کے لیے فنکشن کو کہتے ہیں۔
فنکشن کے باہر fetchData
، ہم try/catch
غلطیوں کو سنبھالنے کے لیے ایک بلاک کا استعمال کرتے ہیں۔ فنکشن میں getData
، ہم مطلوبہ الفاظ کو ڈیٹا کے مکمل ہونے اور واپس آنے کا await
انتظار کرنے کے لیے استعمال کرتے ہیں۔ Promise اگر میں کوئی خامی ہے تو Promise ، یہ ایک استثناء پھینک دے گا اور ہم اسے catch
بلاک میں ہینڈل کرتے ہیں۔
آخر میں، ہم getData
غیر مطابقت پذیر پروسیسنگ شروع کرنے کے لیے فنکشن کو کال کرتے ہیں۔ نتیجہ Promise مکمل ہونے اور ڈیٹا واپس کرنے کے بعد کنسول میں لاگ ان ہو جائے گا۔
غیر مطابقت پذیر کارروائیوں سے نمٹنے کے دوران ہمارے کوڈ کا استعمال Promise اور اسے مزید پڑھنے کے قابل اور سمجھنے میں آسان بناتا ہے۔ یہ ہمیں جہنم سے بچنے میں مدد کرتا ہے اور ہمیں ترتیب وار طریقے سے کوڈ لکھنے کی اجازت دیتا ہے، جیسا کہ ہم وقت ساز کوڈ لکھنا ہے۔ async/await callback
نتیجہ: Node.js ایپلی کیشنز کی ترقی میں ایونٹ ہینڈلنگ اور غیر مطابقت پذیر پروسیسنگ دو اہم پہلو ہیں۔ متعلقہ تصورات اور ٹولز کو سمجھ کر اور صحیح طریقے سے استعمال کرتے ہوئے، آپ Node.js پلیٹ فارم پر موثر، لچکدار، اور قابل اعتماد ایپلی کیشنز بنا سکتے ہیں۔