HeadlinesBriefing favicon HeadlinesBriefing.com

ফাংশন আর্গুমেন্ট বনাম রং

Hacker News •
×

ফাংশন রং নিয়ে বিতর্কে, কেউ কেউ যুক্তি দেন যে ফাংশন আর্গুমেন্ট রং হতে পারে, উদাহরণ হিসেবে Go-এর context মান উল্লেখ করে। Context টাইমআউট এবং বাতিলকরণ পরিচালনা করে, এবং এটি ফাংশনের মাধ্যমে থ্রেড করার জন্য ডিজাইন করা হয়েছে এমনকি যদি সরাসরি ব্যবহার না হয়। একবার একটি ফাংশন context ব্যবহার করলে, আপনার এটি সমস্ত কল করা ফাংশনে পাস করা উচিত, যা উপরিভাগে একটি রং হিসাবে দেখা যায়।

তবে, যদি সমস্ত প্যারামিটার রং হতো, তাহলে ধারণাটি ফাংশনের 50+ বছর পরে উদ্ভাবিত হতো না। Async-এর একটি স্বতন্ত্র প্রকৃতি রয়েছে যা ধারণ করার যোগ্য। স্পষ্ট করার জন্য, একটি পরিবর্তন নির্ভরতা গ্রাফ বিবেচনা করুন: কল স্ট্যাকের গভীরে একটি ফাংশন বৈশিষ্ট্য পরিবর্তন করা কলারদের তিনটি উপায়ে প্রভাবিত করতে পারে: কোনো কলার পরিবর্তন নয়, সরাসরি কলার পরিবর্তন, বা স্ট্যাকের সমস্ত ফাংশন পরিবর্তন।

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