Python:
ডিবাগার ব্যবহার করা

কিভাবে:

চলুন pdb, Python-এর নির্মিত ইন ডিবাগার ব্যবহার করা ভেঙ্গে বোঝাই। কল্পনা করুন একটি ফাইল, buggy.py, যাতে একটি চালাক বাগ আছে:

def add_one(number):
    result = number ++ 1
    return result

print(add_one(7))

এই স্ক্রিপ্টটি চালালে আপনি 8 আশা করেন, কিন্তু এটি শুধুমাত্র একটি সিনট্যাক্স ত্রুটি দেখায়। এখন ডিবাগার সময়!

আপনার টার্মিনালে, চালান:

python -m pdb buggy.py

আপনি ডিবাগারে প্রবেশ করবেন, এবং এটি এরকম দেখাবে:

> /path_to_file/buggy.py(1)<module>()
-> def add_one(number):

আরও কোড দেখতে l(ist), পরবর্তী লাইনে যেতে n(ext), অথবা স্ক্রিপ্ট চলতে থাকার জন্য c(ontinue) ব্যবহার করুন। ত্রুটিতে পৌঁছালে, pdb থামবে এবং আপনাকে পরিদর্শন করতে দেবে।

number ++ 1 কে number + 1 এ সংশোধন করার পর, মেরামতটি পরীক্ষা করতে ডিবাগারকে পুনরায় চালু করুন। মনে রাখবেন, বন্ধুরা বন্ধুদের নিষ্পাপভাবে কোডিং করতে দেয় না। বলার কিছু নেই।

গভীর ডুব

প্রোগ্রামিংয়ের ডার্ক এজেসে (তথাকথিত একীভূত বিকাশ পরিবেশ, বা IDEs, সর্বত্র বিদ্যমান ছিল না সেই সময়ে), ডিবাগারগুলি প্রায়ই স্ট্যান্ড-এলোন টুল হিসেবে ব্যবহার করা হত যা আপনি আপনার টেক্সট এডিটরের বাইরে ব্যবহার করতেন। তারা বিভিন্ন নির্বাহ পয়েন্টে তাদের সফটওয়্যারের অবস্থা পরিদর্শন করে প্রোগ্রামারদের উদ্ধারে আসে।

২০২৩ সাল পর্যন্ত, Python-এর pdb একমাত্র খেলার মাঠ নয়। লোকেরা PyCharm বা Visual Studio Code এর মতো IDEs ব্যবহার করতে পারে, যারা তাদের নিজস্ব চমৎকার ডিবাগারগুলি সহযোগে আসে। এগুলো ব্রেকপয়েন্টস যোগ করার মতো হাতের কাছের ফিচার যোগ করে যা আপনি একটি ক্লিকে সেট করতে পারেন, রহস্যময় কমান্ড টাইপ না করে।

তারপর রয়েছে ipdb, একটি pip-ইনস্টলযোগ্য প্যাকেজ যা ডিবাগিংয়ে IPython-এর সৌন্দর্য নিয়ে আসে। এটি pdb-এর মতো পারফরম্যান্স বাড়ানোর জন্য, ট্যাব সমাপ্তি এবং সিনট্যাক্স হাইলাইটিং এর মতো বৈশিষ্ট্য নিয়ে আসে।

ডিবাগারগুলো তাদের বাস্তবায়নে বিভিন্ন হয়। কিছু মেশিন অথবা বাইট কোড স্তরে প্রোগ্রাম নির্বাহের সাথে সরাসরি মিশে যায়। অন্যরা, যেমন অনেক উচ্চ-স্তরের ভাষার ডিবাগারগুলি, বিশেষ পরিবেশে কোড চালায় যা পরিবর্তনশীল অবস্থা পর্যবেক্ষণ করে এবং নির্বাহ প্রবাহ নিয়ন্ত্রণ করে।

আরও দেখুন

Python-এর নিজস্ব ডিবাগারের সম্পূর্ণ তথ্যের জন্য, দেখুন:

যদি আপনি বিকল্পগুলি সম্পর্কে কৌতূহলী হন, এই লিঙ্কগুলি আপনাকে ভালো সার্ভিস দেবে:

সুখী বাগ শিকার!