এই নিবন্ধে আপনি জানতে পারবেন কিভাবে রুবি পরিদর্শন পদ্ধতি কাজ করে এবং কেন আমরা এটি ব্যবহার করি।
যখন আপনি একটি স্ট্রিং বা অ্যারে প্রিন্ট করেন তখন আপনি এর বিষয়বস্তু দেখতে পান৷
উদাহরণ :
[1,2,3]123 রাখে
কিন্তু যখন আপনি আপনার নিজস্ব বস্তু মুদ্রণ করুন...
আপনি এটি দেখতে পাচ্ছেন৷ :
#<বিড়াল:0x29458e0>
কেন?
কারণ আপনি রুবিকে বলেননি যে কীভাবে এই ক্লাসটি এমনভাবে প্রদর্শন করা যায় যা অর্থপূর্ণ।
আপনি যদি to_s
এর মত একটি পদ্ধতি সংজ্ঞায়িত করেন তাহলে আপনি এটি পরিবর্তন করতে পারেন .
দেখা যাক এটা কিভাবে কাজ করে!
তে_গুলি বাস্তবায়ন করা হচ্ছে
আপনি যখন কোনো বস্তুর সাথে পুট ব্যবহার করেন, তখন রুবি to_s
কে কল করে বস্তুর একটি স্ট্রিং উপস্থাপনা পেতে পদ্ধতি।
ডিফল্টরূপে আপনি ক্লাসের নাম পাবেন (Cat
)…
এছাড়াও কিছু সংখ্যা যা object_id
প্রতিনিধিত্ব করে হেক্সাডেসিমেল বিন্যাসে (0x29458e0
)।
এটি কীভাবে পরিবর্তন করবেন তা এখানে রয়েছে :
Class Cat def to_s "আমি একটি বিড়াল" endendputs Cat.new# "আমি একটি বিড়াল"
যদি আপনার ক্লাসে ইনস্ট্যান্স ভেরিয়েবল থাকে তবে আপনি সেগুলিকে আপনার অবজেক্টের বিবরণের অংশ করতে পারেন।
এরকম :
class Cat attr_reader :color def initialize(color) @color =color শেষ def to_s "আমি একটি #{color} বিড়াল" endendputs Cat.new("blue")# "আমি একটি নীল বিড়াল"পুটে Cat.new("white")# "আমি একটি সাদা বিড়াল"
এখন আপনি যখন এই বস্তুটি মুদ্রণ করবেন তখন আপনি আরও দরকারী তথ্য দেখতে পাবেন৷
৷এটা কি দারুণ না?
রুবি পরিদর্শন পদ্ধতি
আপনি একটি বস্তুকে দুটি সম্ভাব্য উপায়ে উপস্থাপন করতে পারেন।
প্রথম :
to_s
ব্যবহার করা হচ্ছে .
আপনি যখন বস্তুটি প্রদর্শন করেন তখন আপনার ব্যবহারকারীরা এটি দেখতে চান৷
উদাহরণস্বরূপ, একটি টাইম অবজেক্টের সাথে, আপনি সময়কে এমনভাবে প্রদর্শন করবেন যা অর্থবহ (2018-12-28 19:17:28
), সময় আসলে কীভাবে সংরক্ষণ করা হয় তা দেখানোর পরিবর্তে (1546021067
)।
তারপর :
আপনি inspect
করতে পারেন অবজেক্ট, এটি আপনাকে অবজেক্টের আরও কাঁচা সংস্করণ দেয়।
পার্থক্য কি?
-
to_s
সংজ্ঞায়িত করুন যাতে আপনি যখন পুট ব্যবহার করেন, এটি বস্তুটির এই বিশেষ দৃশ্যটি দেখাবে। -
inspect
সংজ্ঞায়িত করুন ডিবাগিং এর সাথে নিজেকে এবং অন্যান্য ডেভেলপারদের সাহায্য করতে।
এখানে একটি উদাহরণ আছে :
"abc" পরিদর্শন করুন
এই হিসাবে দেখায়৷ :
"abc"
পরিদর্শন উদ্ধৃতি চিহ্ন এবং বিশেষ অক্ষর রাখে (যেমন \n
নতুন লাইনের জন্য) দৃশ্যমান হয়।
সেরা অংশ?
আপনি inspect
বাস্তবায়ন করতে পারেন আপনার নিজের ক্লাসে পদ্ধতি 🙂
এখানে কিভাবে :
class Cat attr_reader :color def পরিদর্শন করুন "Cat - id:#{object_id} - color:#{color}" endendCat.new("white").inspect# "Cat - id:23316588 - color:white"প্রে>এভাবেই আপনি এমন বস্তু তৈরি করতে পারেন যা নিজেদের বর্ণনা করে!
ভিডিও টিউটোরিয়াল
সারাংশ
আপনি শিখেছেন কিভাবে রুবি পরিদর্শন এবং আরও ভালো ক্লাস তৈরি করতে পদ্ধতি ব্যবহার করতে হয়!
আপনি যদি এই নিবন্ধটি পছন্দ করেন তাহলে অনুগ্রহ করে এটি শেয়ার করুন যাতে আরও বেশি মানুষ এটি খুঁজে পেতে পারে৷
৷পড়ার জন্য ধন্যবাদ।