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

কিভাবে:

ইলিক্সিরে একটি বিল্ট-ইন গ্রাফিকাল ডিবাগার :debugger সহ আসে। এটি ব্যবহার করতে, আপনাকে এটি শুরু করে আপনার চলমান প্রক্রিয়াতে যুক্ত হতে হবে।

প্রথমে, নিশ্চিত করুন আপনি :debugger কে একটি iex সেশনের মধ্যে শুরু করেছেন:

iex> :debugger.start()
{:ok, #PID<0.108.0>}

এখন, আপনি যে কোড মডিউলটি ডিবাগ করতে চান তা ইন্টারপ্রেট করুন:

iex> :int.ni(MyApp.MyModule)
{:module, MyApp.MyModule}

আপনি একটি ব্রেকপয়েন্ট সেট করতে পারেন:

iex> :int.break(MyApp.MyModule, line_number)
:ok

এবং তারপর, আপনার ফাংশনটি চালান যাতে ব্রেকপয়েন্টে পৌঁছে আপনার কোডের মধ্য দিয়ে চলে যেতে পারেন:

iex> MyApp.MyModule.my_function(arg1, arg2)
# ডিবাগার ব্রেকপয়েন্ট সহ লাইনে এক্সিকিউশন স্থগিত করবে

গভীর ডুব

ইলিক্সিরের :debugger এর আগে, এরল্যাং ডিবাগারটি প্রদান করেছিল যা ইলিক্সির ব্যবহার করে; এটি সংহত প্রক্রিয়া সামাল দেওয়ার দিক থেকে দৃঢ় এবং দুর্দান্ত, যা এরল্যাং VM (BEAM) এর একটি মিষ্টি স্থান। অন্যান্য কিছু ডিবাগারের মতো, :debugger উপর উড়ে চলে যাওয়া ভেরিয়েবলগুলির পরিবর্তন অনুমতি দেয় না, ইলিক্সিরে তথ্যের অপরিবর্তনীয় প্রকৃতির কারণে। বিকল্প হিসাবে, আপনি IEx.pry আছে যা আপনাকে এক্সিকিউশন স্থগিত করতে এবং আপনার কোডের যেকোনো বিন্দুতে একটি REPL এ লাফ দিতে দেয়, যা খুবই সুবিধাজনক হতে পারে।

ডিবাগার একটি গ্রাফিকাল ইন্টারফেসের জন্য ভাল, কিছু লোক সম্ভবত প্রক্রিয়া পরিদর্শন এবং সিস্টেম মেট্রিকস অফার করে এমন বিল্ট-ইন :observer টুলটি পছন্দ করতে পারে, যদিও সেটি কোডের মধ্য দিয়ে যাওয়ার দিকে বিশেষভাবে লক্ষ্যিত নয়। ইলিক্সিরের কমিউনিটি visualixir এবং rexbug এর মতো টুলগুলি অবদান রাখে, ডিফল্টগুলির বাইরে ডিবাগ টুলগুলির ইকোসিস্টেম সম্প্রসারণ করে।

আরো দেখুন