কোনও পার্থক্য নেই, প্রকৃতপক্ষে map
সি হিসাবে প্রয়োগ করা হয়েছে rb_ary_collect
এবং enum_collect
(যেমন: map
একটি অ্যারে এবং অন্য কোনও এনামের মধ্যে পার্থক্য রয়েছে, তবে map
এবং এর মধ্যে কোনও পার্থক্য নেই collect
)।
রুবিতে কেন map
এবং উভয়ই collect
বিদ্যমান? map
ফাংশন বিভিন্ন ভাষায় অনেক নামকরণ নিয়মাবলী হয়েছে। উইকিপিডিয়া একটি ওভারভিউ সরবরাহ করে :
মানচিত্রের ক্রিয়াকলাপটি কার্যকরী প্রোগ্রামিং ভাষায় উদ্ভূত হয়েছে তবে বর্তমানে এটি অনেকগুলি প্রক্রিয়াগত, অবজেক্ট ওরিয়েন্টেড এবং বহু-দৃষ্টান্তমূলক ভাষায় সমর্থিত (বা সংজ্ঞায়িতও হতে পারে): সি ++ এর স্ট্যান্ডার্ড টেম্পলেট লাইব্রেরিতে, এটি transform
সি # (3.0) এর মধ্যে বলা হয় লিনকু লাইব্রেরি, এটি বলা একটি এক্সটেনশন পদ্ধতি হিসাবে সরবরাহ করা হয় Select
। পার্ল, পাইথন এবং রুবির মতো উচ্চ স্তরের ভাষাগুলিতেও মানচিত্রটি প্রায়শই ব্যবহৃত অপারেশন; অপারেশন map
এই তিনটি ভাষায় বলা হয়। রুবিতে (স্মার্টটাক থেকে) [জোর দেওয়া খনি] মানচিত্রের একটি collect
উপাধি সরবরাহ করা হয়েছে । কমন লিস্প ম্যাপের মতো ফাংশনগুলির একটি পরিবার সরবরাহ করে; এখানে বর্ণিত আচরণের সাথে সম্পর্কিতটিকে বলা হয় mapcar
(সিএআর অপারেশন ব্যবহার করে অ্যাক্সেস নির্দেশ করে কার)।
ঘরে বসে আরও বেশি কিছু অনুভব করার জন্য রুবি স্মার্টটাক ওয়ার্ল্ডের প্রোগ্রামারদের জন্য একটি উপনাম সরবরাহ করে।
অ্যারে এবং এনামগুলির জন্য কেন পৃথক বাস্তবায়ন হয়? একটি এনাম একটি সাধারণ পুনরাবৃত্তি কাঠামো, যার অর্থ রুবি পরবর্তী উপাদানগুলি কী হতে পারে তার পূর্বাভাস দিতে পারে এমন কোনও উপায় নেই (আপনি অসীম এনামগুলি সংজ্ঞায়িত করতে পারেন, উদাহরণের জন্য প্রধানমন্ত্রী দেখুন ) see সুতরাং প্রতিটি ক্রমাগত উপাদান পেতে এটি একটি ফাংশন কল করতে হবে (সাধারণত এটি each
পদ্ধতি হবে)।
অ্যারেগুলি সর্বাধিক সাধারণ সংগ্রহ তাই তাদের কার্যকারিতাটি অনুকূল করা যুক্তিসঙ্গত। যেহেতু রুবি অ্যারে কীভাবে কাজ করে সে সম্পর্কে অনেক কিছু জানেন যে এটি কল each
করতে হবে না তবে কেবলমাত্র সরল পয়েন্টার ম্যানিপুলেশন ব্যবহার করতে পারেন যা উল্লেখযোগ্যভাবে দ্রুত।
একই অপ্টিমাইজেশন মতো বিন্যাস পদ্ধতি একটি সংখ্যা জন্য অস্তিত্ব zip
বা count
।
map
কোড গল্ফ এ পছন্দ হয় ।