Troubleshooting Web Development Problems − Part Three - Code Diving, Asking Questions and Finding Error Locations

ပြဿနာ တစ်ခုရဲ့ အဖြေအတွက် သူများကို မေးတော့မယ်ဆိုရင် ကိုယ့်ပြဿနာက ဘာလဲ ဆိုတာကို ကိုယ်တိုင် သေသေချာချာ သိဖို့ အထူး အရေးကြီးပါတယ်။ အဆိုးဆုံး ပြဿနာတွေထဲက တစ်ခုကတော့ "ကိုယ်ဘာကို မသိတာလဲ ဆိုတာ ကိုယ့်ဘာသာ သေသေချာချာ မသိတာပါပဲ"။

Web developer တွေရင်ဆိုင်ရလေ့ ရှိတဲ့ နိစ္စဓူဝ အခက်အခဲများနဲ့ ပြဿနာများ၊ အဲဒီ အခက်အခဲများကို ရင်ဆိုင်ဖြေရှင်းရာမှာ အထောက်အကူ ဖြစ်စေတဲ့ နည်းလမ်းများကို အပိုင်းတစ်ဖြစ်တဲ့ "Troubleshooting Web Development Problems − Part One - Thinking, Reading, Validation, Styling and Caching" နဲ့ Part Two - Read Me Files, Search Engines and Database Problems မှာ ဝေမျှခဲ့ပြီးပါပြီ။ ဒီအပိုင်းကတော့ နောက်ဆုံးအပိုင်းပါ။

  1. ကုဒ်များကို စစ်ဆေးခြင်း − Diving into code

    သင်ဟာ CMS တစ်ခုခု (Drupal, WordPress, Joomla) တစ်ခုခုကို သုံးနေတဲ့ Project တစ်ခုမှာ ပြဿနာတစ်ခုခု၊ အမှားတစ်ခုခုနဲ့ ကြုံနေရပြီ ဆိုရင် ဖြေရှင်းဖို့ အကောင်းဆုံး နည်းလမ်းတစ်ခုကတော့ သက်ဆိုင်ရာ Code တွေကို စစ်ဆေးကြည့်တာပဲ ဖြစ်ပါတယ်။ အများအားဖြင့် Core code တွေမှာ ပြဿနာ ရှာကြည့်တာထက် သုံးထားတဲ့ Module, Plugin, Extension တွေရဲ့ Source Code မှာ ရှာကြည့်တာက အမှားရှာတွေဖို့ ဖြစ်နိုင်ချေ ပိုများပါတယ်။

    Drupal CMS မှာတော့ အမှားအယွင်းတွေကို ရှာဖွေဖို့အတွက် Devel module ကို သုံးတာ အကောင်းဆုံး ဖြစ်ပါတယ်။ Devel module ကို သုံးတတ်ရင်

    • Drupal Page တစ်ခုခြင်းစီ အတွက် Request လုပ်လိုက်ရတဲ့ SQL Query အကြိမ်ရေ နဲ့ ကြာချိန်
    • Development လုပ်နေတဲ့ အချိန်မှာ Array တွေကို Print လုပ်ပေးနိုင်တဲ့ dprint_r($array) function
    • PHP code တွေကို တိုက်ရိုက် ရေးနိုင်၊ Run နိုင်တဲ့ Function

    အစရှိတဲ့ Feature များစွာကို အသုံးပြုနိုင်ပါလိမ့်မယ်။

  2. မေးပါများ စကားရ၊ မေးတတ်မှ အဖြေမှန်ရ − Asking Meaningful Questions to Get Required Answers

    လူတိုင်းဟာ ဘယ်အရာကိုမှ အကုန်မသိနိုင်ပါဘူး။ Web Developer တစ်ယောက် အတွက်တော့ မသိတာတွေက တခြား အသက်မွေးဝမ်းကျောင်း ပညာရှင်တွေထက် ပိုများလိမ့်မယ် ထင်ရပါတယ်။ Web Technology က နေ့စဉ်ပြောင်းလဲ တိုးတက်နေတာနဲ့ အမျှ လေ့လာစမ်းသပ်ဖို့အတွက် အချိန်ကလည်း နည်းပါးလွန်းပါတယ်။

    ဒီလိုအချိန်မှာ ပြဿနာ အသစ်တစ်ခုနဲ့ ရင်ဆိုင်ရပြီ ဆိုတာနဲ့ ပထမဆုံး Search Engine တွေကို သုံးပြီး ရှာသင့်ပါတယ်။ ဒုတိယ အကောင်းဆုံး နည်းလမ်းကတော့ သိပြီးသားသူတွေ၊ ကိုယ့်လို ပြဿနာမျိုးကို ဖြေရှင်းဖူးသူတွေကို ရှာဖွေ မေးမြန်းတာပဲ ဖြစ်ပါတယ်။ အဲဒီလို မေးတဲ့အခါမှာ Stack Overflow တို့လို ဆိုက်တွေ၊ Google Groups, Facebook Group, Meetup Group, ကိုယ်နဲ့ ဝါသနာတူသူတွေ စုစည်း တည်ထောင်ထားတဲ့ အင်တာနက် ဖိုရမ်တွေ (ဉပမာ − Myanmar IT Pro, Mysteryzillion) မှာ မေးလို့ ရပါတယ်။

    ပြဿနာ တစ်ခုရဲ့ အဖြေအတွက် သူများကို မေးတော့မယ်ဆိုရင် ကိုယ့်ပြဿနာက ဘာလဲ ဆိုတာကို ကိုယ်တိုင် သေသေချာချာ သိဖို့ အထူး အရေးကြီးပါတယ်။ အဲဒီလို သိမှ သူများကို မေးတဲ့အခါ လိုရင်း၊ တိုရှင်း စနစ်တကျ မေးနိုင်မှာ ဖြစ်ပြီး ဖြေတဲ့သူတွေ အတွက်ကလည်း အချိန်တိုအတွင်းမှာ အမြန်ဆုံးနဲ့၊ အမှန်ဆုံး ဖြေပေးနိုင်ပါလိမ့်မယ်။

    မေးပါများ စကားရ ဆိုပေမယ့် ကိုယ်မသိတဲ့ ပြဿနာ တစ်ခုရဲ့ အဖြေကို မေးတော့မယ် ဆိုရင်တော့ မေးတတ်မှ အဖြေရမှာပါ။

    အဆိုးဆုံး ပြဿနာတွေထဲက တစ်ခုကတော့ "ကိုယ်ဘာကို မသိတာလဲ ဆိုတာ ကိုယ့်ဘာသာ သေသေချာချာ မသိတာပါပဲ။" :)

    အင်တာနက် ဖိုရမ်တွေမှာ မေးခွန်းတွေ မေးပြီးတိုင်း သူတို့ပြန်ပေးတဲ့ အဖြေကြောင့် ပြဿနာ ပြေလည်သွားတာပဲ ဖြစ်ဖြစ်၊ ကိုယ်တိုင် အဖြေရှာတွေ့လို့ ပြေလည်သွားတာပဲ ဖြစ်ဖြစ် ကိုယ်မေးထားတဲ့ နေရာမှန် အဆင်ပြေသွားတဲ့ အကြောင်းနဲ့ ဘယ်လိုနည်းနဲ့ ပြေလည်သွားတယ် ဆိုတာတွေကိုပါ ရေးပေးသင့်ပါတယ်။ အဲဒါမှ နောင်မှာ တခြားသူတွေအတွက် အထောက်အကူ ဖြစ်စေတဲ့ အမေးနဲ့ အဖြေတွေ ကျန်ခဲ့ပါလိမ့်မယ်။

  3. အမှားရင်းကို ဖော်ထုတ်ခြင်း − Finding the problem module

    ဒီအချက်ကတော့ Drupal Developer တွေနဲ့ ပိုဆိုင်ပါလိမ့်မယ်။ ပြဿနာ ဖြစ်နေတဲ့ မော်ဂျုးကို ရှာတွေ့ပြီ ဆိုတဲ့အချိန်မှာ အဲဒီ မော်ဂျုးရဲ့ .module ဖိုင်ကို ဖွင့်ကြည့်ပါ။ Module နဲ့ သက်ဆိုင်တဲ့ Custom Page တွေကို အများအားဖြင့် hook_menu() ထဲမှာ သတ်မှတ်ပေးထားတာပါ။

    Drupal module တော်တော်များများရဲ့ အမှားတွေကို Debug လုပ်တဲ့အခါ ပထမဆုံး URL တစ်ခုခုကို ကြည့်နိုင်ပါတယ်။ URL ကို ကြည့်ပြီး သက်ဆိုင်ရာ မော်ဂျုးကို သိနိုင်ပါတယ်။ နောက်ဆုံးမှာ hook_menu() နဲ့ .module file တွေကို ကြည့်ပြီး သက်ဆိုင်ရာ Code ကို ရှာဖွေနိုင်ပါလိမ့်မယ်။

စာဖတ်သူ မိတ်ဆွေမှာလည်း အခက်အခဲတွေ ပြဿနာတွေကို ဖြေရှင်းရာမှာ သုံးနေကြ နည်းလမ်းကောင်းလေးတွေ ရှိရင် အများအတွက် ဝေမျှသွားစေချင်ပါတယ်။ မြန်မာ ညီအစ်ကို မောင်နှမများအားလုံး စိတ်၏ချမ်းသာခြင်း၊ ကိုယ်၏ချမ်းသာခြင်း အပြည့်နဲ့ နိစ္စဓူဝ အသက်မွေးဝမ်းကျောင်းလုပ်ငန်းများကို အေးချမ်း ပျော်ရွှင်စွာ ဖြတ်ကျော် ဖြေရှင်းနိုင်ပါစေ။

Ref - drupal.org/node/199

Add new comment

Similar Articles

Featured Articles