Programming..အေၾကာင္းသိေကာင္းစရာမ်ား..အေျခခံသိနားလည္လိုသူမ်ားအတြက္သာ

Programming အေၾကာင္းသိေကာင္းစရာမ်ား
🌷🌷🌷🌷🌷🌷🌷🌷🌷🌷🌷🌷🌷🌷🌷🌷
Programming အေၾကာင္းေဆာင္းပါးေလးေတြ႕မိလို႔ ကူးလာေပးလိုက္ပါတယ္။
နည္းနည္းၾကာေလာက္ၿပီဆိုေပမယ့္ ဖတ္လို႔ေကာင္းဆဲပါ :D
ဖတ္ၾကည့္သင့္ပါတယ္ ;)
.
Programming အေၾကာင္းသိေကာင္းစရာမ်ား
Programming ဆိုတာဘာလဲ?
Programming ဆိုတာ ကြန္ပ်ဴတာတစ္လုံးေပၚမွာ လုပ္ေဆာင္ခ်က္ေတြကို အမိန႔္ေပးခိုင္းေစနိုင္တဲ့ အရာေတြလို႔ အၾကမ္းအေနနဲ႔ မွတ္ယူနိုင္မွာျဖစ္ပါတယ္။ ဒီေတာ့ ကၽြန္ေတာ္တို႔ ထိေတြ႕ေနၾကတဲ့ ကြန္ပ်ဴတာဆိုတဲ့ အရာေတြကို ပထမဆုံးေလ့လာၾကည့္မွာ ျဖစ္ပါတယ္။
ကၽြန္ေတာ္တို႔ အသုံးျပဳေနတဲ့ ကြန္ပ်ဴတာဟာ ထိေတြ႕ကိုင္တြယ္နိုင္ေသာအရာ (Hardware) နဲ႔ ထိေတြ႕ကိုင္တြယ္လို႔ မရနိုင္ေသာအရာ (Software) တို႔နဲ႔ ေပါင္းစပ္ဖြဲ႕စည္းထားပါတယ္။
Hardware ဆိုတဲ့ေနရာမွာ
(1). Input Device မ်ားျဖစ္တဲ့
a. Keyboard
b. Mouse
c. Scanner
(2). Output Device မ်ားျဖစ္တဲ့
a. Monitor
b. Printer
(3). Main Memory (RAM)
(4). Secondary Memory (Hard disk, DVD/CD ROMs)
(5). CPU
ေနာက္ၿပီးေတာ့ သူတို႔ေတြကို တစ္ခုနဲ႔တစ္ခု ပို႔ေဆာင္ေပးေနတဲ့
(6). Bus ေလးေတြကို ဆိုလိုပါတယ္။
.
ဒီေနရာမွာ သိထားရမွာက Hardware မွာ မွတ္ဉာဏ္ပဲရွိၿပီးေတာ့ အသိဉာဏ္မရွိပါဘူး။ ဒါေၾကာင့္ (Computer has no Intelligence.) လို႔ဆိုနိုင္မွာျဖစ္ပါတယ္။ အဲ့ဒီအခါမွာေတာ့ ကြန္ပ်ဴတာႀကီး အသက္ဝင္လာေအာင္၊ အလုပ္ေတြလုပ္လို႔ရေအာင္ သူ႔မွတ္ဉာဏ္ကို အားကိုးၿပီး အသိဉာဏ္နဲ႔တူတဲ့ Software ေတြကို Run ေပးရပါတယ္။ ဒီ Software ေတြေၾကာင့္ ကြန္ပ်ဴတာဟာ လုပ္ေဆာင္ခ်က္ေတါကို လုပ္နိုင္တာျဖစ္ၿပီး၊ Hardware ေတြကို ခိုင္းေစရန္အတြက္ Software ေတြလိုအပ္လာပါတယ္။
Software ဆိုတဲ့ေနရာမွာ အလြယ္ေျပာရရင္ေတာ့ Programming ဘာသာစကားေတြနဲ႔ ေရးထားတဲ့ အစုအေဝးတစ္ခုကို ဆိုလိုပါတယ္။ ဥပမာအားျဖင့္ Adobe Pagemaker, Photoshop, Office, AutoCAD, etc… အားလုံးကို Software လို႔ေခၚဆိုနိုင္ပါတယ္။ အဲ့ဒါေတြ ျဖစ္လာေအာင္ Programming Languages ေတြ နဲ႔ေရးၾကရပါတယ္။ အဲ့ဒီေတာ့ Programming ဆိုတာ Software ေရးနည္းလို႔ဆိုနိုင္မွာျဖစ္ပါတယ္။
.
Program တစ္ခုမွာ
1. Data
2. Instruction/ Command ဆိုၿပီး ႏွစ္ခုပါတယ္။
ဥပမာအေနနဲ႔ေျပာမယ္ဆိုရင္
5 နဲ႔ 4 ေပါင္းတဲ့ ကိစၥတစ္ခုကို ေဖာ္ျပပါမယ္။
အရွင္းလင္းဆုံးပုံစံနဲ႔ ျပရမယ္ဆိုရင္ 5 + 4 လို႔ေရးနိုင္ပါတယ္။
အဲ့ဒီေနရာမွာ 5 နဲ႔ 4 က Data ျဖစ္ၿပီး (+) က Instruction / Command ျဖစ္ပါတယ္။
Programming Language ေတြမ်ားစြာ ရွိေနပါတယ္။ ဒါေပမယ့္ အေျခခံသေဘာတရားေတြကေတာ့ အားလုံးအတူတူပဲလို႔ ဆိုနိုင္ပါတယ္။
.
Programming Language ကို အေျခခံအားျဖင့္ေတာ့ (၃) မ်ိဳး ခြဲျခားထားပါတယ္။
1. Machine Languages
2. Assembly Languages
3. High-Level Languages တို႔ျဖစ္ပါတယ္။
.
1. Machine Languages
သူ႔မွာ "0" ရယ္ "1" ရယ္ႏွစ္ခုပဲ ရွိပါတယ္။ စက္အတြက္ ေရးတဲ့စာလို႔ နားလည္နိုင္ပါတယ္။ လူတစ္ဦးအေနနဲ႔ေတာ့ နားလည္ဖို႔ မျဖစ္နိုင္ပါဘူး။ စက္တစ္လုံးအေပၚမွာေတာ့ အျပည့္အဝနားလည္နိုင္တဲ့ အေျခအေနတစ္ခုျဖစ္ပါတယ္။
.
2. Assembly Languages
Assembly Languages မွာေတာ့ လူက 30% ေလာက္နားလည္လာၿပီး စက္ကလည္း 70% ေလာက္ နားလည္လာပါၿပီ။ Assembly Languages မွာ Data ေတြရွိမယ္၊ Instruction / Command ေတြရွိမွာျဖစ္ပါတယ္။ ဥပမာအေနနဲ႔ ထပ္ေျပာရမယ္ဆိုရင္ေတာ့ 10 + 20 = 30 ဆိုတာမ်ိဳးပါ။ 10, 20, 30 က Data ေတြျဖစ္ၿပီး၊ + နဲ႔ = က Instruction / Command ေတြျဖစ္ပါတယ္။ ဒါေပမယ့္ စက္ကို ဒီအတိုင္းသြားေရးျပမယ္ဆိုရင္ သူကမသိနိုင္ပါဘူး။ သူက 0 နဲ႔ 1 ႏွစ္ခုပဲသိတာ ျဖစ္ပါတယ္။ စက္နားလည္နိုင္ဖို႔အတြက္ ဘာသာျပန္ (Compile) လုပ္ေပးရတယ္။ အဲ့ဒီအခါမွ Machine Language ျဖစ္သြားၿပီး စက္မွ Run လို႔ရသြားမွာျဖစ္ပါတယ္။ Compile ဆိုတာ ေျပာင္းေပးတာျဖစ္ပါတယ္။ Assembly Language ကေန Machine Language ကိုေျပာင္းေပးတာကို Compile လုပ္တယ္လို႔ေခၚတယ္။ နာမည္အေနနဲ႔ Assembler လို႔ေခၚပါတယ္။
.
3. High-Level Languages
High-Level Languages မွာေတာ့ လူေတြက 100% ကို နားလည္လာၿပီးျဖစ္ပါတယ္။ စက္ကိုလည္း နားလည္ေအာင္ Compile လုပ္လို႔ အဆင္ေျပသြားၿပီးလို႔ ဆိုနိုင္ပါတယ္။ High-Level မွာလည္း Data ေတြ Instruction / Command ေတြနဲ႔ ျပည့္စုံပါတယ္။ Program တစ္ခုေရးၿပီးလို႔ စက္နားလည္ေအာင္ Compile လုပ္ေပးရင္ သူ႔ကို နာမည္အေနနဲ႔ Compiler လို႔ေခၚပါတယ္။
Programming Language မ်ားအေၾကာင္း
Programming Language ေတြမ်ားစြာဟာ ယခင္အခ်ိန္မ်ားစြာကတည္းက ထြက္ေပၚခဲ့ပါတယ္။ နည္းပညာရဲ့ သေဘာတရားအရ အေျပာင္းအလဲ ျမန္ဆန္တဲ့အတြက္ေၾကာင့္ ငုတ္လၽွိုးေပ်ာက္ကြယ္သြားတဲ့ Language ေတြရွိခဲ့သလို၊ အသစ္ထပ္မံထြက္ရွိလာတဲ့ Language ေတြေၾကာင့္လဲ Programming Language ေတြဟာ ပိုမိုမ်ားျပားလာခဲ့တယ္လို႔ ဆိုနိုင္ပါတယ္။ Programming Language ေတြအေၾကာင္းကို အစအဆုံးတခုခ်င္းစီ ေလ့လာနိုင္ဖို႔ မလြယ္ကူေပမယ့္ နာမည္ေက်ာ္ၾကားၿပီး၊ လူသိမ်ားတဲ့ Programming Language ေတြအေၾကာင္းကိုေတာ့ History မ်ားနဲ႔အတူ ေဖာ္ျပေပးလိုက္ပါတယ္။
.
C
၁၉၇၂ ခုႏွစ္က ေပၚထြက္ခဲ့တဲ့ C Programming Language ဟာ Programming ေလာကအတြက္ ခိုင္မာတဲ့ အုတ္ျမစ္တစ္ခုျဖစ္ခဲ့ပါတယ္။ နည္းပညာေလာကအေပၚမွာလည္း မ်ားစြာအက်ိဳးျပဳခဲ့ၿပီး၊ လက္ရွိအခ်ိန္ထိ အသုံးျပဳေနဆဲ Language အမ်ိဳးအစားတစ္ခုျဖစ္ပါတယ္။ C ကို ၁၉၆၉ ခုႏွစ္ကေန ၁၉၇၃ ခုန်စ္အတြင္း Dennis Ritchie က Bell Telephone Laboratories မွာ Unix Operating System အတြက္ ဖန္တီးခဲ့တာျဖစ္ပါတယ္။ C ရဲ့ေနာက္ဆုံး Stable Release ကေတာ့ C 11 ျဖစ္ၿပီး ၂၀၁၁ ခုႏွစ္ရဲ့ ဒီဇင္ဘာလမွာ ထြက္ခဲ့တာျဖစ္ပါတယ္။
.
C++
C++ အေၾကာင္းကိုေတာ့ ကြန္ပ်ဴတာအသုံးျပဳသူအမ်ားစု ၾကားဖူးနားဝေတာ့ အနည္းဆုံး ရွိၾကပါလိမ့္မယ္။ ဘာေၾကာင့္လဲဆိုေတာ့ C++ ဟာ Programming Language ေလာကအတါင္းမွာ ခိုင္ခိုင္မာမာရပ္တည္နိုင္ခဲ့ၿပီး၊ လက္ရွိအခ်ိန္ထိ အသုံးျပဳေနဆဲ Language တစ္ခုျဖစ္တဲ့အတြက္ေၾကာင့္ ျဖစ္ပါတယ္။ C++ ဟာ ၁၉၈၃ ခုႏွစ္မွာ ေပၚထြက္ခဲ့တာျဖစ္ၿပီး၊ C++ ရဲ့ Developer ကေတာ့ Bjarne Stroustrup ျဖစ္ပါတယ္။ Bell Telephone Laboratories ဟာ နည္းပညာေလာကအတြက္ ေအာင္ေျမတစ္ခုလို႔ ဆိုနိုင္ၿပီး C++ ကိုလည္း အဆိုပါေနရာကေန စတင္ခဲ့တာျဖစ္ပါတယ္။
.
C#
Microsoft ရဲ့ Product တစ္ခုျဖစ္တဲ့ C# ကေတာ့ ၂၀၀၁ ခုႏွစ္မွာစတင္ Develop လုပ္ခဲ့တာျဖစ္ပါတယ္။ C# ရဲ့ Stable Release ကေတာ့ 4.0 ျဖစ္ၿပီး လြန္ခဲ့တဲ့ ၂ ႏွစ္အခ်ိန္က ျဖန႔္ခ်ိေပးခဲ့တာျဖစ္ပါတယ္။ Microsoft ဟာ လြန္ခဲ့တဲ့ ၃ လအခ်ိန္ကေတာ့ Beta Release 5.0 ကိုထပ္မံ ျဖန႔္ခ်ိေပးခဲ့ပါတယ္။ Windows Application ေတြေရးသားရာမွာ မ်ားစြာလြယ္ကူအဆင္ေျပတဲ့ Programming Language အမ်ိဳးအစားတစ္ခုျဖစ္ပါတယ္။
.
Perl
Perl ဟာလည္း C-Base Programming Language တစ္ခုျဖစ္ၿပီး၊ ၁၉၈၈ ခုႏွစ္က ေပၚထြက္ခဲ့ပါတယ္။ Perl ရဲ့ Developer ကေတာ့ Larry Wall ျဖစ္ပါတယ္။ Scripting Language တစ္ခုျဖစ္ၿပီး System Administration, Text Processing နဲ႔ Web Server အတြက္ လုပ္ငန္းတာဝန္ပိုင္းေတြမွာ အသုံးျပဳမႈ မ်ားပါတယ္။ Perl ရဲ့ Stable Release ကေတာ့ 5.16.0 ျဖစ္ၿပီး Preview Release ကေတာ့ 5.17.1 ျဖစ္ပါတယ္။
.
Java
Java ကေတာ့ Programming Language ေတြထဲမွာ လက္ရွိေအာင္ျမင္မႈျမင့္မားေနတဲ့ Language တစ္ခုျဖစ္ပါတယ္။ Windows Application, Web Application ေတြနဲ႔ Mobile Application ေတြကို ေရးသားနိုင္တဲ့ Language အမ်ိဳးအစားတစ္ခုျဖစ္ၿပီး၊ ၁၉၉၁ ခုႏွစ္မွာ စတင္ဖန္တီးခဲ့တာျဖစ္ပါတယ္။ Java ရဲ့ Developer ကေတာ့ Games Gosling ျဖစ္ၿပီး၊ Sun Microsystems ကျဖစ္ပါတယ္။ Java ဟာ ၁၉၉၁ ခုႏွစ္မွာ စတင္ဖန္တီးခဲ့တာျဖစ္ေပမယ့္ အသုံးျပဳသူေတြထံကို ခ်ျပခဲ့တာကေတာ့ ၁၉၉၅ ခုႏွစ္ အေရာက္မွသာျဖစ္ပါတယ္။ Java ရဲ့ ေအာင္ျမင္မႈဟာ Programming ေလာကအေပၚရိုက္ခတ္မႈမ်ားစြာ ရွိခဲ့ၿပီး၊ Android Application ေတြကို Java နဲ႔ ေရးသားထားတာျဖစ္ပါတယ္။
.
PHP
PHP ကေတာ့ Web ပိုင္းမွာ အလြန္ကို ေအာင္ျမင္ေနတဲ့ Server-Side HTML Scripting Language အမ်ိဳးအစားျဖစ္ပါတယ္။ PHP ကိုေတာ့ ၁၉၉၅ ခုႏွစ္က Rasmus Lerdorf ကစတင္ Develop ျပဳလုပ္ခဲ့တာျဖစ္ၿပီး၊ PHP ရဲ့ Stable Release ကေတာ့ 5.4.4 ျဖစ္ပါတယ္။ ၂၀၁၂ ခုႏွစ္ရဲ့ ဇြန္လ (၁၄) ရက္ေန႔မွာ ျဖန႔္ခ်ိခဲ့တာလည္း ျဖစ္ပါတယ္။ Dynamic Web Page ေတြကို ဖန္တီးတဲ့ေနရာမွာ အေကာင္းမြန္ဆုံး Scripting Language ျဖစ္တဲ့အတြက္ Web Developer အမ်ားစု အသုံးျပဳတဲ့ Language တစ္ခုျဖစ္ပါတယ္။
.
Python
Python ကိုေတာ့ သိကၽြမ္းသူအနည္းသာ ရွိပါလိမ့္မယ္။ ဒါေပမယ့္ Python ဟာလည္း စြမ္းအားျမင့္မာတဲ့ Programming Language အမ်ိဳးအစားတစ္ခုျဖစ္ၿပီး၊ High Level Programming Language အမ်ိဳးအစားတစ္ခုျဖစ္ပါတယ္။ Python ကို ၁၉၉၁ ခုႏွစ္မွာ စတင္ဖန္တီးခဲ့တာျဖစ္ၿပီး၊ Python ရဲ့ Designer ကေတာ့ Guido Van Rossum ျဖစ္ပါတယ္။ Google Application Engine မွာ ပထမဆုံး အသုံးျပဳခဲ့တဲ့ Programming Language အမ်ိဳးအစားတစ္ခုအျဖစ္ လူသိမ်ားပါတယ္။
.
VB
Microsoft ရဲ့ ထုတ္ကုန္တစ္ခုျဖစ္တာနဲ႔တင္ VB ဟာ ဘယ္ေလာက္ Strong ျဖစ္တယ္ဆိုတာ သိသာနိုင္ပါတယ္။ ၁၉၉၃ ခုႏွစ္မွာ စတင္ Develop ျပဳလုပ္ခဲ့တဲ့ VB ဟာဆိုရင္ သက္တမ္းအရ ၁၉ ႏွစ္ေက်ာ္ခဲ့ၿပီျဖစ္ပါတယ္။ VB ဟာ Microsoft ရဲ့ Office Application ေရးသားမႈေတြကို အဓိကထားပါတယ္။ ေနာက္တစ္ခုအေနနဲ႔ကေတာ့ VB ကို Virus code ေတြ ေရးသားတဲ့ေနရာမွာလည္း အသုံးျပဳမႈမ်ားတာကို ေတြ႕ရပါတယ္။ VB ရဲ့ Stable Release ကိုေတာ့ Office 2012 ထြက္ရွိစဥ္က၊ တစ္ၿပိဳင္နက္ထြက္ခဲ့တာျဖစ္ၿပီး၊ Version 7.0 ျဖစ္ပါတယ္။
.
Pascal
၁၉၇၀ ခုႏွစ္က ေပၚထြက္ခဲ့တဲ့ Pascal ဟာလည္း သူ႔အခ်ိန္အခါက ေအာင္ျမင္တဲ့ Programming Language အမ်ိဳးအစားတစ္ခုျဖစ္ပါတယ္။ Pascal ရဲ့ Developer ကေတာ့ Niklaus Wirth ျဖစ္ပါတယ္။ Pascal ဟာ ျပင္သစ္သခ်ၤာပညာရွင္ Blaise Pascal ကို ဂုဏ္ျပဳၿပီး ေပးခဲ့တဲ့ နာမည္လည္းျဖစ္ပါတယ္။ Pascal အသုံးျပဳထားတဲ့ Application ေတြကို လက္ရွိအခ်ိန္ထိ အသုံးျပဳေနရဆဲလည္းျဖစ္ပါတယ္။ Pascal ရဲ့ စြမ္းေဆာင္ရည္နဲ႔ ပတ္သက္လို႔လည္း ကၽြမ္းက်င္ပညာရွင္မ်ားက Strong & Safe Programming Language လို႔ သတ္မွတ္ၾကပါတယ္။
.
JavaScript
JavaScript ကိုေတာ့ ဒီဖက္အခ်ိန္မွာ လူအေတာ္မ်ားမ်ား သိရွိၿပီးျဖစ္မွာပါ။ ဒါေပမယ့္ Java Programming Language နဲ႔မွားယြင္းတတ္ၿပီး၊ JS ကို ၁၉၉၅ ခုႏွစ္မွာ Brendan Eich က ဖန္တီးခဲ့တာျဖစ္ပါတယ္။ JavaScript ကို Netscape ကေန ေမြးဖြားလာတယ္လို႔လဲ ဆိုနိုင္ပါတယ္။ ဘာအတြက္ေၾကာင့္လဲဆိုေတာ့ Brendan Eich ဟာ JavaScript ကို ဖန္တီးခ်ိန္က Netscape မွာ အလုပ္လုပ္ကိုင္ေနခ်ိန္ျဖစ္တဲ့အတြက္ပါ။ JavaScript ဟာ Stable Release အျဖစ္ 1.8.5 ကို ၂၀၁၁ ခုႏွစ္ မတ္လက ထုတ္လုပ္ခဲ့ပါတယ္။ Java Script ဟာ Scripting Language အမ်ိဳးအစားျဖစ္တဲ့အတြက္ Web Site အေတာ္မ်ားမ်ားမွာ ထည့္သြင္းအသုံးျပဳလာၾကပါတယ္။
.
Ruby
Ruby ဟာ Japan နိုင္ငံကေနဖြံ့ၿဖိဳးလာတဲ့ Programming Language အမ်ိဳးအစားျဖစ္ပါတယ္။ Ruby ရဲ့ Designer ကေတာ့ Yukihiro Matsumoto ျဖစ္ၿပီး၊ ၁၉၉၅ ခုႏွစ္မွာ စတင္ဖန္တီးခဲ့တာျဖစ္ပါတယ္။ Ruby ရဲ့ Stable Release ကေတာ့ 1.9.3-p194 ျဖစ္ၿပီး ၂၀၁၂ ခုႏွစ္ ဧၿပီလ(၂၀) ရက္ေန႔က Release ျပဳလုပ္ခဲ့တာျဖစ္ပါတယ္။ Dynamic အမ်ိဳးအစားတစ္ခုျဖစ္ၿပီး၊ OOP Language အမ်ိဳးအစားတစ္ခုလည္း ျဖစ္ပါတယ္။ အာရွေဒသမွ Develop ျပဳလုပ္တဲ့ Programming တစ္ခုျဖစ္ၿပီး၊ အနာဂတ္ကာလမွာ အလားအလာေကာင္းမ်ားစြာကို ပိုင္ဆိုင္ထားတဲ့ Programming Language အမ်ိဳးအစားတစ္ခုျဖစ္ပါတယ္။
.
Go
Go Programming Language ကေတာ့ Google Inc. ရဲ့ ထုတ္ကုန္တစ္ခုျဖစ္ၿပီး၊ Designer ကေတာ့ Robert Griesemer, Rob Pike, Ken Thompson တို႔ျဖစ္ပါတယ္။ Go ဟာ ၂၀၀၉ ခုႏွစ္ နိုဝင္ဘာလ အတြင္းကမွ စတင္ေၾကာ္ျငာခဲ့တာျဖစ္ၿပီး၊ အမ်ိဳးအစားကေတာ့ Static ျဖစ္ပါတယ္။ Strong ျဖစ္ၿပီး၊ File Name အေနနဲ႔ေတာ့ .go ကို အသုံးျပဳတာေတြ႕ရပါတယ္။ Go ရဲ့ Stable Version ကေတာ့ 1.0.2 ကိုသာ ေရာက္ရွိေသးတာျဖစ္ပါတယ္။
.
Lynx
Lynx Programming Language ကေတာ့ ႀကီးမားၿပီး က်ယ္ျပန႔္တဲ့ Network ေတြမွာ အသုံးျပဳပါတယ္။ Lynx ကိုေတာ့ University of Wisconsin-Madison က ၁၉၈၄ ခုႏွစ္မွာ စတင္ Develop ျပဳလုပ္ခဲ့တာျဖစ္ပါတယ္။ Lynx ရဲ့ အဓိက ရည္ရြယ္ခ်က္ကေတာ့ Charlotte Multicomputer Operating System အတြက္ျဖစ္ပါတယ္။
.
FOCAL
Formula Calculator ရဲ့ ဦးဆုံး စာလုံးေတြကို မၽွတစြာရယူထားတဲ့ FOCAL Programming Language ဟာ အေျခခံက်တဲ့ Programming Language အမ်ိဳးအစားတစ္ခုျဖစ္ပါတယ္။ FOCAL ကို ဖန္တီးမႈေတြထဲမွာ အမ်ားဆုံးပါဝင္တာကေတာ့ Richard Merrill ျဖစ္ပါတယ္။ FOCAL ဟာ ၁၉၆၈ ခုႏွစ္ကတည္းက Develop စတင္ျပဳလုပ္ေနၿပီျဖစ္ၿပီး၊ ေရွးပိုင္းက်တဲ့ Language အမ်ိဳးအစားတစ္ခုလည္း ျဖစ္ပါတယ္။
.
Integrated Development Environment မ်ားအေၾကာင္းသိေကာင္းစရာ
IDE လို႔ အသိမ်ားတဲ့ Integrated Development Environment ေတြဟာ Programmer ေတြအတြက္ အဓိကေနရာကေန အေရးပါတဲ့လိုအပ္ခ်က္ေတြျဖစ္ပါတယ္။ IDE ေတြဟာ သက္ဆိုင္ရာ Language ေတြအလိုက္ လိုအပ္ခ်က္ေတြကို ျဖည့္ဆည္းေပးနိုင္မွာျဖစ္ၿပီး၊ Microsoft ရဲ့ Visual Studio လိုမ်ိဳး IDE ေတြဟာဆိုရင္ Coding တစ္ေၾကာင္းမွ ေရးစရာမလိုဘဲ Web Login Page ေတြ တည္ေဆာက္နိုင္တဲ့အထိ ေကာင္းမြန္လွပါတယ္။ IDE တစ္ခုမွာ အေျခခံအားျဖင့္ ပါဝင္တာကေတာ့
1. A Source Code Editor
2. Built Automation Tools
3. A Debugger တို႔ျဖစ္ပါတယ္။
အခ်ိဳ႕ေသာ IDE ေတြမွာေတာ့ Compiler, Interpreter တို႔ပါဝင္လာၿပီး၊ ဥပမာအေနနဲ႔ေျပာရမယ္ ဆိုရင္ေတာ့ Visual Studio ကိုပဲ ထပ္မံညႊန္းဆိုရမွာ ျဖစ္ပါတယ္။ IDE ေတြရဲ့အစပိုင္းကို ျပန္ၾကည့္မယ္ဆိုရင္ Command Based Application မ်ားကို ေတြ႕ရမွာျဖစ္ပါတယ္။ ဒီဖက္အခ်ိန္ကာလကို ေရာက္ရွိလာခ်ိန္မွာေတာ့ ၿပီးျပည့္စုံတဲ့ IDE အမ်ားစုကို ျမင္ေတြ႕နိုင္ၿပီးျဖစ္ပါတယ္။ ေအာက္မွာေဖာ္ျပေပးထားတာေတြကေတာ့ နာမည္ႀကီးၿပီး လူသိမ်ားတဲ့ IDE ေတြကို ေဖာ္ျပေပးလိုက္ပါတယ္။
.
Microsoft Visual Studio
IDE ေတြထဲကမွ အေကာင္းမြန္ဆုံးနဲ႔ အျပည့္စုံဆုံး IDE လို႔ဆိုနိုင္ပါတယ္။ Microsoft ရဲ့ ထုတ္ကုန္တစ္ခုျဖစ္ၿပီး၊ လက္ရွိအခ်ိန္မွာေတာ့ Stable Release အျဖစ္ Microsoft Visual Studio 2010 SP1 ကို ထုတ္လုပ္ထားပါတယ္။ Preview Release အေနနဲ႔ေတာ့ Visual Studio 2012 RC ကို ၂၀၁၂ ခုႏွစ္ ေမလ ၃၁ ရက္ေန႔က ျဖန႔္ခ်ိေပးခဲ့ပါတယ္။ Microsoft Visual Studio ကိုေတာ့ C++ & C# တို႔နဲ႔ေရးထားတာျဖစ္ၿပီး၊ Microsoft Windows ေတြအတြက္ သီးသန႔္ဖန္တီးေပးခဲ့တာျဖစ္ပါတယ္။ Microsoft Visual Studio ကို အသုံးျပဳၿပီး Microsoft Windows, Windows Mobile, WebSite တို႔အတြက္ ေရးဆြဲနိုင္မွာျဖစ္ပါတယ္။ Visual Studio ဟာ Language မ်ားစြာကို အေထာက္အပံ့ေပးထားၿပီး Built-in ပါဝင္တဲ့ Language ေတြကေတာ့ C / C++ (via Visual C++), VB.Net (via Visual Basic.Net), C#(via Visual C#) တို႔ျဖစ္ပါတယ္။ အျခားအေထာက္အပံ့ေတြ အေနနဲ႔ေတာ့ XML / XSLT, HTML / XHTML, JavaScript နဲ႔ CSS တို႔ျဖစ္ပါတယ္။
.
NetBeans
NetBeans ကေတာ့ Oracle Corporation ရဲ့ထုတ္ကုန္တစ္ခုျဖစ္ၿပီး၊ Java နဲ႔ေရးသားထားတဲ့ IDE အမ်ိဳးအစားတစ္ခုျဖစ္ပါတယ္။ Java IDE အမ်ိဳးအစားျဖစ္ၿပီး Stable Release ကေတာ့ 7.1.2 ျဖစ္ပါတယ္။ ၂၀၁၂ ခုႏွစ္ ဧၿပီလ (၂၆) ရက္ေန႔က ထုတ္လုပ္ျဖန႔္ခ်ိတာျဖစ္ပါတယ္။ NetBeans ကိုေတာ့ Cross-Platform အေနနဲ႔ အသုံးျပဳနိုင္မွာျဖစ္ၿပီး Microsoft Windows, Mac OS, Linux, Solaris နဲ႔ အျခား Platform ေတြမွာလည္း အသုံးျပဳနိုင္မွာျဖစ္ပါတယ္။ NetBeans အေထာက္အပံ့ေပးတဲ့ Language ေတြကေတာ့ Java, JavaScript, PHP, Groovy, C, C++, Scala, Clojure တို႔နဲ႔အတူ Ruby နဲ႔ Ruby on Rails တို႔ကိုပါ အေထာက္အပံ့ေပးထားပါတယ္။ NetBeans ကို ၁၉၉၆ ခုႏွစ္က စတင္ထုတ္လုပ္ခဲ့တာ ျဖစ္ပါတယ္။
.
Eclipse
Eclipse ကေတာ့ Free and Open Source Software Community ကေန Develop ျပဳလုပ္ထားတာျဖစ္ၿပီး၊ Software Development Type ျဖစ္ပါတယ္။ Java အတြက္ သီးသန႔္ျဖစ္ေပမယ့္၊ Plug-in ထည့္သြင္း အသုံးျပဳမယ္ဆိုရင္ေတာ့ အျခား Language ေတြမ်ားစြာကိုပါ Support ျပဳလုပ္ေပးနိုင္မွာ ျဖစ္ပါတယ္။ Cross Platform အမ်ိဳးအစားျဖစ္ၿပီး Microsoft Windows,, Mac OS, Solaris, Linux တို႔မွာ အသုံးျပဳနိုင္မွာျဖစ္ပါတယ္။ Eclipse ရဲ့ Stable Release ကေတာ့ 3.7.2 Indigo ျဖစ္ၿပီး၊ ၂၀၁၂ ခုႏွစ္ ေဖေဖာ္ဝါရီလ (၂၄) ရက္ေန႔က ျဖန႔္ခ်ိခဲ့တာျဖစ္ပါတယ္။ Eclipse ဟာ Plug-in ထည့္သြင္းအသုံးျပဳမယ္ ဆိုရင္ေတာ့ C, C++, COBOL, Haskell, Perl, PHP, Python, R, Ruby, Scala, Ada, Clojure, Groovy နဲ႔ Scheme တို႔ကိုပါ အသုံးျပဳနိုင္မွာျဖစ္ပါတယ္။ Eclipse SDK ဟာ Free and Open Source Software အမ်ိဳးအစားတစ္ခုလည္းျဖစ္ပါတယ္။
.
JDeveloper
JDeveloper ကေတာ့ Oracle Corporation ရဲ့ ထုတ္ကုန္တစ္ခုျဖစ္ၿပီး၊ Java Developer ေတြအတြက္ ေရးထားတဲ့ IDE အမ်ိဳးအစားတစ္ခုျဖစ္ပါတယ္။ Cross-Platform အမ်ိဳးအစားျဖစ္တဲ့အတြက္ OS အမ်ားစုမွာ အသုံးျပဳနိုင္မွာျဖစ္ၿပီး၊ ၿပီးျပည့္စုံတဲ့ Java IDE အမ်ိဳးအစား တစ္ခုျဖစ္ပါတယ္။ JDeveloper မွာေတာ့ Java, XML, SQL, PHP, HTML, P/SQL, JavaScript, BPEL တို႔ကို Develop ျပဳလုပ္နိုင္မွာ ျဖစ္ပါတယ္။ JDeveloper ဟာ Design Coding, Debugging, Optimization နဲ႔ Profiling to Developing တို႔ကိုပါ ျပဳလုပ္နိုင္မွာျဖစ္တဲ့အတြက္ Java Developer မ်ားအတြက္ မ်ားစြာအဆင္ေျပေစတဲ့ IDE အမ်ိဳးအစားတစ္ခု ျဖစ္ပါတယ္။
.
WinDev
WinDev ကို PCsoft က ၁၉၉၃ ခုႏွစ္မွာ စတင္ထုတ္လုပ္ခဲ့တာျဖစ္ၿပီး၊ လက္ရွိအခ်ိန္မွာေတာ့ Version 17 ကို ေရာက္ရွိေနၿပီးျဖစ္ပါတယ္။ WinDev ကိုေတာ့ Microsoft Windows ေပၚမွာသာ အသုံးျပဳနိုင္မွာျဖစ္ၿပီး၊ Visual Basic, Java နဲ႔ C# တို႔ကို Support ေပးထားပါတယ္။ အျခားထုတ္ကုန္တစ္ခုအေနနဲ႔ တြဲဖက္ၿပီး ပါဝင္လာတာကေတာ့ WebDev ျဖစ္ၿပီး Web Application မ်ား Web Site မ်ားေရးဆြဲရာမွာ အသုံးျပဳနိုင္မွာ ျဖစ္ပါတယ္။ WinDev ကေတာ့ 4GL (Fourth Generation Language) ကို အသုံးျပဳထားပါတယ္။
.
Xcode
Apple အသုံးျပဳသူအမ်ားစု ရင္းႏွီးမယ့္ နာမည္တစ္ခုျဖစ္ပါတယ္။ Apple Inc. ရဲ့ ထုတ္ကုန္တစ္ခုျဖစ္ၿပီး၊ Stable Release ကေတာ့ 4.3.3 (4E3002) ျဖစ္ပါတယ္။ Developer Preview အေနနဲ႔ေတာ့ 4.5 ကိုထုတ္လုပ္ေပးထားၿပီး ၂၀၁၂ ခုႏွစ္ ဇြန္လ (၁၁) ရက္ေန႔က ျဖန႔္ခ်ိခဲ့ပါတယ္။ Xcode ဟာ Apple ရဲ့ Mac OS & iOS Application ေတြအတြက္ ရည္ရြယ္ထုတ္လုပ္ထားတဲ့ IDE အမ်ိဳးအစားတစ္ခုျဖစ္တဲ့အတြက္ Mac OS အမ်ိဳးအစားတစ္ခုထဲမွာသာ အသုံးျပဳနိုင္မွာျဖစ္ပါတယ္။ Xcode မွာ Interface Builder ပါဝင္တဲ့အတြက္ေၾကာင့္ ၿပီးျပည့္စုံတဲ့ IDE အမ်ိဳးအစားတစ္ခုလို႔ ဆိုနိုင္မွာ ျဖစ္ပါတယ္။ Xcode ရဲ့ Support ေပးတဲ့ Language ေတြကေတာ့ C, C++, Objective-C, Objective-C++, Java, AppleScript, Python, Ruby တို႔ကို အေထာက္အပံ့ေပးထားပါတယ္။
.
Programming ကိုေလ့လာသင္ယူလိုတယ္ဆိုရင္...
Programming ဘာသာရပ္ေတြအေနနဲ႔ ျပည္တြင္း/ ျပည္ပမွာ အလုပ္အကိုင္ေနရာ အခြင့္အလမ္း မ်ားျပားတဲ့အတြက္ လူငယ္အမ်ားစု စိတ္ဝင္စားတဲ့ ဘာသာရပ္တစ္ခုျဖစ္ပါတယ္။ Programming ဘာသာရပ္မွာလည္း ေလ့လာသင္ယူစရာလမ္းေၾကာင္းေတြ ကြဲျပားသြားၿပီး အေျခခံအားျဖင့္ Mobile Developer, Web Developer, Software Programmer လို႔ ခြဲျခားသတ္မွတ္နိုင္ပါတယ္။
.
1. Mobile Developer
ဒီပညာရပ္ကို စိတ္ဝင္စားသူမ်ားအေနနဲ႔ ဖုန္းနဲ႔ပတ္သက္တဲ့ Application ေတြကို ေရးသားနိုင္ဖို႔ ႀကိဳးစားသင္ယူရမွာျဖစ္ပါတယ္။ လက္ရွိအခ်ိန္မွာ ေအာင္ျမင္မႈပမာဏႀကီးမားေနတဲ့ Android အတြက္ Application ေတြကို ေရးသားခ်င္တယ္ဆိုရင္ေတာ့ Java Programming Language ကိုေလ့လာသင္ယူရမွာ ျဖစ္ပါတယ္။ Mobile Developer တစ္ဦးျဖစ္ဖို႔အတြက္ အခ်ိန္ကာလအေနနဲ႔ေတာ့ ႀကိဳးစားအားထုတ္မႈအလိုက္ အခ်ိန္ကာလ (၆) လကေန (၉) လအတြင္း ၾကာျမင့္မွာျဖစ္ပါတယ္။
.
2. Web Developer
ဒီအပိုင္းဟာလည္း သင္ၾကားေပးတဲ့ သင္တန္းမ်ားစြာရွိၿပီး သင္ယူတဲ့ သင္တန္းသားမ်ားစြာရွိတဲ့ ဘာသာရပ္တစ္ခုျဖစ္ပါတယ္။ Web Developer တစ္ဦးအေနနဲ႔ ကိုယ္တိုင္ Web Site တစ္ခုကို တည္ေဆာက္နို္င္မွာျဖစ္ပါတယ္။ သင္ယူရမယ့္ အပိုင္းမွာေတာ့ အေျခခံအားျဖင့္ HTML, CSS, JavaScript နဲ႔ Photoshop တို႔ကို သင္ယူရမွာျဖစ္ၿပီး၊ Web Site တစ္ခုလုံးကို ကၽြမ္းက်င္စြာ တည္ေဆာက္ထိန္းသိမ္းနိုင္ဖို႔ အတြက္ေတာ့ Domain, Host, FTTP နဲ႔ PHP အစရွိတဲ့ ဘာသာရပ္အသီးသီးကိုပါ ေလ့လာသင္ယူရမွာ ျဖစ္ပါတယ္။ CMS Package ေတြျဖစ္တဲ့ Wordpress, Joomla တို႔ဟာလည္း Web Site တည္ေဆာက္မႈ အပိုင္းကို စိတ္ဝင္စားတဲ့ လူငယ္ေတြအတြက္ ေပ်ာ္ရႊင္စရာ ေလ့လာသင္ယူမႈ အပိုင္းေတြျဖစ္ပါတယ္။
.
3. Application Programmer
လူငယ္အမ်ားစု စိတ္ကူးယဥ္ၾကတဲ့ေနရာတစ္ခုျဖစ္ၿပီး စိတ္ဓါတ္ႀကံ့ခိုင္ဖို႔ လိုအပ္ပါလိမ့္မယ္။ Programmer တစ္ဦးအေနနဲ႔ ဖိအားေတြကို သင္တန္းမွာကတည္းက စတင္ရင္ဆိုင္ၾကဳံေတြ႕ရမွာျဖစ္ၿပီး၊ မ်ားစြာလွေသာ Programming Language ေတြထဲက အားသန္ရာ Language တစ္ခုကို တစိုက္မတ္မတ္ ေလ့လာသင္ယူရမွာ ျဖစ္ပါတယ္။ Programming Language ေတြအေနနဲ႔ အခ်ိဳ႕ကို ေဖာ္ျပေပးရမယ္ဆိုရင္ C++, C#, Java, Python, Perl, VB အစရွိတဲ့ Language ေတြအေၾကာင္းနဲ႔ Programming Concept ေတြအေၾကာင္းကို သင္ယူရမွာျဖစ္ပါတယ္။ Programmer တစ္ဦးအျဖစ္ ရပ္တည္လိုတဲ့ လူငယ္မ်ားအတြက္ေတာ့ အခ်ိန္ကာလတစ္ခုကို ေပးဆပ္ရမွာျဖစ္ပါတယ္။
.
http://www.myanmarandroidapp.com/2017/03/programming.html
Credit => ေမာင္ေမာင္လြင္
#WhatisProgramming #MyanmarAndroidApp #KhunHtetzNaing

Popular posts from this blog

Facebook အခိုးခံရတဲ့အခါ..အေရးေပၚ လုပ္ေဆာင္ရန္နည္းမ်ား...Crd..Copy

Facebook ေပၚက Video ေတြကို ပိုက္ဆံ မကုန္ပဲ ေဒါင္းယူနည္း

Memory Card ထဲက ေပ်ာက္သြားတဲ့ဓာတ္ပံုေတြ ဘယ္လိုျပန္ရွာေဖြႏိုင္မလဲ