কম্পিউটার

কিভাবে OOP জাভাস্ক্রিপ্টে সার্কুলার রেফারেন্স এড়াতে হয়?


একটি বৃত্তাকার রেফারেন্স ঘটে যদি দুটি পৃথক বস্তু একে অপরের রেফারেন্স পাস করে।

পুরানো ব্রাউজারে সার্কুলার রেফারেন্স মেমরি ফাঁসের একটি কারণ ছিল। আবর্জনা সংগ্রহের অ্যালগরিদমগুলির উন্নতির সাথে, যা এখন চক্র এবং চক্রীয় নির্ভরতাগুলিকে সূক্ষ্মভাবে পরিচালনা করতে পারে, এটি আর একটি সমস্যা নয়৷

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

বৃত্তাকার রেফারেন্স এড়িয়ে চলা

JS এ সার্কুলার রেফারেন্স এড়াতে কোন উপায় নেই। এটি ব্যবহারের ক্ষেত্রে এবং পরিস্থিতির উপর নির্ভর করে এবং কিছু ক্ষেত্রে প্রয়োজনীয়ও হতে পারে। এটি বোঝার জন্য আমরা একটি উদাহরণ নিতে পারি:

ধরুন আপনার 2টি বস্তু আছে, কুকুর এবং ব্যক্তি। আপনি শুধুমাত্র কুকুর বস্তু ব্যবহার করে একটি কুকুরের মালিক এবং ব্যক্তি বস্তু ব্যবহার করে একজন ব্যক্তির পোষা প্রাণী উল্লেখ করতে সক্ষম হতে চান৷

let dog = new Dog();
let person = new Person();
// Creating a circular reference
dog.owner = person
person.pet = dog

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


  1. অপেরায় জাভাস্ক্রিপ্ট কিভাবে সক্রিয় করবেন?

  2. জাভাস্ক্রিপ্ট সহ একটি টেবিলে NULL মান সন্নিবেশ করা এড়াতে কিভাবে?

  3. এক্সেলে সার্কুলার রেফারেন্স কীভাবে সরানো যায় (2 উপায়)

  4. এক্সেলে একটি সার্কুলার রেফারেন্স কীভাবে সন্ধান করবেন (2 সহজ কৌশল)