How can you know a programming language’s dark secrets?

How can you know a programming language’s dark secrets

၁ Specification ရှိတဲ့ language တွေအတွက် (အတော်များများကရှိပါတယ်) specification ကို page by page တလုံးမကျန်နားလည်အောင်ဖတ်ပါ။ ဒီလိုဖတ်ဖို.အတွက် Formal Grammar theory နဲ. Compiler Theory တွေလိုပါလိမ့်မယ်။ ဥပမာ Java အတွက်ဆို Java Language Specification,C# အတွက်ဆို C# language specification တွေ ကိုနှံ.စပ်အောင်ဖတ်ပါ။

၂ နောက် ကိုလေ့လာနေတဲ့ language နဲ. Paradigm တူတဲ့ language တွေကိုလေ့လာပါ။ ဒီ language မှာတော့ ဒါရတယ် ဟို language မှာရလား။ ဘယ်သူက ပိုကောင်းလဲ ဥပမာ strongly type ဖြစ်တယ်လို.ပြောတဲ့ Java မှာ weak point ရှိတယ် compound assignement မှာ။ C# မှာမရှိဘူး။အဲ့လို ယှဉ်စဉ်းစားရင် language ကိုသေချာပိုနားလည်လိမ့်မယ်။

၃ Language တခုနဲ.တခု syntax သာတူချင်တူမယ် semantic မတူဘူး။ ဥပမာ C# က For loop နဲ. Java for loop semantic မတူဘူး။ဘယ်နားကွာလဲ ဘာတွေကွာလဲ စဉ်းစားရမယ်။ အဲ့လိုစဉ်းစားလိုက်လို.မှ every language element တွေသည် လုံး၀ တူနေပြီဆိုရင် ကို.မှာလေ့လာတာလိုနေသေးတယ်ဆိုတာပြတယ်။ အနည်းဆုံးတော့ နည်းနည်းလေးဖြစ်ဖြစ်ကွာတယ်။

၄။ နောက် Language တွေ နောက်ကွယ်က ထုတ်သွားတဲ့ bytecode specification တွေ MSIL လိုကောင်တွေကို လေ့လာပါ။ ဒီလို လေ့လာခြင်းအားဖြင့်ကို လေ့လာတဲ့ Language သည် ဟိုး အောက်ဆုံးအထိ ဘာတွေလုပ်သွားသလဲဆိုတာသိပါလိမ့်မယ်။

၅ နောက် Language တွေရဲ. runtime တွေ ဥပမာ JVM တွေ CLR တွေ internally မှာဘယ်လိုလုပ်သွားသလဲသိအောင်လုပ်ပါ။

၆။ Language ကို implement ပြန်လုပ်ကြည့်ပါ။ဒါဆို အသေးစိတ် Compiler အလုပ်လုပ်ပုံတွေ Type System တွေကိုပါ နားလည်ပါလိမ့်မယ်။

၇ Language နဲ.ရေးထားတဲ့ Open Source project တော်တော်များများကိုဖတ်ပါ။ Design idiom တွေ pattern တွေ Implementation technique တွေကိုလေ့လာပါ။

၈ တခြား Paradigm မတူတဲ့ language တွေကို လေ့လာပါ။ Thinking concept ပြောင်းရေးရတာမျိုးကိုလေ့လာပါ။

Original link

crd=>(https://m.facebook.com/story.php?story_fbid=pfbid02Mc7DKQWywtW6Vbbq9q26Ap5WgB8ntwVaqaVTVHz4CVwwSiQWs5THQCBBgEUSL4iFl&id=1819241055&mibextid=Nif5oz)

Leave a comment