কম্পিউটার টিউটোরিয়াল

C#-তে #if DEBUG কী এবং কীভাবে ব্যবহার করবেন?

Debug vs Release মোড

Visual Studio-তে Debug এবং Release - দুটি বিল্ড কনফিগারেশন রয়েছে।

বিষয়Debug ModeRelease Mode
উদ্দেশ্যস্টেপ-বাই-স্টেপ ডিবাগিংফাইনাল বিল্ড (DLL/EXE)
অপ্টিমাইজেশননা (বাইনারি অপ্টিমাইজ হয় না)হ্যাঁ (পূর্ণ অপ্টিমাইজড)
সিম্বলিক ইনফোপুরোপুরি থাকেথাকে না
ব্রেকপয়েন্টসঠিকভাবে কাজ করেকাজ করে না
পারফরম্যান্সधीমদ্রুত

বিল্ড কনফিগারেশন পরিবর্তন করা

  1. মেনু থেকে: Build → Configuration Manager → Debug বা Release সিলেক্ট করুন
  2. টুলবার থেকে: Solution Configurations ড্রপডাউন থেকে Debug বা Release বেছে নিন

#if DEBUG ডিরেক্টিভ

#if DEBUG ব্লকের ভিতরের কোড শুধু ডিবাগ মোডে রান করবে। রিলিজ মোডে এই কোড কম্পাইলটাইমে বাদ দেওয়া হয়।

উদাহরণ

class Program {
    static void Main() {
        #if DEBUG
        Console.WriteLine("আপনি ডিবাগ মোডে আছেন");
        Console.WriteLine($"Environment: {Environment.GetEnvironmentVariable("ASPNETCORE_ENVIRONMENT")}");
        #endif
        
        Console.WriteLine("এই লাইন সবসময় চলবে");
        Console.ReadKey();
    }
}

আউটপুট (Debug Mode-এ):

আপনি ডিবাগ মোডে আছেন
এই লাইন সবসময় চলবে

আউটপুট (Release Mode-এ):

এই লাইন সবসময় চলবে

ব্যবহারের পরিস্থিতি

  • লগিং বা ডিবাগ ইনফো প্রিন্ট করার জন্য
  • টেস্টিং-সময় ডামি ডেটা ব্যবহার করার জন্য
  • পারফরম্যান্স মেজারমেন্ট কোড যোগ করার জন্য
  • ডেভেলপমেন্ট-ওনلی ফিচার সক্রিয়/নিষ্ক্রিয় করার জন্য

অন্যান্য কন্ডিশনাল কম্পাইলেশন সিম্বল

#if RELEASE
    // শুধু রিলিজ মোডে
#endif

#if DEBUG && NETCOREAPP
    // ডিবাগ মোডে এবং .NET Core-এ
#endif
  1. মাইক্রোসফট টিমসে টুগেদার মোড কী এবং কীভাবে ব্যবহার করবেন?

  2. WhatsApp-এ Picture-in-Picture মোড ব্যবহার এবং সমস্যা সমাধান

  3. স্টিম ওয়ার্কশপ কী এবং কীভাবে ব্যবহার করবেন

  4. উইন্ডোজ ১১ গড মোড আনলক করুন: সব সেটিংস এক জায়গায় পান