ကဗ်ာ/ရသ/နည္းပညာ

3.JS Functions

Oct 1, 2016
(3)


JS မှာ function တွေကို name ရော nameless ရောလက်ခံပါတယ်။ function execute လုပ်တဲ့အခါ function name နဲ့ပြန်ခေါ်ရပါတယ်။nameless အတွက်တော့ var တစ်ခုထဲသွားထည့်ပေးမှ ရှေ့ဆက်နိုင်မှာပါ။



function a(){ }



function name aဖြစ်ပါတယ်.

a(); 

ဒါက executive function ပါ. ဒါကမှရလဒ်ပါ။


var a= function (){….}


function name တောင်မပါပါဘူး.a ဟာ value of function assigned ဖြစ်ပြီး return result (ရလဒ်)မဟုတ်ပါ။





ဒီနေရာမှာတစ်ခုထပ်ရှင်းပြချင်တာက လိုအပ်ချက်အရ function scope ထဲမှာ variable ထပ်ကြေငြာရတယ်ဆိုရင်သူ့ကို local variable လို့ခေါ်ပါတယ်။သူ့ကို function အပြင်ဘက်မှာသုံးလို့မရပါဘူး။ function ရဲ့အပြင်ဘက်မှာ ကြေငြာထားတဲ့ variableကိုတော့ global variable လို့ခေါ်ပါတယ်.သူ့ကို function ထဲ ကနေလည်းလှမ်းခေါ်နိုင်ပါတယ်။


var message= “in global”;
var a =function (){
var message= “in local”;
console.log(message);
b();


function b(){
console.log(message);
};

result ဘာထွက်မယ်ထင်လဲ၊?

in local တစ်ကြောင်း, in global တစ်ကြောင်းထွက်လာပါမယ်။ function b ကို a ကနေလှမ်းခေါ်ထားပေမယ့် b ထဲကိုရောက်နေမယ့် message တန်ဖိုးဟာ “in global”ပဲဖြစ်နေမှာမို့ပါ။

ဥပမာလေးတွေလေ့လာကြည့်ရအောင်။


// ***** String concatination

var string = "Hello";

// string += " World";

string = string + " World";

console.log(string + "!");


+= ဆိုတာမူလတန်ဖိုးမှာပဲ ထပ်ပေါင်းထည့်သွင်းမယ်လို့ပြောတာပါ။ဒါကြောင့် string + world နဲ့တူတူပါပဲ။ Js မှာစာကြောင်းတစ်ကြောင်းနဲ့တစ်ကြောင်း ဆက်ဖို့ + ကိုသုံးပါတယ်။



// ***** Regular math operators: +, -, *, /

console.log((5 + 4) / 3);

console.log(undefined / 5);

function test1 (a) {

console.log( a / 5);

}

test1();


test1 ကို execute လုပ်တဲ့အခါ ဘာရမလဲ ? အခု parameter ပါတဲ့ function လေးတွေကြည့်ကြည့်ရအောင် ။ parameter ကို argument လို့လည်းခေါ်ပါတယ်။


function multiply(x, y) {

return x * y;

}

multiply.version = "v.1.0.0";

console.log(multiply.version);

var ans = multiply (4,5);



compare က function name, xနဲ့y က argument, argument မှာ var ကြေငြာစရာမလိုပါ။argument တွေကိုတော့ return ပြန်ပြဖို့ခေါ်တဲ့အခါ ထည့်သွင်းပေးရပါတယ်။ return ဆိုတာက keyword ပါ.အဖြေထုတ်ပြဖို့သုံးပါတယ်။ အခုဥပမာလေးကိုကြည့်ကြည့်မယ်ဆိုရင် - answer မှာ ဘာ result ထွက်မလဲ? multiply. version ကိုပြခိုင်းတဲ့အခါ ဘာ result ရမလဲ? နောက်ထပ်- multiply(4,” a”); ဆိုရင် ဘာ resultရမလဲ၊? argument ထည့်ရမယ့် function ဖြစ်ပေမယ့် multiply() လို့ပဲရေးပြီး execute လုပ်ခိုင်းမယ်ဆိုဘာ result ရမလဲ?

ဒီဥပမာလေးတွေကိုလည်းဆက်လေ့လာပေးပါဦး….


// Function factory

function makeMultiplier(multiplier) {

var myFunc = function (x) {

return multiplier * x;

};

return myFunc;

}

var multiplyBy3 = makeMultiplier(3);

console.log(multiplyBy3(10));

var doubleAll = makeMultiplier(2);

console.log(doubleAll(100));

// Passing functions as arguments

function doOperationOn(x, operation) {

return operation(x);

}

var result = doOperationOn(5, multiplyBy3);

console.log(result);

result = doOperationOn(100, doubleAll);

console.log(result);



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

https://jsfiddle.net/

CSS ရော JS ရောအတွက် ကိုယ်ရေးမယ့် Code တွေကို text editor တစ်ခုလို သွား စမ်းကြည့်လို့ရပါတယ်။

http://codepen.io/

CSS ရော JS ရော ရေးပြီးသား Design တွေကိုအခမဲ့ယူလို့ရပါတယ် ။စမ်းလို့ရပါတယ်။သွားစမ်းကြည့်ပါ။

http://stackoverflow.com/

ဒီဆိုက်ကအိုင်တီသမားတွေလက်စွဲဆိုက်တစ်ခုပါ.မသိတာမှန်သမျှမေးလို့ရပါတယ်။

ရှေ့သင်ခန်းစာမှာတော့ Javascript ရဲ့ language construct အကြောင်းရှင်းပြပါမယ်။

Read more ...

2.Javascript Data Types

Oct 1, 2016
(2)


Javascript ကို HTML ထဲမွာပဲ <script></script> tag ထဲမွာေပါင္းျပီးေရးလို့ရသလို သီးသန့္ ဖိုဒါတစ္ခုေဆာက္ script.js ဖိုင္တစ္ခုသပ္မွတ္ျပီးသပ္သပ္စီလည္းေရးလို့ရပါတယ္။ သပ္သပ္ေရးတဲ့အခါ HTML ဖိုင္ထဲမွာ JS ဖိုင္ေနရာကို source “src” ဆိုတဲ့ keyword နဲ့ညြွန္းေပးရပါတယ္။






<script src="/js/script.js"></script>



script tag ကို HTML head tag ထဲမွာသြားေရးေရး .body tag အဆံုးနားမွာသြားေရးေရး အဆင္ေျပပါတယ္။But, body အပိတ္ tag မတိုင္မီအဆံုးနားမွာေနရာခ်တာက အေကာင္းဆံုးေရးသားနည္းျဖစ္ပါတယ္။
Javascript ဟာ dynamically typed language ျဖစ္ပါတယ္.variable ေတြဟာကြဲျပားတဲ့ data type ကို execute မလုပ္မခ်င္းလက္ခံထားနိုင္ပါတယ္.






var a= ‘a’;  //var လို့ေရးရင္ရပါျပီ

var b= 30;



‘a’ (or)”a” လို့ေရးလိုက္တာနဲ့ String data type ျဖစ္ေျကာင္း Js ကသိပါတယ္။30 လို့ေရးလိုက္တာနဲ့ ဒါဟာ Number data type ျဖစ္ေျကာင္း js ကသိပါတယ္။ ေကာ္မန့္ေတြေရးခ်င္ရင္ // ေနာက္မွာေရးနိုင္ပါတယ္။ေကာ္မန့္ေတြက ကိုယ့္ဖာသာျပန္ျကည့္ရင္ျဖစ္ျဖစ္ ကိုယ့္ကုတ္ကိုသူမ်ားယူျကည့္ရင္ျဖစ္ျဖစ္ နားလည္လြယ္ေစတာမို့ေရးျဖစ္ေအာင္အေလ့အက်င့္လုပ္ထားေစခ်င္ပါတယ္။ Javascript မွာ data type နွစ္မ်ိုးပဲရွိပါတယ္ Primitive နဲ့ Object ပါ။ Primitive မွာ string(စာသားေတြ),number(64bitတြက္ခ်က္မွုကိုပဲအေျခခံထားတဲ့ နံပါတ္ေတြ),Boolean(မွန္/မွား ဆံုးျဖတ္ခ်က္ေတြ) ပါ၀င္ျပီး Object မွာ name:value (အမည္ တန္ဖိုး )အတြဲလိုက္data ေတြပါ၀င္ပါတယ္။






firstname:"AungAung",

lastname:"MinMaung",

social:{

facebook:"BlahBlah",

twitter:"Someone"

}



AungAung ဟာ stringျဖစ္လို့ “” လိုပါတယ္။name ျဖစ္တဲ့ firstnameမွာေတာ့ မလိုပါ။ျပီးေတာ့ ‘=’ အစား ‘ : ’ သံုးရပါတယ္။social ဆိုတဲ့ name မွာ value ဟာတစ္ခုမကတာေျကာင့္ { } ထဲထည့္ေပးလိုက္ရပါတယ္။ Js မွာမွထူးျခားစြာပါ၀င္တဲ့ data type တစ္ခုကေတာ့ undefined ပါ။variable တစ္ခုမွာ ဘာတန္ဖိုးမွ မပါ၀င္ရင္ undefined ကို js က အလိုလို ထည့္ေပးပါတယ္။ variable တစ္ခုကို undefined အျဖစ္ေျကျငာလို့ရေပမယ့္ ဘယ္ေတာ့မွမလုပ္ပါနဲ့။ undefined type ဟာေျကျငာဖို့ရည္ရြယ္ဖန္တီးထားတာမဟုတ္လို့ပါ။ တကယ္လို့ေျကျငာခ်င္တယ္ဆိုရင္ null အျဖစ္ေျကျငာလို့ရပါတယ္။ ေနာက္တစ္ခုက NaN ပါ Not a Number ျဖစ္ပါတယ္။



var c=a/b ;

console.log(c); 



လို့ေရးျပီး resulet ျကည့္လိုက္ရင္ NaN error ျပပါလိမ့္မယ္။ a ဟာ number မဟုတ္လို့ 30 နဲ့စားလို့မရပါဘူး။ဒါေျကာင့္ c ထဲကို Js က not a number (NaN) ကိုထည့္ေပးလိုက္ပါတယ္။colsole.log ကေတာ့ ဒီရလဒ္ကို ျပသေပးပါတယ္။ ေနာက္ဆံုးတစ္ခုကေတာ့ ES6 လို့ေခၚတဲ့ symbolic type ပါ။2015 ကတည္းက release လုပ္ထားျပီးျဖစ္ေပမယ့္ widely support မျဖစ္တာေျကာင့္ခုထက္ထိ widely မသံုးရေသးပါဘူး။
Programming တိုင္းမွာလိုလို variable သတ္မွတ္တာ..Array ေဆာက္တာ… functionတည္ေဆာက္တာ..condition စစ္တာ..looping ပတ္တာ….error handling လုပ္တာ.. စတဲ့အေျခခံက်တဲ့လုပ္ေဆာင္ခ်က္ေတြဟာေရးသားပံုသာကြဲမယ္ လုပ္ငန္းတူေတြအေနနဲ့ပါ၀င္ေလ့ရွိပါတယ္။ ဒါေျကာင့္language တစ္ခု ကိုေသခ်ာနားလည္ထားျပီးသား ,သေဘာေပါက္ထားျပီး သားဆိုရင္ေနာက္တစ္ခုကို ေလ့လာတဲ့အခါအရမ္းကိုပဲလြယ္ကူသြားတတ္ပါတယ္။ေလ့လာေနစလူငယ္ေတြ အေနနဲ့ေတာ့ဟိုဟာေကာင္းနိုးဒီဟာေကာင္းနိုးေလ့လာေနမဲ့အစားတစ္ခုခုကိုေဇာက္ခ်ေလ့လာသင့္ပါတယ္။ အခု javascript ကိုရွင္းျပတဲ့အခါမွာလည္း/သည္မေရြးေတာ့ေျပာျဖစ္မွာမဟုတ္ဘူး..နားလည္သေဘာေပါက္ျပီးကိုယ္တိုင္ေရွ့ဆက္ေလ့လာသြားလို့ရေအာင္ပဲ အဓိကထားေျပာျဖစ္မွာပါ။ဒါေျကာင့္ တျခားေမးခ်င္တာရွိရင္ ဖြဘုတ္ကေနလာေမးလို့ရပါတယ္။Facebook Search မွာက်ြန္ေတာ့္နာမည္ ရိုက္ထည့္ရွာလိုက္ .... ကိုရီးယားမင္းသားေခ်ာအလားထင္မွတ္ရတဲ့ ရူူပါ ကိုေတြ့ျပီဆို တာနဲ့ခ်က္ေဘာက္ကလာေမးလို့ ရပါတယ္ဗ်ာ.:D ျပီးေတာ့ မေန့က ရွင္းျပသြားတာေလးေတြလက္ေတြ႔လိုက္လုပ္ျကည့္တဲ့အခါ မွာ လည္းအဆင္မေျပတာေလးေတြ ေတြ႕ေကာင္းေတြ႕ပါလိမ့္ဦးမယ္ .. ကြ်န္ေတာ့္တုန္းကေတာ့ BrowserSync ကို terminal ကေနသြင္းတာ ဘယ္လိုမွမရဘူး..ေခ်ြးပါပ်ံသြားတယ္။ ေနာက္မွ Network ေျကာင့္လားဆိုျပီး ရံုး Wifi ကိုျဖုတ္ ျပီးကိုယ့္ဖုန္း Wifi နဲ့ျပန္စမ္းေတာ့မွရသြားတယ္ ရံုး Wifi က Network Admin ကပညာေတြစြန္း ျပထားေလေတာ့ သြင္းမရဘူးျဖစ္ေနတာကိုးအဲ့ဒါေျကာင့္ သူငယ္ခ်င္းတို့ စမ္းတဲ့အခါက်ရင္လည္း အဆင္မေျပတာရွိေကာင္းရွိမယ္ .. ဆက္လက္ ေလ့လာရင္း ကြ်န္ေတာ္မျမင္လိုက္တာေတြေတာင္ ခင္ဗ်ားတို့က ျမင္လာမွာမို့ အားမေလ်ွာ့ပါနဲ့လို့ ေျပာခ်င္ပါတယ္

ေနာက္သင္ခန္းစာမွာ functionေတြအေျကာင္းရွင္းျပပါမယ္။
Read more ...

1.Javascript Introduction

Oct 1, 2016
Javascript introduction javascript ကိုမေျပာခင္java နဲ့ javascriptဘာမွမဆိုင္ဘူးဆိုတာေလးတစ္ခုေသေသခ်ာခ်ာသိထား ေစခ်င္ပါတယ္။ကြ်န္ေတာ္လည္း စေလ့လာခါစက အတူတူလို့ထင္ခဲ့ဖူးလို့ပါ။တကယ့္လက္ေတြ့မွာေတာ့ သူတို့ရဲ့ coding structure ေတြဟာလည္းကြဲျပားျခားနားျကပါေသးတယ္။ေနာက္တစ္ခုက HTML တို့ CSS တို့နားလည္ျပီးမွ Javascript ကိုေလ့လာမယ္ဆို ရင္ပိုျပီးအက်ိုးမ်ားပါလိမ့္မယ္။ Javascript ဟာ web ကိုတန္ဆာဆင္တဲ့ေနရာမွာမရွိမျဖစ္အေရးပါတဲ့ language တစ္ခုျဖစ္ပါတယ္။ထူူးျခားတာတစ္ခုက သူ့ code ကို browser ကတိုက္ရိုက္နားလည္တာေျကာင့္ editor တစ္ခုရွိမယ္ Browser လည္းရွိမယ္ဆိုရင္ JS စေရးလို့ရပါျပီ ။တစ္ျခားသီးသန့္ထပ္ျပီး install လုပ္ရမယ့္ framework သပ္သပ္မလိုပါဘူး စမ္းမယ့္Browser ကိုေတာ့ Chrome ကိုသံုးဖို့ညြွန္းခ်င္ပါတယ္။Code editor အတြက္ကုိေတာ့ sublime text 3 ကိုညြွန္းခ်င္ပါတယ္ sublime မသံုးခ်င္ဘူး..သံုးေနက် editor ရွိလို့အဲ့ဒါကိုပဲ သံုးခ်င္တယ္ဆိုရင္လည္းအဆင္ ေျပပါတယ္။ အခု သင္ခန္းစာအတြက္ ေတာ့ sublime editor ပဲသံုးမွာမို့ install သြင္းရေအာင္။ စက္ကို အင္တာနက္ခ်ိတ္လိုက္ျပီးရင္ google.com မွာ ‘download sublime text 3’ လို့ရိုက္ထည့္။က်လာတဲ့ result ထဲမွအဆင္ေျပတဲ့လင့္တစ္ခုခုကေန download ဆြဲျပီး Sublime Text 3 ကို စက္မွာ install လုပ္။ခါတိုင္းလုပ္ေနက်အတိုင္း Next >Next > Finish ေပါ့ဗ်ာ :D
ေလ့က်င့္ဖို့အတြက္ document ေအာက္မွာ javascript နာမည္နဲ့ ဖိုဒါတစ္ခုေဆာက္ထားလိုက္ပါဦး။ ျပီးရင္ေတာ့ sublime မွာ index.html လို့ေရးျပီး Ctrl+S နွိပ္။ ျပီး ေစာေစာကေဆာက္ထားတဲ့ ကိုယ္ပိုင္ဖိုဒါထဲမွာသြား save လိုက္ဗ်.


index.html တစ္ဖိုင္ရျပီ ။ျပီးရင္ sublime စာမ်က္နွာမွာ html:5 လို့ေရးျပီး keyboard က Ctrl+E ကိုနွိပ္လိုက္မယ္ဆိုရင္ html skeleton ဒီလိုေလး ရပါျပီ

တကယ္လို့အဲ့လိုမေပၚလာဘူးဆိုရင္ေတာ့ sublime ထဲမွာ service packageေလးတစ္ခုလိုေနတာေျကာင့္ပါ။ဒါေပမယ့္ sublime 3 မွာေတာ့ default မွာကတည္းကပါျပီးသားျဖစ္ပါတယ္။တကယ္လို့မရခဲ့ဘူးဆိုရင္ဘယ္လိုလုပ္ရမလဲတစ္ခါတည္းရွင္းျပေပးပါဦးမယ္။(လ်ွာရွည္တယ္မထင္ပါနဲ့ဗ်ာ)တကယ္က ‘emmit’ ဆိုတဲ့ package ေလးမပါ၀င္ေသးတာေျကာင့္ ဒီ service ကိုသံုးလို့ မရေသးပဲျဖစ္ေနတာပါ ဒါေျကာင့္ emmit ထည့္ေပးလိုက္မယ္ဆို html shortcutေလး ေတြျပန္ရသြားမွာပါ။ကဲ emmit ထည့္နည္းေျပာျပမယ္ စက္ကိုအင္တာနက္ခ်ိတ္ထားျပီးရင္ sublime မွာ Ctrl (Mac မွာဆို command) +Shift+Pျပီးရင္ ေပါ္လာတဲ့ box မွာ install လို့ရိုက္ enter ေခါက္ျပီးရင္ emmit လို့ထပ္ရိုက္ enterထပ္ေခါက္။ရျပီ .. သူ့ဖာသာသြင္းသြားေပးလိမ့္မယ္ ။ျပီးရင္ sublime ကို restart ခ်လိုက္ရင္ ေစာနက မရတဲ့ shortcut သံုးလို့ရျပီ။ emmit ရဲ့ အသံုး၀င္မ်ားျပားလွတဲ့ shortcut ေတြကို ဒီမွာသြားျကည့္လို့ရပါတယ္။http://docs.emmet.io/cheat-sheet/ Mac user ေတြအေနနဲ့http://docs.sublimetext.info/en/latest/reference/keyboard_shortcuts_osx.html ဒီလင့္မွာ sublime ရဲ့ အသံုး၀င္shortcut ေတြကို လည္း တစ္ခ်က္ေတာ့သြားေရာက္ ေလ့လာထားသင့္ပါတယ္။ဒီနည္းနဲ့ emmit သာမက တျခား service package ေတြလည္းလိုရင္လိုသလို ျဖည့္သြင္းအသံုးျပဳနိုင္ပါတယ္။ Javascript ရဲ့ အလုပ္လုပ္ပံုကိုရွင္းရွင္းလင္းလင္းသိျမင္ နိုင္ဖို့ ကြ်န္ေတာ္တို့ browser sync ေလး ထည့္ထားေပးရင္ပိုအဆင္ေကာင္းပါတယ္ ။မထည့္လည္း ရပါတယ္ ဒါေပမယ့္ ယေန့ေခတ္ နည္းပညာေလးေတြသိထားရေအာင္ေတာ့ ေျပာျပထားခ်င္တယ္ဗ်ာ။ဒီေတာ့ က်ြန္ေတာ္တို့ node.js ေလးစက္မွာ ထည့္ထားလိုက္ရေအာင္။ထံုးစံအတိုင္း အင္တာနက္ခ်ိတ္ျပီး download node.js ဆိုျပီးရိုက္ရွာလိုက္ ။ျပီးရင္ေဒါင္း install လုပ္

ကိုယ္က Mac ဆို Mac အတြက္ကိုေဒါင္းေပါ့ဗ်ာ ။ျပီးရင္ terminal (or )cmd ကိုဖြင့္ျပီးေတာ့ node --version လို့ရိုက္ထည့္ enterေခါက္ version ကိုေဖာ္ျပေပးေနလိမ့္မယ္။ျပီးရင္ npm --version လို့ရိုက္ထည့္ enter ေခါက္ node package manager version ကိုျပေနတယ္ဆိုရင္ install successful ေအာင္ျမင္ပါျပီ။ဆက္ျပီးရွင္းျပခ်င္တာက node.js နဲ့တြဲသံုးရမယ့္ browser sync ေလးအေျကာင္း။ google မွာရွာရင္ လည္းရတယ္ But ဒီလိပ္စာ www.browsersync.io မွန္ဖို့ေတာ့လိုမယ္။

သူ့ install code (npm install -g browser-sync)ကို ေကာ္ပီကူးျပီးရင္ terminal(or) cmd မွာ pasate လုပ္ enter ေခါက္ ။စာသားေတြတသီတတန္းျကီးက်လာျပီးရင္ install အဆင္ေျပသြားပါလိမ့္မယ္။ ရမရေသခ်ာေအာင္ terminal(or)cmd မွာ ေစာေစာကပံုစံအတိုင္း browser-sync --version လို့ရိုက္ထည့္ enter ေခါက္ version နံပါတ္ျပေနရင္ complete ျဖစ္ပါျပီ။


browser sync ကိုဘယ္လိုခ်ိတ္ဆက္အသံုးျပုရမလဲဆိုရင္ ပထမဆံုးကိုယ့္ရဲ့ html file ရွိတဲ့ folder ကို terminal (or) cmd ကေနသြားရမယ္ ။လက္ရွိေနရာကိုျကည့္ခ်င္ရင္ dir(for windows) ls(for mac) လို့ရိုက္ထည့္လိုက္ ။ကိုယ္သိမ္းထားတဲ့ေနရာကိုသြားခ်င္ရင္ေတာ့ cd command နဲ့သြားလို့ရတယ္။ ပံုမွာျကည့္ျကည့္ . folder ေနရာေရာက္ျပီဆို browser-sync start --server --directory --files “ */ဆိုတဲ့ code ေလးနဲ့ on ေပးရတယ္။အေပၚကျပထားတဲ့ကုတ္က လက္ရွိအဆင္အေျပဆံုးပံုစံပါ။သူ့ website မွာေတာ့ start code က static site,dynamic site အတြက္ sync code သပ္သပ္ စီခြဲထားပါေသးတယ္။ https://browsersync.io/#install လင့္မွာတစ္ခ်က္ ရွိဳးျကည့္ဗ်။ ကဲခုဆို ကိုယ္ index.html ထဲေရးလိုက္သမ်ွ code ဟာ စကၠန့္မျခားပဲ ဖြင့္ထားတဲ့ chrome browserကဖြင့္ထားတဲ့ webpage ေပၚမွာ up to date ေပၚေနေစမွာျဖစ္ပါတယ္။ဒါေျကာင့္ အခ်ိန္ကုန္အမ်ားျကီးသက္သာသြားေစပါတယ္။ဘယ္ဘက္မွာ code ေရး ညာဘက္ကမွာ google chrome ရဲ့ code view( chrome R-click>inspect>console) ကိုဖြင့္ထားမယ္ဆိုရင္ ဘယ္ဘက္မွာေရးသမ်ွ code ကို ညာဘက္မွာ အခ်ိန္မဆိုင္းပဲ အလုပ္လုပ္ေပးေနတာေတြ့ေနပါလိမ့္မယ္။ သိပ္အဆင္မေျပလို့ဒီအတိုင္း ခပ္ရွင္းရွင္း တစ္ဆင့္ခ်င္း code ေရးလိုက္ျပန္ျကည့္လိုက္လုပ္မယ္ဆို ရင္လည္းရပါတယ္။ ခုထိေတာ့ code တေျကာင္းမွစမေရးရေသးပါဘူး။ေနာက္သင္ခန္းစာက်မွ code စေရးရေအာင္
Read more ...