কম্পিউটার

রুবিতে বুলিয়ান মান বোঝা

বুলিয়ান কি?

একটি বুলিয়ান হল একটি মান যা একটি যুক্তি বিবৃতিতে ব্যবহার করা হয় যদি কিছু সত্য বা মিথ্যা বলে বিবেচিত হয়।

এটি সিদ্ধান্ত নিতে ব্যবহার করা যেতে পারে .

রুবিতে আমাদের বুলিয়ান ক্লাস নেই, তবে আমাদের বুলিয়ান অবজেক্ট আছে!

আমাদের কাছে true আছে &false .

যেগুলি TrueClass এর সিঙ্গলটন অবজেক্ট &FalseClass .

যখন আপনি পদ্ধতি ব্যবহার করেন তখন আপনি একটি বুলিয়ান মান পাবেন :

  • empty?
  • all?
  • match?

এবং একটি সমান চিহ্নের সাথে জিনিসগুলির তুলনা করুন :

1 == 1

# true

মনে রাখবেন যে == রুবিতেও একটি পদ্ধতি, এর মানে হল এই পদ্ধতিটি কীভাবে প্রয়োগ করা হয় তার উপর নির্ভর করে আচরণ পরিবর্তন হতে পারে।

সত্য এবং মিথ্যা মূল্যবোধ

একটি সত্য মান কি?

এটি এমন একটি মান যা true বলে বিবেচিত হয় একটি বুলিয়ান প্রসঙ্গে, একটি if স্টেটমেন্টের মতো।

রুবির সবকিছুই সত্য কিন্তু এই দুটি :

  • false
  • nil

এই দুটি মান, এবং শুধুমাত্র এই দুটিকে আমরা "মিথ্যা" বলি৷

চর্চায় বুলিয়ানস

এর মানে হল আপনার যদি কোন শর্ত থাকে...

এরকম :

if bacon
  puts "we got bacon"
end

রুবি bacon কিনা তা পরীক্ষা করে সত্য (false ছাড়া অন্য কিছু / nil ) স্ট্রিং প্রিন্ট করার আগে।

অন্য কথায় :

আপনি যদি bacon-এ কোনও পদ্ধতি কল না করেন তবে আপনাকে শূন্যের জন্য পরীক্ষা করতে হবে না .

নিরাপদ নেভিগেটর

কখনও কখনও আপনি বস্তুর উপর একটি পদ্ধতি কল করতে চান.

এরকম :

if bacon.stock
  # ...
end

এটি আপনাকে একটি ত্রুটি দেবে যদি bacon শূন্য, এটি এড়াতে আপনি নিম্নলিখিতগুলি করতে পারেন…

উদাহরণ :

if bacon&.stock
  # ...
end

এই &. নিরাপদ নেভিগেশন অপারেটর বলা হয় এবং এটি রুবি 2.3 এ চালু করা হয়েছিল।

বুলিয়ান পদ্ধতি

আপনি কি এই পদ্ধতিগুলি একটি প্রশ্ন চিহ্নে শেষ হতে দেখেছেন?

empty? পছন্দ করুন .

আমরা এইগুলিকে "প্রেডিকেট পদ্ধতি" বলি এবং নিয়ম অনুসারে তারা সর্বদা true ফেরত দেয় অথবা false .

আপনি নিজের লিখতে পারেন :

def published?
  # ...
end

def ready?
  # ...
end

এটি একটি দুর্দান্ত প্যাটার্ন যা আপনার কোডকে রুবির মতো অনুভব করবে৷

বুলিয়ান প্যারামিটারগুলি একটি ভাল ধারণা নয়

আমরা শুধু বুলিয়ান পদ্ধতিগুলি কভার করেছি, যেগুলি দুর্দান্ত, কিন্তু আপনি বুলিয়ান প্যারামিটারগুলি এড়াতে চান৷

উদাহরণ :

def bacon(raw)
end

bacon(false)

যখন আপনি bacon(false) দেখেন আপনি এই false কোন ধারণা নেই মানে।

খুঁজে বের করার জন্য আপনাকে কোডটি খনন করতে হবে৷

সর্বোপরি, একটি বুলিয়ান মান মানে হল আপনার পদ্ধতি যা প্রয়োজন তার চেয়ে বেশি জটিল হতে চলেছে .

সমাধান?

পদ্ধতিটিকে দুই ভাগে ভাগ করুন, অথবা আপনার কোডটি এমনভাবে ডিজাইন করুন যেখানে এটি প্রয়োজনীয় নয়৷

বুলিয়ান লজিক

TrueClass এবং FalseClass কয়েকটি পদ্ধতি প্রয়োগ করে।

লাইক to_s, এবং পরিদর্শন করুন।

কিন্তু আরও আকর্ষণীয় হল :

  • &
  • |
  • ^

এই অদ্ভুত চেহারা পদ্ধতি কি?

বুলিয়ান লজিক।

এখানে একটি বুলিয়ান লজিক টেবিল :

নাম চিহ্ন TRUE/TRUE TRUE / FALSE
এবং & সত্য মিথ্যা
বা | সত্য সত্য
XOR ^ মিথ্যা সত্য

উদাহরণ :

true & true

যদিও আমরা প্রায়শই আমাদের কোডে বুলিয়ান লজিক ব্যবহার করি না এটি কম্পিউটার কীভাবে কাজ করে তার ভিত্তি তৈরি করে, তাই এটি সম্পর্কে জানা আকর্ষণীয়৷

সারাংশ

আপনি রুবিতে বুলিয়ান মান সম্পর্কে শিখেছেন! মনে রাখবেন যে সবকিছুই "সত্য", শুধুমাত্র ব্যতিক্রমগুলি হল false &nil .

এই নিবন্ধটি শেয়ার করতে ভুলবেন না যাতে আরও লোকেরা এটি খুঁজে পেতে পারে 🙂

পড়ার জন্য ধন্যবাদ।


  1. রুবির সাথে সিলেকশন সর্ট বোঝা

  2. রুবিতে সন্নিবেশ বাছাই বোঝা

  3. রুবিতে ডুপ বনাম ক্লোন:পার্থক্য বোঝা

  4. রুবি ফ্রিজ পদ্ধতি - বস্তুর পরিবর্তনশীলতা বোঝা