History Of Java

ကနဦးခေတ်

Javaပလက်ဖေါင်းနှင့်ပရိုဂရမ်မင်းဘာသာရပ်Javaသည်၊ ၁၉၉၀ခုနှစ် ၁၂လပိုင်းတွင်Sun Microsystemsမှ ကိုယ်ပိုင်ပရိုဂျက်တစ်ခုအဖြစ် စတင်ခဲ့ပါသည်။ ထိုပရိုဂျက်သည် C++/C၏ အစားထိုး ပရိုဂရမ်မင်းဘာသာရပ် တစ်ခုအနေဖြင့် တီထွင်ရေးသားခဲ့ကြ၏။ ထိုဘာသာရပ်သည်၊ ပရိုဂျက်အတွင်း၌ Green Operating System (Green OS) နှင့်အတူ၊ Green OS ၏ အခြေခံဘာသာရပ်အနေဖြင့် တီထွင်ခဲ့ခြင်းဖြစ်၏။ ထိုဘာသာရပ်အား 1992ခုနှစ် လောက်တွင် ပရိုဂျက်အတွင်း၌ Oak ဟု အမည်တွင်ခဲ့သော်လည်း၊ နောက်ပိုင်းတွင် Java ဟု ပြောင်းလည်း ခေါ်ဝေါ်ခဲ့ကြခြင်း ဖြစ်၏။ ပြောင်းလည်းခေါ်ဝေါ်ခဲ့ကြခြင်း အကြောင်းအရင်းမှာ Oakသည် အခြားသော ကုမ္ပဏီတစ်ခုမှ စီးပွားဖြစ်အမည် တစ်ခုအနေဖြင့် တရားဝင် အသုံးပြုလျှက်ရှိသောကြောင့် ဖြစ်၏။

၁၉၉၀ခုနှစ် ပိုင်းတွင် Sun ၏ ပညာရှင် တစ်ယောက်ဖြစ်သော Patrick Naughton သည်၊ ကုမ္ပဏီ၏ ကိုယ်ပိုင် C++ နှင့် C တို့၏ API နှင့် လိုင်ဘရီများအား အားမလို အားမရဖြစ်နေခဲ့၏။ ထိုအချိန်တွင် အိုင်တီနည်းပညာ နယ်ပယ်တွင်၊ NeXTမှ တီထွင်လိုက်သော နည်းပညာအသစ် တစ်ခုသည် အားလုံး၏အာရုံစိုက်မှု့ကို ရရှိခဲ့သည်ကို အစပြု၍၊ Naughton သည်လည်း Sun တွင် နည်းပညာအသစ်များကို ဖန်တီးရန် တာဝန်ကျခဲ့၏။


NeXT မှ တီထွင်ခဲ့သော NeXT Workstationနှင့် NEXT STEPOSတွင်၊ Object Oriented ပရိုဂရမ်မင်း ဘာသာရပ်တစ်ခုဖြစ်သော် Objective-C ပရိုဂရမ်မင်း ဘာသာရပ်ကို အခြေခံ ပရိုဂရမ်မင်းဘာသာရပ် အနေဖြင့် အသုံးပြုထားခဲ့၏။ ဤသို့ဖြင့် Java သည် ဝတ္တစက္ခုဗေဒကို အခြေခံသော နောက်လိုက်ပရိုဂျက်တစ်ခု အနေဖြင့် စတင်ခဲ့၏။

ဤကဲ့သို့စတင်ခဲ့သော နောက်လိုက်ပရိုဂျက်သည်၊ စစချင်းပင် James Gosling နှင့် Mike Sheridan တို့သည် ပါဝင်ခဲ့ကြပြီး၊ ပရိုဂျက်၏အမည်ကိုလည်းအစိမ်းရောင်ပရိုဂျက်ဟု ပြောင်းလဲခေါ်ဆိုခဲ့ကြ၏။ ဤအစိမ်းရောင်ပရိုဂျက်တွင် အခြားသော နည်းပညာရှင်များလည်း ပါဝင်ခဲ့ကြပြီး၊ အမေရိကပြည်ထောင်စုကာလီဖိုးနီးယား ပြည်နယ် ရှိ သေးငယ်သော ရုံးခန်းလေးတစ်ခုမှ စတင်ခဲ့ကြပါသည်။ အစိမ်းရောင်ပရိုဂျက်၏ ရည်ရွယ်ချက်မှာ၊ နောင်တစ်ခေတ်၏ အိမ်သုံးလျှပ်စစ် ပစ္စည်းများအတွက် ပရိုဂရမ်မင်းနည်းပညာ အသစ်တစ်ခုကို တီထွင်ရန် ဖြစ်၏။ Sun သည် ထိုစဉ်ကတည်းက ဤနယ်ပယ်တွင် အဓိကကျသော ဈေးကွက်တစ်ခု ဖြစ်ပေါ်လာမည့်အကြောင်း ကြိုတင်မှန်းဆ ခဲ့ကြခြင်းဖြစ်၏။

စတင်ခါစတွင် အစိမ်းရောင်ပရိုဂျက်သည် ပရိုဂရမ်မင်းဘာသာရပ်အနေဖြင့် Object Oriented ပရိုဂရမ်မင်း ဘာသာရပ်တစ်ခုဖြစ်သော C++ ကို အသုံးပြုရန် စဉ်းစားခဲ့ကြသော်လည်း၊ အကြောင်းအမျိုးမျိုးကြောင့် C++ အားလက်လျှော့ခဲ့ကြ၏။ အဓိက အကြောင်းတစ်ခုမှာ C++ သည် စက်ပစ္စည်း၏ လျှပ်စစ်အရင်းအမြစ်ကို သုံးလွန်းသည်ဟု သတ်မှတ်ခဲ့ကြသောကြောင့် ဖြစ်၏။ သူတို့၏ ရည်ရွယ်ချက်မှာ အိမ်သုံးလျှပ်စစ်ပစ္စည်းများ၏ နည်းပညာကို တီထွင်ရန်ဖြစ်၏။

အိမ်သုံးလျှပ်စစ်ပစ္စည်းများတွင် အသုံးပြုနိုင်သော အရင်းအမြစ်များမှာ အလွန်နည်းပါးသည်၏။ ထို့ကြောင့် အရင်းအမြစ်များကို သုံးစွဲလွန်းသော C++ ကို လက်လျှော့ခဲ့ကြခြင်းဖြစ်၏။ နောက်အကြောင်းအရင်း တစ်ခုမှာ C++ သည် ခက်ခဲသော ဘာသာရပ် တစ်ခု ဖြစ်သောကြောင့် ဖြစ်၏။ C++ ကို အသုံးပြုသော ပရိုဂရမ်မာများသည် ဘယ်လောက်ပင်ကရုစိုက်သော်လည်း တစ်ကြိမ်ကြိမ်တွင် အမှားများကို ကျူးလွန်မိမြဲ ဖြစ်၏။

အကြောင်းမှာ C++ တွင်အမှိုက်သိမ်းစနစ်မရှိခဲ့ပေ။ ထို့အတွက် C++ ပရိုဂရမ်မာများသည် ရေးသားလိုသော လော့ဂျစ်အပြင်ကိုယ် မန်မိုရီကို ထိမ်းသိမ်းရေးအတွက်ပါ အာရုံစိုက်ရန်လိုအပ်ခဲ့၏။ ပရိုဂရမ်မာကိုယ်တိုင်က မန်မိုရီကို ထိမ်းသိမ်းခြင်းသည် လွန်စွာ စွန့်စားရသော အလုပ်တစ်ခု ဖြစ်ပြီး၊ မှားယွင်းလွယ်သော လုပ်ရပ်တစ်ခုလည်း ဖြစ်၏။ မသိလိုက်မသိသာ မံမိုရီယိုစီးမှု့ကို ဖြစ်ပွားစေတတ်သောကြောင့်ဖြစ်၏။

အစိမ်းရောင်ပရိုဂျက်၏ အဖွဲ့ဝင်များသည်၊ အဓိကလုပ်ဆောင်ချက်အချို့တွင် C++ ၏အပြောင်းအရွှေ့မလွယ်ကူခြင်းကို ပြဿနာတစ်ခုအဖြစ် ကြည့်မြင်ခဲ့ကြ၏။ ထို အဓိက လုပ်ဆောင်ချက်များမှာ လုံခြုံရေးစနစ်၊နေရာခြားကွန်ပျူတာစနစ်(Distributed Computing)နှင့်၊ စလက်များ(Multi Thread)ဖြစ်ကြ၏။ ထိုလုပ်ဆောင်ချက်များသည် ပလတ်ဖောင်းအပေါ်တွင် မှီခိုခြင်းမရှိပဲ အသုံးချနိုင်ရန် လိုအပ်ပေသည်။ အထက်ပါအကြောင်းများကြောင့် သူတို့သည်၊ လျှပ်စစ်ပစ္စည်း အမျိုးမျိုးတွင် လွယ်ကူစွာပြောင်းရွှေ့နိုင်သော ပလတ်ဖေါင်း၏ လိုအပ်ချက်ကို သိမြင်ခဲ့ကြ၏။
တဘက်တွင် Sun ၏ နည်းပညာရှင် တစ်ယောက်ဖြစ်သော Bill Joy သည်၊Xerox Corporation၏Palo Alto Research Centerတွင် Altoဟု အမည်ရသော Workstation စမ်းသပ်စက် အတွက် တီထွင်ခဲ့သော ပရိုဂရမ်မင်းဘာသာရပ် Mesa ဖြင့် C ဘာသာရပ်၏ ကောင်းသောနေရာများကို လက်ခံရယူပြီး ပရိုဂရမ်မင်းဘာသာရပ် အသစ်တစ်ခုကို ပုံဖော်နေခဲ့၏။ Joy သည် Further ဟု အမည်ရသော စာတမ်းတစ်စောင်ကို ရေးသားခဲ့ပြီး၊ C++ ကိုအခြေခံသော ဝတ္တစက္ခုဗေဒ(Object Oriented) ပတ်ဝင်းကျင်ကို တီထွင်ရန် အားထုတ်နေခဲ့၏။

ဦးစွာJames Arthur Goslingသည် C++ ကို ပြုပြင်ပြောင်းလဲပြီးအသုံးပြုရန် စမ်းသပ်ခဲ့၏။ Gosling သည် ဤ ပြုပြင်ထားသော C++ အား “C++ ++ –” ဟု အမည်ပေးခဲ့၏။ သို့ရာတွင် Gosling သည် ချက်ချင်းဆိုသလို C++ အားပြုပြင်ပြောင်းလည်းခြင်းကို ရပ်တန့်ခဲ့ပြီး၊ ပရိုဂရမ်မင်းဘာသာရပ် အသစ်တစ်ခုကို တီထွင်ရန် စတင်ခဲ့၏။ Gosling သည် ထို ပရိုဂရမ်မင်းဘာသာရပ် အသစ်အား Oak ဟုခေါ်ဆိုခဲ့၏။ ထိုအမည်ကို ရယူခဲ့ခြင်းမှာ James Arthur Gosling ၏ ရုံးခန်းအနီးအနားတွင် ဝက်သစ်ချပင်များ ပေါက်ရောက်နေသောကြောင့် ဖြစ်သည် ဟုဆိုသည်။

အစိမ်းရောင်ပရိုဂျက် အဖွဲ့ဝင်များသည် အချိန်ပိုကို လုပ်ရသည့်အထိ ကြိုးစား၍၊ ၁၉၉၂ ခုနှစ် နွေရာသီ အရောက်တွင် အသစ်ရေးသားထားသော ပလတ်ဖေါင်းအား၊ Green OS၊ Oak ဘာသာရပ်၊ လိုင်ဘရီ၊ စက်ပစ္စည်းများနှင့် တွဲဖက်ပြီး အစမ်းပြသနိုင်ခဲ့ကြ၏။ ၁၉၉၂ခု၊ ၉လ၊ ၃ရက် ပထမဆုံး ပြပွဲတွင် Star7 ဟုအမည်ရသော PDA ကို တီထွင်ရာတွင် အားစိုက်ခဲ့ကြ၏။ Star7 ၏ အမည်မှာ ခလုပ်*7 ကို နှိပ်ခြင်းအားဖြင့် ဖုန်းအဖြစ်အသုံးပြုနိုင်သောကြောင့် ဖြစ်၏။

ထို Star7 သည် ထိုခေတ်က လွန်စွာဆန်းသစ်သော GUI ကို ပြင်ဆင်ထားပြီး၊ “Duke” ဟု အမည်ရသော လက်ထောက်ကလေးက အသုံးပြုသူကို အကူအညီပေးပါသည်။ ထိုနှစ် ၁၁လပိုင်းတွင်၊ Sun သည် အစိမ်းရောင်ပရိုဂျက်ကို ခွဲထုတ်ခဲ့ပြီး လက်အောက်ခံ ကုမ္ပဏီ FirstPerson, Inc စတင်ခဲ့၏။ FirstPerson အဖွဲ့ဝင်များသည်၊ အဆင့်မြင့် အပြန်အလှန်အသုံးပြု ကရိယာများ အပေါ်တွင် စိတ်ဝင်စားမှု့ကို ပြသခဲ့၏။ ထိုအချိန်တွင် ime Warner Inc.သည် ကေဘယ် တီဗွီသုံးSet Top Box၏ RFP (Request For Proposal) ကို ထုတ်ပြန်ခဲ့၏။ ထိုအခါ FirstPerson သည် မိမိတို့၏ ရည်ရွယ်ချက်ကို ပြောင်းလည်းခဲ့ပြီး ime Warner Inc.၏ RFP ကို လက်ခံပြီး အကြံပြုချက်များ ကို တင်သွင်းခဲ့ကြ၏။

သို့ရာတွင်FirstPerson သည် အပြိုင်အဆိုင် ၌Silicon Graphics, Inc. (SGI)ကို ရှုန်းနှိမ့်ခဲ့၏။ ထို့နောက်တွင်3DO ၏Set Top Box လုပ်ငန်းရှိခဲ့သော်လည်း၊ စာချုပ်ချုပ်နိုင်သည့်အဆင့်ကို မရောက်ခဲ့ပေ။ Sun သည် တီဗွီနယ်ပယ်တွင် ထင်သလောက် အကျိုးအမြတ် မရရှိခဲ့ပါသော၊ FirstPerson အား ဖျက်သိမ်းခဲ့ပြီး အဖွဲ့ဝင်များကို ပြန်လည်ခေါ်ယူခဲ့၏။

အင်တာနက်နယ်ပယ်ဆီသို့

၁၉၉၄ခု ၆လ မှ ၇လပိုင်းအထိ John Gage၊ James Gosling၊Bill Joy၊ Patrick Naughton ၊Wayne Rosin၊ Eric Emerson Schmidtတို့ကြားတွင်၊ ၃ရက်တိုင်တိုင် ဆွေးနွေးပွဲ ပြုလုပ်ခဲ့ပြီး၊ Web လောက ဘက်ကို ဦးတည်ချက်ပြောင်းရန် ချမှတ်ခဲ့ကြ၏။ သူတို့သည် ခေတ်ရှေ့ပြေးသော Web Browserတစ်ခုဖြစ်သည့် NCSA Mosaic ကို တွေ့မြင်ပြီး Web ကို အစပြုသည့် အင်တာနက် ၏ နယ်မြေသည် ကေဘယ်တီဗွီထက် မနိမ့်ကျသော အပြန်အလှန် အသုံးပြုနိုင်သော အဆင့်မြင် ကြားခံနယ်တစ်ခုဖြစ်လာနိုင်ကြောင်းကို လက်ခံခဲ့ကြ၏။ Oak ကို အသုံးပြု၍ Prototype အနေနှင့် Naughton သည် WebRunner ဟုအမည်ရသည့် ဘရောက်ဇာ အသေးစားလေးတစ်ခုကို တီထွင်ခဲ့၏။ ထို ဘရောက်ဇာ၏ အမည်သည် နောက်ပိုင်းတွင် HotJava ဟု ပြောင်းလဲခဲ့၏။ Web စာမျက်နှာ တွင် Java အပလက် ဟု အမည်ရသော Java ပရိုဂရမ် အသေးစားများကို ထည့်သွင်းပြီး၊ HotJava ဖြင့် စာမျက်နှာကို ဖွင့်ကြည့်သောအခါ HotJava အပေါ်တွင် ကာတွန်းကားများနှင့် မောက်စ်၏ လှုပ်ရှားမှု့ အားပြန်လည်ပြီး တုံ့ပြန်နိုင်သည့် ပရိုဂရမ်များကို အသုံးချလာနိုင်ခဲ့ကြ၏။

ထိုနှစ်ထဲမှာပင် Oak ၏ အမည်အား Java ဟု ပြောင်းလည်းခေါ်ဆိုခဲ့ကြ၏။ အကြောင်းမှာ အမည် မှတ်ပုံတင်ရန် လေ့လာကြည့်သောအခါ “Oak” သည် ဗွီဒီယို ကတ်ထုတ်လုပ်ရေး ကုမ္ပဏီ (Oak Technology) က လက်ရှိ အသုံးပြုနေသောကြောင့်ဖြစ်၏။ Java ဟူသော အမည်မှာ ထိုစဉ်က အဖွဲ့ဝင်များ အသွားများခဲ့သော ကော်ဖီဆိုင်တစ်ဆိုင်၏ အမည်ဟုလည်း အပြောများကြ၏။ အချို့မှာမူ အခြား စကားလုံးတစ်ခု၏ အတိုကောက်အမည်ဟုလည်း ပြောကြ၏။
  • စကားလုံးအစများ ကိုယူထားခြင်းမဟုတ်ဟူသော အဆိုကို လက်ခံသူများကြ၏။
  • အနီးအနားရှိ ကော်ဖီဆိုင်တွင် ရောင်းသောကော်ဖီစေ့၏ အမျိုးအစားကို အသုံးပြုထားသည်ဟု စဉ်းစားသူကများ၏။ အဘယ့်ကြောင့်ဆိုသော် Java ကလပ်စ်ဖိုင်၏ဘိုက်ကုဒ်)၏ အစစာလုံး လေးလုံးသည် အမြဲတမ်း 0xCAFEBABE ဟု ရေးသားထားသောကြောင့်ဖြစ်၏။
  • တဖန် အမေရိကန် အင်္ဂလိပ်ဘာသာရပ်တွင် coffee ဟုလည်း အဓိပ္ပါယ်ရပါသည်။
  • သို့ရာတွင် James Gosling, Arthur Van Hoff, and Andy Bechtolsheim တို့၏ အစစာလုံးကို အသုံးပြုထားသည်ဟု ပြောကြသည်လည်းရှိ၏။
  • တဖန် Just Another Vague Acronym ၏ အစစာလုံးဟု ပြောဆိုသည်လည်းရှိ၏။
၁၉၉၄ခု ၁၀လပိုင်းတွင် HotJava နှင့်Java ပလတ်ဖေါင်း သည် Sun Microsystem ၏ အရေးပါဝန်ထမ်းများ၏ရှေ့တွင် စမ်းသပ်ပြသနိုင်ခဲ့၏။ ထိုမှတဆင့် ၁၉၉၄ခုနှစ် အတွင်းမှာပင် Java 1.0a (Alpha Version)ကို ဒေါင်းလုဒ်လုပ်နိုင်ခဲ့၏။

Java နှင့် HotJava ၏ ပထမဦးဆုံး တရားဝင်ထုတ်ပြန်ခဲ့ကြသည်မှာ ၁၉၉၅ခု ၅လပိုင်း ၂၃ရက်နေ့တွင် ကျင်းပခဲ့သော SunWorld တွေ့ဆုံပွဲတွင် ဖြစ်၏။ Sun သည် Java ဖြင့်ရေးသားထားသော Web ဘရောင်ဇာ HotJava ကိုအသုံးပြု၍ Java နှင့်Java အပလက် နည်းပညာဖြင့်ဝက်စာမျက်နှာအပေါ်တွင် ကာတွန်းလှုပ်ရှားမှု့ များ၊ မောက်စ်၏ လှုပ်ရှားမှု့အားတုံ့ပြန်နိုင်မှု့များအား ပြသခဲ့၏။ ထိုတွေ့ဆုံပွဲတွင် ထုတ်ပြန်ကျော်ညာခဲ့သည်မှာ Sun ၏နည်းပညာ ဌာနမှုးတစ်ဦးဖြစ်သော John Gage ပင် ဖြစ်၏။ ထို တွေ့ဆုံပွဲမှာပင် John Gage ၏ထုတ်ပြန်ချက်နှင့်ပတ်သက်ပြီး Netscape Communications ၏ ဒုတိယ ဥက္ကဋ္ဌ Marc Andreessen ၏ ထုတ်ပြန်ချက်က တက်ရောက်လာသူများအား အံ့အားသင့်စေခဲ့၏။ တဖန် Netscape ကုမ္ပဏီမှ ၎င်း၏ဘရောင်ဇာဖြစ်သော Netscape Navigator တွင် Java အား ထည့်သွင်းရန် စီစဉ်နေကြောင်းကို ထုတ်ပြန်ခဲ့၏။ ဤထုတ်ပြန်ချက်ကြောင့် Java နည်းပညာသည် အိုင်တီနည်းပညာလောတွင် အသိများစေခဲ့ပါသည်။


လတ်တလော လှုပ်ရှားမှု့များ

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

Web(Client ဘက်မှအမြင်)

Web ဘရောင်ဇာဖြင့် Java အပလက်ကို အသုံးပြုသည့်နည်းပညာမှာ အတော်ကျယ်ကျယ်ပြန့်ပြန့်ကို အသုံးပြုလာခဲ့ကြ၏။ ဘရောက်ဇာ(World Wide Web၏Clientဘက်ခြမ်း)သည်Web စာမျက်နှာ အတွင်း Animation များကို ဖော်ပြရာတွင်၎င်း၊ Mouse Event အပေါ်တွင် Interactive လှုပ်ရှားမှု့များကို တုံ့ပြန်ရာတွင်၎င်း Java ကို အသုံးပြုခဲ့ကြ၏။ သို့ရာတွင် ယခုနောက်ပိုင်းတွင် အင်အားကြီးသော အပြိုင်အဆိုင် များလည်း ထွက်ပေါ်လာခဲ့၏။ ယနေ့ နှစ်များတွင် Yahoo! Games နှင့် ဗွီဒီယိုပြစက် အစရှိသည့် အပလီကေးရှင်းများတွင် Java အပလက်ကို အသုံးပြုများသည်ကို တွေ့ရ၏။
ယခင် အချိန်များတွင် Java အပလက်ကို အသုံးပြုထားသည့် ဆိုဒ်များကို ကြည့်လိုသည့်အခါ စက္ကန့်အတန်ကြာ ကြာမြင့်သည့် ဘရောက်ဇာများလည်းရှိတတ်၏။ Java နှင့် Java အပလက် ၏ နည်းပညာတိုးတက်လာမှု့ကြောင့် ပတ်ဝင်းကျင်ကြောင့်ကြာမြင့်မှု့များ၊ စာမျက်နှာကို ဖော်ပြရာတွင် ကြံ့ကြာမှု့ အစရှိသည့် အခက်အခဲများလည်း ဖြေရှင်းလာနိုင်ခဲ့၏။
လွယ်ကူသော Animation များကို အသုံးပြုရာတွင် Java အပလက်ထက်စာလျှင် GIF89a နှင့် Adobe Flash ကို အသုံးပြုကြသည်က များ၏။ ယနေ့ခေတ် Web Client နယ်ပယ်တွင် Ajax သည်လည်း ခေတ်စားလာခဲ့၏။

Web(ဆာဗာ ဘက်မှအမြင်)

ယနေ့ခေတ် World Wide Web၏ဆာဗာ ဘက်ပိုင်းတွင် Java နည်းပညာ(Java EE) အား အတော်များများ အသုံးပြုနေကြသည်ကို တွေ့ရ၏။ ဝက်ဘ်ဆိုက် အတော်များများသည်၊ Java ဆာဗလက် (Java Servlet) နှင့် JSP(JavaServer Pages)အစရှိသည့် Java EE နည်းပညာများကို အသုံးပြု၍ ဝက်စာမျက်နှာများကို အလိုအလျှောက်ထုတ်လုပ်ပေးနိုင်သော ဆိုက်များကို တည်ဆောက်လာကြသည်ကို တွေ့ရ၏။ Java ဆာဗလက် သည် သက္ကရစ် ၂၀၀၀ခုနှစ်နောက်ပိုင်းတွင် အကျယ်တဝင့် အသုံးပြုလာကြပြီး ယနေ့အချိန်အခါတွင်ဝက်ဘ်အပလီကေးရှင်းအတော်များများသည် ဆာဗလက်များအပေါ်တွင် တည်ဆောက်ထားကြသည်ကို တွေ့ရပါ၏။
Sun Microsystems မှရေသားခဲ့သော Java ဆာဗလက်၏ အလုပ်လုပ်ဆောင်ပုံကို အကျဉ်းချုံးဖော်ပြပါမည်။
  • Java အားအသုံးချနိုင်သည့် ပတ်ဝင်းကျင်ပရိုဆက်(ဆာဗလက်ပတ်ဝင်းကျင်)အား အလုပ်လုပ်နေစေပြီး ဝက်ဘ်ဆာဗာအနေဖြင့် အလုပ်လုပ်နေစေ၏။
  • ဝက်ဘ်ဆာဗာသည်ဝက်ဘ်ဘရောင်ဇာမှ ဆက်သွယ်တောင်းဆိုမှု့(Request)ကို လက်ခံရရှိပါသည်။
  • ဝက်ဘ်ဆာဗာသည် လက်ခံရရှိလာသော တောင်းဆိုမှု့ကို ဆာဗလက်ပတ်ဝင်းကျင်ဆီသို့ လက်ဆင့်ကမ်းပေးပို့ပါသည်။
  • ဆာဗလက်ပတ်ဝင်းကျင် အပေါ်တွင်အလုပ်လုပ်နေသော Java ပရိုဂရမ်(Java ဆာဗလက်)သည်၊ လက်ခံရရှိသည့် တောင်းဆိုမှု့အပေါ်တွင် မှုတည်ပြီးဝက်ဘ်စာမျက်နှာများကို အလိုအလျောက် ရေးသားပေးပါသည်။
  • ဆာဗလက်ပတ်ဝန်းကျင်သည်၊ ဆာဗလက်မှရေးသားပေးသော ဝက်ဘ်စာမျက်နှာများကို ဝက်ဘ်စာမျက်နှာများဆီသို့ ပြန်လည်ပေးပို့ပါသည်။
  • ဝက်ဘ်ဆာဗာသည်၊ ဆာဗလက်ပတ်ဝင်းကျင်မှ လက်ခံရရှိသော ဝက်ဘ်စာမျက်နှာကို ဝက်ဘ်ဘရောင်ဇာဆီသို့ ပြန်လည်ပေးပို့ပါသည်။
Sun က Java ဆာဗလက် နည်းပညာကို တီထွင်ခဲ့ကြသည့် ၁၉၉၀ခုနှစ်ပိုင်းများတွင်၊ ဝက်ဘ်အပလီကေးရှင်းများကို ရေးသားကြရာတွင် အောက်ပါအခက်အခဲများကို ကြုံတွေ့ရလေ့ရှိခဲ့၏။
  • ဝက်ဘ်အပလီကေးရှင်း(Dynamic Web Page)များကို ရေးသားရာတွင်CGIသို့မဟုတ်၊Microsoft၏IISမှ ထုတ်ပြန်ထားသောActive Server Pages (ASP) ကို အသုံးပြုနေကြသည်က များ၏။
  • CGI သည် ၎င်း၏ထူးခြားချက်မှ အိုဗာဟတ်ဒ်အဖြစ်များ၍၊ စာမျက်နှာကို လျှင်လျှင်မြန်မြန်ဖော်ပြနိုင်ရန် ရေးသားရန်အလွန်ခက်ခဲလှ၏။
  • ASP သည်ဆာဗာသည် အလွန်တန်ဖိုးကြီးမားသော Microsoft Windows NT Server ဖြစ်ရန် လိုအပ်ပါသည်။
Java ဆာဗလက်သည် အထက်ပါပြဿနာများကို ဖြေရှင်းနိုင်ရန် ရည်ရွယ်ပြီး ရေးသားခဲ့သော နည်းပညာဖြစ်ပါသည်။

Desktop ဘက်ကို ပြောင်းလည်းလာပုံ

Desktop ပတ်ဝင်းကျင်နှင့်ပတ်သက်ပြီး Standalone Java Application သည်၊ ယခင်က အသုံးနည်းပါးခဲ့သော်လည်း ယခုနောက်ပိုင်းတွင် Java ကိုအသုံးပြုသော ဆော့ဖ်ဝဲများကို တွေ့လာခဲ့ရပါသည်။ ဤကဲ့သို့ အသုံးများလာရခြင်း အကြောင်းအရင်းကို အောက်ပါအချက်များကြောင့်ဟု စဉ်းစားနိုင်ပါသည်။
  • ကွန်ပျူတာ၏ လုပ်ဆောင်နိုင်စွမ်း စွမ်းရည်သည် မြင့်မားလာမှု့ကြောင့်ဖြစ်၏။
  • Java ၏ဒြပ်မဲ့စက်(Java ဒြပ်မဲ့စက်၊ Java VM)နှင့်Javaကွန်ပိုင်းလာသည် များစွာ တိုးတက်ပြောင်းလည်း လာခဲ့သောကြောင့် ဖြစ်၏။
  • သုံးရလွယ်ကူသော Java ၏Desktop အပလီကေးရှင်းများကို လွယ်ကူစွာ ရေးသားနိုင်သော အဆင့်မြင့် IDEများကို၊ Open Sourceနှင့် စီးပွားဖြစ် လုပ်ငန်းသုံးများဘက်မှ ထုတ်ပြန်လာနိုင်ခဲ့သောကြောင့် ဖြစ်၏။
အသုံးများသော Java ဆော့ဖ်ဝဲများမှာNetBeansနှင့်Eclipse SDK၏ပေါင်းစုရေးသားပတ်ဝင်းကျင်နှင့်၊ LimeWireနင့်Azureusကဲ့သို့သောဖိုင်ပူးတွဲအသုံးချ ဆော့ဖ်ဝဲများ အစရှိသော ဆော့ဖ်ဝဲများပဲဖြစ်ကြ၏။ တဖန် သင်္ချာဆော့ဖ်ဝဲတစ်ခုဖြစ်သော MATLAB မှာလည်းUser Interface၏ ပံ့ပိုးမှု့နှင့် အတွက်အချက်ပိုင်းနေရာ အချို့တွင် Java ကို အသုံးပြုထားပါသည်။ Java Swingနှင့် SWT၏ဝစ်ဂျက်တူးကစ်ကို အသုံးပြုထားသော အပလီကေးရှင်းများကို နောက်ပိုင်းနေ့ရက်များတွင် တွေ့လာခဲ့ရပါသည်။

ဤကဲ့သို့ ယနေ့ခေတ်များတွင် Desktop Java အပလီကေးရှင်းများကို အသုံးပြုလာသည်ကို တွေ့ရပါသော်လည်း၊ အောက်ပါ အခက်အခဲများကြောင့် သုံးသင့်သလောက် အသုံးမများသည်ကို တွေ့နေရ၏။
  • Java အပလီကေရှင်းများသည်၊ Java ပတ်ဝင်းကျင်၏ အိုဗာဟက်ဒ်ကြောင့် Native Application များနှင့် နှိုင်းယှဉ်လျှင် မံမိုရီ အသုံးများကြသည်က များ၏။
  • GUI သည် အသုံးပြုမည့်ပလတ်ဖေါင်း ကိုယ်ပိုင်ထူးခြားမှု့ရှိသည့် Human Interface Guideline (HIG) ကို ထည့်သွင်း စဉ်းစားထားခြင်းမရှိပေ။ HIG ကို လိုက်နာပြီးအပလီကေးရှင်းများကို ရေးသားပါက၊ အသုံးပြုသူသည် အသုံးပြုမည့် အပလီကေးရှင်းကို နားလည်ရလွယ်ကူ တတ်ပါသည်။ တဖန် မှုလအတိုင်းအသုံးပြုမည် ဆိုပါက စာလုံးဒီဇိုင်းများကို ချောမွေ့စေသည့် နည်းပညာ (Font Smoothing) ကို အသုံးပြု၍မရနိုင်ပေ။ ထို့ကြောင့် User Interface ၏ စာလုံးများကို ဖော်ပြရာတွင် လှပခြင်းမရှိပဲ အရည်အသွေးမှာ မြင့်မားခြင်းမရှိနိုင်ပေ။
  • Java Development Kit (JDK)အဖြစ် အခမဲ့ပံ့ပိုးပေးနေသော အခြေခံJavaပလတ်ဖေါင်းသည် အသုံးလွယ်သော Desktop အပလီကေးရှင်းများကို ရေးသားရန်မှာ အားနည်းနေပါသေး၏။
    • ယခုနောက်ပိုင်းတွင် အထက်ဖော်ပြပါအတိုင်း၊ အသုံးလွယ်ကူသည့် Java Desktop အပလီကေးရှင်းများကို လွယ်ကူစွာရေးသားနိုင်သည့် အထောက်ကူပြုကရိယာများအားOpen Source/စီးပွားဖြစ် အနေဖြင့်၎င်း ပံ့ပိုးပေးနေကြ၏။
    • Javaပလက်ဖေါင်း (JRE) သည် ယနေ့တိုင် အဓိက ဗားရှင်းမြှင့်တင်မှု့များကို အကြိမ်ကြိမ် ပြုလုပ်ခဲ့ကြပြီး၊ ဗားရှင်းအမျိုးမျိုးရှိကြ၏။ အသုံးပြုသူသည် Java အပလီကေးရှင်းတစ်ခုကို စတင်အသုံးပြုရာတွင် လိုအပ်သလို ထိုအပလီကေးရှင်းကို အလုပ်လုပ်စေနိုင်သည့် ဗားရှင်းသို့မဟုတ် ထိုထက်နောက်ကျသော ဗားရှင်းကို အင်စတောလုပ်ထားရန် လိုအပ်ပါသည်။ Java ပလက်ဖေါင်းသည် 7MB အကျော်ရှိပြီး၊ ဒေါင်းလုဒ်လုပ်ပြီး အင်စတောလုပ်ရန်မှာ အတော်လေးကို အလုပ်များစေပါသည်။
    • ယခုနောက်ပိုင်းတွင် Java Web Start ၏ ထွက်ပေါ်လာခြင်းကြောင့် အော်တို ဒေါင်းလုဒ်နှင့် အင်စတော ကို လုပ်ဆောင်လာနိုင်ခဲ့ပါသည်။ ဝက်ဘ်ဘရောင်ဇာမှ Java အပလီကေရှင်းကို ရှာဖွေတွေ့ရှိပါက ကလစ်တစ်ခါနှိပ်ရုံဖြင့် JRE ကို အလိုအလျှောက် ဒေါင်းလုဒ်လုပ်ပြီး၊ အင်စတောလုပ်ခြင်း၊ Update လုပ်ခြင်း အစရှိသည်တို့ကို လုပ်ဆောင်ပေးနိုင်ပြီး၊ Java Web Start ကို အခြေခံသောSwing အပလီကေးရှင်းများကို အလုပ်လုပ်စေနိုင်ပါသည်။
အချို့သောဆော့ဖ်ဝဲရေးသားသူများသည် အိုင်တီနည်းပညာတွင်ဝက်ဘ်ကို အခြေခံသော မော်ဒယ်သည် ခေတ်စားနေပြီး၊ Stand Aloneအပလီကေးရှင်းများသည် ခေတ်နောက်ကျလျှက်ရှိပြီး၊ ပရိုဂရမ်မင်းနည်းပညာ အသစ်များသည် ထူးချွံသောဝက်ဘ်အပလီကေးရှင်းကို ရေးသားနိုင်ခြင်းဖြင့် ပြည့်စုံနေသည်ဟု ထင်မြင်နေကြ၏။ ဤအမြင်နှင့်ပတ်သက်၍ ဆော့ဖ်ဝဲနည်းပညာရှင်များကြားတွင် ထောက်ခံသူများရော ကန့်ကွက်သူများပါ အမျိုးမျိုးရှိကြပါ၏။ လက်ရှိအချိန်တွင်Rich Clientနှင့်Web 2.0တို့၏ ထွက်ပေါ်လာမှု့ကြောင့် ပုံစံအသစ်များကို ဖြစ်ပေါ်စေခဲ့ပါသည်။ ဝက်ဘ်ကို အခြေပြုသော ဝက်ဘ်အပလီကေးရှင်းနှင့်Stand Aloneအပလီကေးရှင်းများ၏ ပူးတွဲမှု့များပင်ဖြစ်၏။ ဝက်ဘ်အပလီကေးရှင်းအား Ajaxနှင့် Java Web Start၊Adobe Flash အစရှိသည့် ပူးတွဲရေးသားမှု့များကြောင့်၊ Web2.0 ခေတ်နှင့် လိုက်ညီသော လှပသေသပ်သည့် အပလီကေးရှင်းများကို ရေးသားလာနိုင်ခဲ့ကြပါသည်။

အိမ်သုံး ကွန်ပျူတာနှင့် ပတ်သက်၍

ယနေ့ခေတ် အိမ်သုံးကွန်ပျူတာ (PC) အတော်များများသည် အသုံးပြုသူက ဝက်ဘ်(Web) နှင့်Desktop ပတ်ဝင်းကျင်အပေါ်တွင် Java အပလီကေးရှင်း များကို အခက်အခဲမရှိ အလုပ်လုပ်စေနိုင်ပါသည် ။ ကွန်ပျူတာ ထုတ်လုပ်သူ အတော်များများသည် ထုတ်လုပ်ရောင်းချသည့် Windows PC တွင် Javaပလက်ဖေါင်း (JRE) ကို ထည့်သွင်းပေးလျှက်ရှိ၏။ ထို့အပြင် Apple ၏ Mac OS X နှင့် Linux အတော်များများတွင်လည်း Java ပလက်ဖေါင်းကို ထည့်သွင်းပေးလျှက်ရှိ၏။

သို့ရာတွင် ၂၀၀၁ခုနှစ် နောက်ပိုင်း မိုက်ကရိုဆော့ဖ်မှ Java ပလက်ဖေါင်းကို Windows တွင် ထည့်သွင်းခြင်း မပြုတော့ဟု ထုတ်ပြန်ခဲ့၏။ အကြောင်းမှာ ဆန်းမိုက်ကရိုစစ္စတမ်မှ မိုက်ကရိုဆော့ဖ်အား နောက်ကျနေပြီဖြစ်သော Java ပလက်ဖေါင်းအား ထည့်သွင်းနေမှု့ကို တရားစွဲဆိုခဲ့သောကြောင့်ဖြစ်၏။ မိုက်ကရိုဆော့ဖ်သည် ဤကဲ့သို့ ဗားရှင်း အဟောင်းများကို အသုံးပြုနေသောကြောင့်၊ Windows ၏ Java ပလက်ဖေါင်းပေါ်တွင် အသုံးပြုရန် ရေးသားသားသော Java ပရိုဂရမ်တစ်ခုသည် အခြားသော အိုအက်စ်အပေါ်ရှိ Java ပလက်ဖေါင်းအပေါ်တွင် အလုပ်နိုင်မည်ဟု အာမခံနိုင်မည် မဟုတ်ပေ။

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

လက်ရှိအချိန်တွင် Java အပလက်သည် ကိုယ်တိုင်အလုပ်လုပ်နိုင်သော ပလတ်ဖေါင်းကို ခွဲခြားသိရှိ လာနိုင်ခဲ့ပါသည်။ တဖန်၊ ဗားရှင်းများအကြား၌ အပြန်အလှန်အသုံးပြုနိုင်မှု့ သည်လည်း ပရိုဂရမ်မင်းဘာသာရပ်များ အကြားတွင် အဆင့်မြင့် အနေအထားတွင် တည်ရှိပါသည်။ Java SE 1.3 နောက်ပိုင်းတွင် ဗားရှင်းမတူညီမှု့ကြောင့် ဖြစ်ပေါ်တက်သော ပြဿနာများမှာ အလွန်နည်းပါးလာခဲ့ပါသည်။

ထို့အပြင် Java Web Start နည်းပညာသည် အင်စတောလုပ်ထားသော Java ဗားရှင်းကို စမ်းစစ်ပြီး လိုအပ်ပါက အလိုအလျှောက် အပ်ဒိတ်လုပ်ပြီး၊ Java Web Start သုံး အပလီကေးရှင်းများကိုပါ အပ်ဒိတ်လုပ်လာနိုင်ပါသည်။ ထို့အတွက် Java ပလက်ဖေါင်း ဗားရှင်းအဟောင်းများကို အသုံးပြုနေသော စက်များပင်ဖြစ်လင့်ငြား အလိုအလျှောက် အပ်ဒိတ်လုပ်နိုင်ခြင်းကြောင့် ဘားရှင်းပြဿနာသည် ခက်ခဲသော ပြဿနာတစ်ခုမဟုတ်တော့ပါ။

အမ်ဘက်ဒက်စစ္စတမ်(Embedded Systems) အပိုင်းဆိုင်ရာ

အမ်ဘက်ဒက်စစ္စတမ်သုံး Java (Java ME) သည် လက်ရှိ တွင်ကျယ်စွာအသုံးပြုနေသော ပတ်ဝင်းကျင် တစ်မျိုးဖြစ်၏။ မိုဘိုင်းဖုန်း၊PHSနှင့် PDA၊ စမတ်ဖုန်းအစရှိသည့် မိုဘိုင်းကရိယာများသည်  Java ပလက်ဖေါင်းများကို အသုံးပြုကြသည်က များ၏။

အမ်ဘက်ဒက်စစ္စတမ်ဘက်တွင် Symbian နှင့် BREW အစရှိသည့် ပလက်ဖောင်းများလည်း ရှိကြပါသည်။ အထူးသဖြင့် မိုဘိုင်းဖုန်းဈေးကွက်အပေါ်တွင် အဓိကထားပြီး Java နှင့် အပြိုင်အဖြစ် တည်ရှိနေခဲ့၏။ BREW ကို အသုံးပြု၍ အပလီကေးရှင်းများ ရေးသားရာတွင် အသုံးပြုခွင့် လိုင်စဉ်ကြေး ပေးဆောင်ရန် လိုအပ်ပါသည်။ သို့ရာတွင် Java ME သည် လိုင်စဉ်ခ ပေးဆောင်ရန်မလိုပဲ ပရိုဂရမ်များကို ဖန်တီးရေးသားနိုင်၏။

Java ME အား Symbian ထက်စာလျှင် ကျယ်ပြန့်စွာ အသုံးပြုနေသည်ကို တွေ့ရပါသည်။ Java ME အား ဤကဲ့သို့ ကျယ်ပြန့်စွာ အသုံးပြုလာကြသည်မှာ မိုဘိုင်းကရိယာ အမျိုးအစား အတော်များများ အပေါ်တွင် သက်သာစွာ အလုပ် လုပ်ဆောင်နိုင် သောကြောင့် ဖြစ်၏။

အထက်ပါအကြောင်းများကြောင့် တတိယပါတီများမှတဆင့် Opera mini ကဲ့သို့သော အခမဲ့ Java ဆော့ဖ်ဝဲများကို ရေးသားလာနိုင်ခြင်းဖြစ်၏။