Coding

What is Beautiful Code?

What is beautiful code?

ကျွန်မကတော့ web designer အဖြစ်ဝင်ရောက်လုပ်ကိုင်နေတဲ့ မကေသီထွန်း ဖြစ်ပါတယ်။ ဒီတပတ်မှာတော့ What is beautiful code? ဆိုတဲ့ အကြောင်းနဲ့ ပတ်သတ်ပီးပြောပြချင်ပါတယ်။

Software Engineer, Developer, Programmer များအနေနဲ့ ကျွန်မတို့ ရေးလိုက်တဲ့ code တွေနဲ့ ပတ်သတ်လို့ သတိထားစရာတွေ အများကြီးရှိပါတယ်။ အဲအချက်များထဲမှာ-

ဖတ်ရှုရန် လွယ်ကူခြင်း(Readability)
ပြုပြင်ထိန်းသိမ်းရန် လွယ်ကူခြင်း(Maintainability)
လျင်မြန်စွာတည်ဆောက်နိုင်မှု(Speed of Development)
လှပသပ်ရပ်မှု(The elusive quality of beauty)

စတဲ့ အချက်တွေလဲပါရှိပါတယ်။

ဒီအချက်တွေအားလုံးအတွက် အခြေခံအကျဆုံး လိုအပ်ချက်ကတော့ ရိုးစင်းမှု(Simplicity) ဖြစ်ပါတယ်။ coding ရေးတာဟာ စပီးအလုပ်ဝင်မယ့်သူတွေအတွက်တော့ အခက်အခဲရှိကျလိမ့်မယ်လို့ ထင်ပါတယ်။ beautiful code ကိုရေးဖို့ အတွက်ဆိုရင် ပိုပီးခက်ခဲလိမ့်မယ်လို့ ထင်ပါတယ်။ ရိုးရှင်းတဲ့ coding ရေးနိုင်ဖို့အတွက် အလုပ်မှာ experience များတဲ့သူတွေအတွက် ပိုပီးလွယ်ကူမယ်လို့ ထင်ပါတယ်။ Beautiful code ဆိုတာ ရှင်းလင်းစွာ format အတိုင်းရေးထားပီး တခြားသူတယောက်က ကိုယ်ရေးထားတဲ့ coding ကိုကြည့်ပီး အလွယ်တကူဖတ်နိုင် နားလည်နိုင်တာကို beautiful code လို့ခေါ်ပါတယ်။

simple coding ထဲမှာ variable name ပေးတာကအစ meaningful ဖြစ်တဲ့ name တွေကိုဘဲပေးသင့် ပါတယ်။ ရိုးရှင်းတဲ့ code နဲ့ရေးထားမယ်ဆိုရင် အလုပ်မှာ အားသာချက်တွေ အများကြီးရှိလာပီး အရမ်းကို အထောက်အကူပြုလာမှာဖြစ်ပါတယ်။

အလုပ်လုပ်ရာမှာ အဖွဲ့လိုက်လုပ်ရတာဖြစ်တဲ့အတွက် ကိုယ့်ရဲ့ team မှာ ကိုယ်ရေးထားတဲ့ code ကို တခြားသူတွေ နားလည်ဖို့က အဓိက အရေးအကြီးဆုံးဖြစ်ပါတယ်။ ကိုယ့်ရဲ့ code ကို ရိုးရှင်းစွာ ရေးထားမှာသာ members အချင်းချင်း လွယ်ကူစွာ ဖတ်နိုင်ပီး ပြန်ပီး အလွယ်တကူ modify ပြန်လုပ်နိုင်မှာ ဖြစ်ပါတယ်။ အလွယ်တကူ နားလည်နိုင်တဲ့အတွက် team members တွေကို ပြန်ရှင်းပြတဲ့အချိန်ကို လျော့နည်းစေတဲ့အပြင် coding ရေးဖို့ ကြာချိန်တွေကိုလဲ လျော့ချပေးနိုင်မှာဖြစ်ပါတယ်။ ထို့အပြင် ရိုးရှင်းတဲ့ code တွေကို format ကျစွာ ရေးခြင်းအားဖြင့် beautiful code တွေကို ရရှိလာမှာဖြစ်ပါတယ်။ နောက်တပတ်မှာလဲ IT နဲ့ ပတ်သတ်တဲ့ knowledge တွေကို ထပ်ပီးပြောပြချင်ပါသေးတယ်။ အားလုံးကို ကျေးဇူးတင်ပါတယ်ရှင်။

Reference:

http://www.mmshare.org/

Hello

Leave a Reply

Your email address will not be published. Required fields are marked *