C# Coding Standards Part(3)

C# Coding Standard Part(3)

Tab and Spacing with Standard

ကျွန်တော်​တို့​အခု​လေ့​လာ​ကြ​မှာ​ကတော့ Tab and Spacing အကြောင်း​ဘဲ​ဖြစ်​ပါ​တယ်။
တစ်​ခါ​တစ်​လေ ကျွန်တော်​တို့​စာ​ကြောင်း​တွေ​ကို ဘေး​မျဉ်း​က​နေ​ခြား​ချင်​ရင် Space တွေ​သုံး​ပြီး​တော့ ခြား​ခဲ့​တဲ့​အကြိမ်​တွေ​လည်း​ရှိ​ခဲ့​နိုင်​ပါ​တယ်။

အဲ့​ဒီ​လို​လုပ်​တာ​က Coding Standard မဟုတ်​ပါ​ဘူး။
Text Indent လုပ်​ချင်​တယ်​ဆို​ရင်​တော့ တစ်​ခု​သော​နည်း​လမ်း​က Tab လုပ်​ခြင်း​သာ​ဖြစ်​ပါ​တယ်။
Space ကို​လုံး​၀​မ​သုံး​ရ​ပါ​ဘူး။နောက်​တစ်​ခု​ကတော့ Tab ကို လေး​ခု အထိ​ဘဲ​သုံး​သင့်​ပါ​တယ်။သူ့​ထက်​ပို​ပြီး​တော့​မ​သုံး​သင့်​ပါ​ဘူး။
ကျွန်တော်​တို့​သုံး​နေ​တဲ့ IDE က​လည်း​အလို​အလျောက်​လုပ်​ပေး​တဲ့​အတွက်​ကြောင့် ဒီ​အကြောင်းအရာ​က သိပ်​တော့​စိတ်ပူ​စရာ​မ​လို​ပါ​ဘူး။

Comment with Standards

အခုလေ့​လာ​မဲ့ အကြောင်း​ကတော့ Comment လုပ်​တဲ့​အခါ​မှာလိုက်​နာ​ရ​မဲ့​စည်းကမ်း​တွေ​ဖြစ်​ပါ​တယ်။

အရင်​တုန်း​က​လည်း Comment တွေ​ပိတ်​ချင်​တယ်​ဆို​ရင် လည်း​ကြုံ​ရင်​ကြုံ​သ​လို​ပိတ်​ခဲ့​ကြ​ဘူး​မယ်​လို့​ထင်​ပါ​တယ်။

အခု​တော့ စနစ်​တ​ကျ​ပိတ်​တာ​ကို​လေ့​လာ​ကြ​မှာ​ဖြစ်​ပါ​တယ်။ဒါ​ဆို​ရင်​ဘယ်​လို​ပိတ်​မ​လဲ။

အရင်​တုန်း​က ဒီ​လို​ပိတ်​ခဲ့​ပါ​တယ်။

အဲ့​ဒီ​မှာ​တစ်​ခု​သတိထား​မိ​သလား​တော့​မ​သိ​ဘူး…။ဘာ​လဲဆို​တော့ Declared Variables ဆို​တဲ့ Comment ပိတ်​ထား​တဲ့​စာသား​လေး​က အောက်​က​ကြေညာ​ထား​တဲ့ Variables တွေ​ရဲ့ အရှေ့​ကို​ရောက်​နေ​တာ​ပါ။

အဲ့​ဒီ​လို​ကြေညာ​ထား​ရင်​တော့ Coding Standard ကို​မ​လိုက်နာ​ထား​ဘူး​လို့​ဆို​ရ​မှာ​ဖြစ်​ပါ​တယ်။

ဒါ​ဆို​ရင်​ဘယ်​လို​ရေး​မ​လဲ။ဘယ်​လို​ရေး​မ​လဲဆို​တော့

ကိုယ်​ပိတ်​မဲ့ Comment က ကိုယ်​ရေးထား​တဲ့ Code နဲ့ Same Level ဖြစ်​ရ​မှာ​ဖြစ်​ပါ​တယ်။ဘယ်​လို​လဲဆို​တော့ အပေါ်​က​အတိုင်း ဥပမာ​ပေး​မယ်​ဆို​ရင်

အဲ့​ဒီ​လို​ဖြစ်​ရ​မှာ​ဖြစ်​ပါ​တယ်။အဲ့​ဒီ​လို​ရေး​မှ​မှန်​မှာ​ဖြစ်​ပါ​တယ်။ဒါ​ဆို​ရင်​ပို​ပြီး​တော့​ရှင်း​သွား​အောင် Code များ⁠များ​နဲ့​လေ့​လာ​ကြည့်​လိုက်​ရအောင်…။

//Comment Testing

String name = “Hello”;

DateTime currentTime = DateTime.Now;

string fullMessage = “Hello ” + name + ” This Time is “+ currentTime.ToString();

Console.WriteLine(fullMessage);

အဲ့​ဒီ​လို​ရေး​ရင်​တော့ သတ်​မှတ်ထား​တဲ့ စံ​ကို​လိုက်နာ​တာ​ဖြစ်​ပါ​တယ်။ဒါ​ကြောင့် အကျဉ်း​ချုပ်​ပြော​ရ​မယ်​ဆို​ရင်​တော့ Comment ပိတ်​ချင်​တယ်​ဆို​ရင်​တော့ Code နဲ့ Same Level ဖြစ်​ရင်​ရ​ပါ​တယ်။

နောက်​တစ်​ခု​လေ့​လာ​ကြ​မှာ​ကတော့ တွန့်​ကွင်း​လေး​တွေ​ကို Coding Standard နဲ့​ကိုက်​ညီ​အောင် ဘယ်​လို​ရေး​မ​လဲဆို​တာ​ကို​လေ့​လာ​ကြ​မှာ​ဖြစ်​ပါ​တယ်။

Curly braces with Standard

ကျွန်တော်​တို့​အခု​လေ့​လာ​ကြ​မှာ​ကတော့ Curly braces လို့ခေါ်​တဲ့ တွန့်​ကွင်း​လေး​တွေ​ကို စံ​မှီ​အောင်​ဘယ်​လို​ရေးသား​အသုံးပြု​ကြ​မ​လဲဆို​တာ​ဘဲ​ဖြစ်​ပါ​တယ်။

ဒီ​အကြောင်း​ကတော့ သိပ်​အများ​ကြီး​ပြော​စရာ​မ​လို​ဘူး​ထင်​ပါ​တယ်။

တော်တော်​များ​များ ရေးသား​တဲ့​ပုံစံ​က စံ​မှီ​တဲ့​ပုံစံ​ဖြစ်​နေ​လို့​ပါ။ဘယ်​လို​လဲဆို​တော့ ကျွန်တော်​တို့ Class တွေ Method တွေ​ရေးသား​ခဲ့​တဲ့​အခါ​မှာ​ဒီ​လို​လေး​ရေးသား​ခဲ့​ပါ​တယ်။

Private void PascalMethod(string name)

{

// Code

}

အဲ့ဒီလို​ရေးသား​ရင်​မှန်​ပါ​တယ်။ကျွန်တော်​တို့​အသုံးပြု​နေ​တဲ့ Visual Studio IDE က​လည်း Auto ချိန်​ညှိ​ပေး​ပါ​တယ်။

အဲ့​ဒီ​လို​ရေးသား​ရင်​တော့​မှန်​ပါ​တယ်။အောက်​က​ပုံစံ​အတိုင်း​ရေးသား​ရင်​တော့ မှား​ပါ​တယ်။

Private void PascalMethod(string name){

// Code

}


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

if(….){           // Code           }

အဲ့ဒီလိုရေးရင်မှားပါ​တယ်။ဒါ​ကြောင့် တွန့်​ကွင်း​လေး​တွေ​ကို​ရေး​မယ်​ဆို​ရင် စာ​ကြောင်း​နောက်​တစ်​ကြောင်း​ဆင်း​ပြီး​တော့​ရေး​ရင်​အကောင်း​ဆုံး​ဖြစ်​ပါ​တယ်။ဒီ​လို​လေး​ရေး​ပါ။

if(…)

{

// Code

}

အဲ့ဒီလိုလေးရေးရင်​မှန်​ပါ​တယ်။ if နဲ့ for အတွက်​ကို​လည်း Curly braces  ကို​တစ်​ကြောင်း​ထဲ​မ​ထား​သင့်​ဘဲ​နဲ့ တစ်​ကြောင်း​ဆင်း​ပြီး​တော့​မှ​ထား​သင့်​ပါ​တယ်။

ဒါ​ဆို​ရင်​ကျွန်တော်​တို့​နောက်ထပ်​လေ့​လာ​ကြ​မှာ​ကတော့  Space တွေ​ခြား​ချင်​ရင် ဘယ်​လို Coding Standard ကို​သုံး​ပြီး​တော့​ခြား​မ​လဲဆို​တာ​ကို​လေ့​လာ​ကြ​မှာ​ဖြစ်​ပါ​တယ်။

ဆုံး​သည်​အထိ​ဖတ်​ပေး​သော​ကြောင့်​ကျေးဇူးတင်​ပါ​တယ်။

အားလုံး​ဘဲ​ကျန်းမာ​ရွှင်လန်း​ကြ​ပါ​စေ…။

ဆက်​ပါ​ဦး​မည်….။

Facebook comments:

3 Responses

  1. Ei Maung says:

    > Space ကို​လုံး​၀​မ​သုံး​ရ​ပါ​ဘူး။ နောက်​တစ်​ခု​ကတော့ Tab ကို လေး​ခု အထိ​ဘဲ​သုံး​
    > သင့်​ပါ​တယ်။သူ့​ထက်​ပို​ပြီး​တော့​မ​သုံး​သင့်​ပါ​ဘူး။ ကျွန်တော်​တို့​သုံး​နေ​တဲ့ IDE က​
    > လည်း​အလို​အလျောက်​လုပ်​ပေး​တဲ့​အတွက်​ကြောင့် ဒီ​အကြောင်းအရာ​က သိပ်​တော့​
    > စိတ်ပူ​စရာ​မ​လို​ပါ​ဘူး။

    Although I’m the big fan of ‘tab’ indention, you can’t put 4 tabs to indent a code block. May be typo?

    As far as I know, VS automatically replace ‘Tab’ with ’4 spaces’ for indention as default.

    Spaces are most preferred indention style in various environment. Some (python, ruby) preferred 2 and some preferred 4.

  2. Zawmin says:

    ဟုတ်ကဲ့​ပါ….။
    Visual Studio က Tab တစ်​ခု​ကို space လေး​ခု​ခြား​ပေး​တယ်​ဆို​တာ​လည်း​ဟုတ်​ပါ​တယ်​ခင်ဗျာ…။
    ကျွန်တော်​ပြော​ချင်​တဲ့​သဘော​က တစ်​ချို့​က ဘေး​မျဉ်း​က​နေ​ခြား​တဲ့​အခါ​မျိုး​မှာ Tab မ​သုံး​ဘဲ​နဲ့ Space ကို​ဘဲ​လေး​ခါ​ရိုက်​နေ​တာ​မျိုး​တွေ​ကို​ဆိုလို​တာ​ပါ…။
    အခု​လို​ဆွေးနွေး​ပေး​တာ ကျေးဇူး​အများ​ကြီး​တင်​ပါ​တယ်​ခင်ဗျာ…။

  3. Thinzar says:

    Good Good!!!!

Leave a comment


*