smcproject/ml-wiki-sentences huggingface dataset:
കമ്മീഷനിലെ ഇന്ത്യാക്കാരായ അംഗങ്ങൾ പ്രത്യേക റിപ്പോർട്ടാണ് തയ്യാറാക്കിയത്.
വെടിക്കോപ്പുകൾ തീരുന്നതുവരെ വെടിവെപ്പു തുടരാൻ നിർദ്ദേശിച്ച ഡയർ കടുത്ത അപരാധമാണ് ചെയ്തതെന്ന് കമ്മീഷൻ കണ്ടെത്തി.
കലാപം തുരത്താൻ വേണ്ടിയാണ് ഡയർ ഈ നടപടിക്കു മുതിർന്നതെന്ന് കമ്മീഷനിലെ മറ്റംഗങ്ങൾ വാദിച്ചെങ്കിലും, അവിടെ യാതൊരു കലാപവും ഉണ്ടായിരുന്നില്ലെന്നും കൂടാതെ പഞ്ചാബ് ലഫ്ടനന്റ് ഗവർണറായിരുന്നു ഡ്വയറിനും സമാന ചിന്താഗതിതന്നെയാണുണ്ടായിരുന്നതെന്നും കമ്മീഷൻ അഭിപ്രായപ്പെട്ടു.
ഹണ്ടർ കമ്മീഷന്റെ സുപ്രധാന കണ്ടെത്തലുകൾ വെടിവെപ്പിനു മുമ്പായി ഡയർ യാതൊരു വിധ മുന്നറിയിപ്പും നൽകിയിരുന്നില്ല.
ജനക്കൂട്ടം ഭയാക്രാന്തരായി ഓടിയെങ്കിലും ഡയർ വെടിവെപ്പു നിറുത്താൻ തയ്യാറായിരുന്നില്ല.
ഡയർ തന്റെ അധികാരപരിധിക്കു പുറത്തുള്ള കാര്യങ്ങളാണ് ജാലിയൻവാലാബാഗിൽ ചെയ്തത് ബ്രിട്ടീഷ് ഭരണത്തെ പുറത്താക്കാനുള്ള യാതൊരു വിധ ഗൂഢാലോചനയും പഞ്ചാബിൽ നടന്നിട്ടില്ല
കൂടാതെ ഇന്ത്യക്കാരായ അംഗങ്ങൾ താഴെ പറയുന്ന കാര്യങ്ങൾ കൂടി റിപ്പോർട്ടിൽ കൂട്ടിച്ചേർക്കുകയുണ്ടായി നിരപരാധികളായ കുട്ടികളും സ്ത്രീകളും, പ്രായംചെയന്നവരും എല്ലാം ഉണ്ടായിരുന്നു ജാലിയൻവാലാബാഗിൽ മുറിവേറ്റവരെ ആശുപത്രിയിൽ കൊണ്ടുപോകാൻ പോലും ഡയർ തയ്യാറായില്ല ഡയറുടെ നടപടി തികച്ചും മനുഷ്യത്വരഹിതമായിരുന്നു.
എന്നാൽ ജനറൽ ഡയർക്കെതിരേ യാതൊരു വിധ ശിക്ഷാ നടപടികളും കമ്മീഷൻ ശുപാർശ ചെയ്തിരുന്നില്ല.
വൈസ്രോയി കൗൺസിലിലെ അംഗങ്ങളും ഡയർ കുറ്റക്കാരനെന്നു കണ്ടെത്തിയെങ്കിലും രാഷ്ട്രീയപരമായ കാരണങ്ങളാൽ നടപടിയൊന്നും ഉണ്ടായിരുന്നില്ല.
എന്നാൽ ഡയർ കുറ്റക്കാരനാണെന്നു കമ്മീഷനുൾപ്പടെ കണ്ടെത്തിയിരുന്നതിനാൽ അദ്ദേഹത്തെ പിന്നീട് സൈനിക സേവനങ്ങളിൽ നിന്നും തിരിച്ചുവിളിച്ചിരുന്നു.
മൈക്കൾ ഒ.ഡ്വയറിന്റെ കൊലപാതകം
പിൽക്കാലത്ത്, ജാലിയൻ വാലാബാഗ് കൂട്ടക്കൊലയിലെ പ്രധാനസൂത്രധാരൻ ആയ മൈക്കൽ ഒഡ്വയറിനെ ഉധം സിങ് വെടിവെച്ചു കൊന്നു.
ഉധം സിങ് ജാലിയൻവാലാബാഗ് സംഭവത്തിന്റെ ദൃക്സാക്ഷിയായിരുന്നു.
അതുകൂടാതെ ആ സംഭവത്തിൽ അദ്ദേഹത്തിന് പരുക്കേറ്റിരുന്നു.
ജാലിയൻവാലാബാഗ് കൂട്ടക്കൊലക്ക് ഡയറിന് ഉത്തരവ് നൽകിയ പഞ്ചാബിന്റെ ലഫ്ടനന്റ് ഗവർണർ കൂടിയായിരുന്നു മൈക്കൽ ഒഡ്വയർ.
ഉധം സിങിന്റെ നടപടി  പൊതുവേ അംഗീകരിക്കപ്പെട്ടില്ലെങ്കിലും, ചില പത്രങ്ങൾ അദ്ദേഹത്തിന് അഭിനന്ദനങ്ങളുമായി എത്തി.
ഇന്ത്യയിലെ ജനങ്ങൾക്കേറ്റ അപമാനങ്ങൾക്ക് അവസാനം നാം തിരിച്ചടി നൽകിയിരിക്കുന്നു എന്നാണ് സർക്കാരിന്റെ ഒരു വക്താവ് പിന്നീട് പറഞ്ഞത്.
സ്മാരകം പ്രവേശനകവാടം രക്തസാക്ഷികളുടെ കിണർ
ജാലിയൻ വാലാബാഗിൽ പിടഞ്ഞുമരിച്ച ധീരരക്തസാക്ഷികളുടെയും പരിക്കേറ്റവരുടെയും ഓർമ്മക്കായി 1963 ൽ ഇവിടെ ഒരു സ്മാരകം നിർമ്മിക്കപ്പെട്ടു.
1920 ൽ ജാലിയൻവാലാബാഗിലെ രക്തസാക്ഷികൾക്കായി ഒരു സ്മാരകം പണിയുവാനും അതിനുവേണ്ടി ഒരു ട്രസ്റ്റ് രൂപീകരിക്കുവാനും ഇന്ത്യൻ നാഷണൽ കോൺഗ്രസ്സ് തീരുമാനിച്ചു.
1923 ൽ ഈ ട്രസ്റ്റ് ജാലിയൻവാലാബാഗ് സ്വന്തമാക്കുകുയം ഒരു സ്മാരകം പണിയുകയും ചെയ്തു.
അമേരിക്കൻ വാസ്തു ശിൽ‌പ്പിയായ ബഞ്ചമിൻ പോൾക്ക് രൂപകല്പന ചെയ്ത ഈ സ്മാരകം അന്നത്തെ പ്രസിഡന്റായിരുന്ന ഡോ: രാജേന്ദ്രപ്രസാദ് ഉദ്‌ഘാടനം ചെയ്തു.
ജവഹർലാൽ നെഹ്രു ഉൾപ്പെടെ പല പ്രമുഖരും പങ്കെടുത്ത് സദസ്സിലാണ് ഈ സ്മാരകം ഉദ്ഘാടനം ചെയ്തത്.
പട്ടാളക്കാരുടെ വെടിയേറ്റ സ്ഥലങ്ങളുള്ള ഭാഗം പ്രത്യേകം സംരക്ഷിച്ചു സൂക്ഷിച്ചിരിക്കുന്നു.
വെടിവെപ്പിൽ നിന്നും രക്ഷപ്പെടാൻ ജനങ്ങൾ എടുത്തു ചാടിയ കിണർ രക്തസാക്ഷികളുടെ കിണർ എന്ന പേരു നൽകി സംരക്ഷിച്ചിട്ടുണ്ട്.
പിൽക്കാല ഖേദപ്രകടനങ്ങൾ
എലിസബത്ത് രാജ്ഞിയുടെ ഇന്ത്യാ സന്ദർശനവേളയിൽ അവർ ജാലിയൻവാലാബാഗ് സ്മാരകം സന്ദർശിക്കുകയും രക്തസാക്ഷികസ്മാരകത്തിനു മുന്നിൽ നിശ്ശബ്ദമായി ആദരാഞ്ജലികൾ അർപ്പിക്കുകയും ചെയ്തു.
ചരിത്രത്തിൽ നടക്കാൻപാടില്ലാത്തതു പലതും സംഭവിച്ചിട്ടുണ്ട്,നമുക്ക് ചരിത്രത്തെ തിരുത്തിയെഴുതാൻ സാധിക്കില്ല.
ചരിത്രത്തിൽ നിന്നും നല്ലൊരു നാളെ പടുത്തുയർത്താൻ ശ്രമിക്കാം എന്നാണ് എലിസബത്ത് രാജ്ഞി ജാലിയൻവാലാബാഗ് സന്ദർശനത്തിനു മുമ്പായി പറഞ്ഞത്.
2013 ഫെബ്രുവരിയിൽ ബ്രിട്ടീഷ് പ്രധാനമന്ത്രിയായ ഡേവിഡ് കാമറൂൺ തന്റെ ഇന്ത്യാ സന്ദർശനവേളയിൽ  ജാലിയൻവാലാബാഗ് സ്മാരകം സന്ദർശിക്കുകയുണ്ടായി.
ബ്രിട്ടീഷ് ഇന്ത്യാ ചരിത്രത്തിലെ ഏറ്റവും ലജ്ജാകരമായ സംഭവമായിരുന്നു ജാലിയൻവാലാബാഗ് കൂട്ടക്കൊല എന്ന് അദ്ദേഹം അഭിപ്രായപ്പെട്ടു.
എന്നിരിക്കിലും, ഒരു ഔദ്യോഗിക ഖേദപ്രകടനത്തിന് ഡേവിഡ് കാമറൂൺ തയ്യാറായില്ലായിരുന്നു.
ചിത്രശാല ജാലിയൻ വാലാ ബാഗ് സ്മാരകം ജാലിയൻ വാലാ ബാഗിന്റെ ചുമരിൽ വെടിയുണ്ട പതിഞ്ഞ ഭാഗം അടയാളപ്പെടുത്തിയത്.
വെടിയുണ്ടകൾ തുളഞ്ഞുകയറിയതിന്റെ അടയാളങ്ങൾ അവലംബം സ്രോതസ്സുകൾ മാതൃഭൂമി ഇയർബുക്ക് 2008
ജാലൗൺ ജില്ല
ഇന്ത്യയിലെ ഉത്തർ പ്രദേശ് സംസ്ഥാനത്തിലെ ഒരു ജില്ലയാണ് ജാലൗൺ .
മറാഠ ഗവർണറുടെ മുൻ ആസ്ഥാനമായിരുന്ന ജലൗൻ നഗരത്തിന്റെ പേരിൽ നിന്നുമാണ് ഈ നാമം ഉണ്ടായത്, പക്ഷേ ജില്ലയുടെ ഭരണകേന്ദ്രം ഓറയിലാണ് സ്ഥിതിചെയ്യുന്നത്.
സംസ്ഥാനത്തെ മറ്റു പ്രധാന പട്ടണങ്ങൾ കൊഞ്ച്, കൽപി , മാധോഗർ എന്നിവയാണ്.
ഝാൻസി ഡിവിഷന്റെ ഭാഗമാണ് ജലൗണ്.
ജില്ലയുടെ വിസ്തീർണ്ണം 4565 ചതുരശ്ര കി.
, ജനസംഖ്യ 16,89,974(2011 സെൻസസ്) ആണ്, മാത്രമല്ല ഇവിടത്തെ ജനസാന്ദ്രത കിലോമീറ്ററിന് 370 വ്യക്തികൾ എന്ന കണക്കെയാണ്.
ബുന്ദേൽഖണ്ഡിൻറെ സമതല പ്രദേശത്താണ് ജില്ല പൂർണമായും സ്ഥിതിചെയ്യുന്നത്, ജില്ലയുടെ ഭൂരിഭാഗം പ്രദേശങ്ങളും യമുന നദിയാൽ ചുറ്റപ്പെട്ടിരിക്കുന്നു ഇത് ജില്ലയുടെ വടക്കൻ അതിർത്തിയായി കണക്കാക്കുന്നു, തെക്കൻ അതിർത്തി ബെത്വാ നദിയും പടിഞ്ഞാറേ അതിർത്തി പഹുജുമാണ്.
കഴിഞ്ഞ നാലു വർഷമായി ജില്ല കടുത്ത വരൾച്ചയിലാണ്.
ശരാശരി മഴ 399 മില്ലീമീറ്ററാണ്.
വരൾച്ചക് മുൻപുള്ള ശരാശരി 800 മില്ലിമീറ്റർ ആയിരുന്നു.
2006 ൽ പഞ്ചായത്ത് രാജ് മന്ത്രാലയം രാജ്യത്തെ ഏറ്റവും പിന്നോക്കം നിൽക്കുന്ന 250 ഓളം ജില്ലകളിൽ ഒന്നാണ് ജലാൻ(മൊത്തം 640 എണ്ണം).
ഇപ്പോൾ ബാക്ക്വേഡ് റീജിയൻ ഗ്രാന്റ് ഫണ്ടിന്റെ (ബി.ആർ.ജി.എഫ്) ഫണ്ട് സ്വീകരിക്കുന്ന ഉത്തർപ്രദേശിലെ 34 ജില്ലകളിലൊന്നാണ് ഈ ജില്ല.
ജാലിദ് സെഹൂലി ജാലിദ് സെഹൂലി
ജാലിദ് സെഹൂലി (ജനനം: 19 ഏപ്രിൽ 1968) ഒരു ജർമ്മൻ ഗൈനക്കോളജിസ്റ്റും ഓങ്കോളജിസ്റ്റുമാണ്.
ഇംഗ്ലീഷ്: Jalid Sehouli.
അദ്ദേഹം പെരിറ്റോണിയൽ, അണ്ഡാശയ അർബുദത്തിൽ വിദഗ്ധനാണ്.
ബെർലിനിലെ ചാരിറ്റേ ഹോസ്പിറ്റലിലെ പ്രൊഫസറും ശാസ്ത്രീയ, ഫിക്ഷൻ കൃതികളുടെ എഴുത്തുകാരനുമാണ്.
1960-കളിൽ മൊറോക്കോയിൽ നിന്ന് പലായനം ചെയ്ത, നിരക്ഷരരായ മൊറോക്കൻ മാതാപിതാക്കളുടെ മകനാണ് ജാലിദ് .
ബെർലിൻ വർക്കിംഗ് ക്ലാസ് ഡിസ്ട്രിക്റ്റ് ഓഫ് വെഡ്ഡിംഗിലാണ് അദ്ദേഹം വളർന്നത്.
നഴ്‌സാകാനുള്ള പരിശീലനത്തിനിടെ, ഫ്രീ യൂണിവേഴ്‌സിറ്റേറ്റ് ബെർലിനിൽ വൈദ്യശാസ്ത്രം പഠിക്കാൻ ഒരു  വാഗ്ദാനം ലഭിച്ചു.
1989 മുതൽ 1995 വരെ അവിടെ പഠിച്ചു.
1998-ൽ "ഗൈനക്കോളജിക്കൽ ഓങ്കോളജിയിലെ പാരമ്പര്യേതര കാൻസർ തെറാപ്പിയുടെ പോസ്റ്റ്-ഓപ്പറേറ്റീവ് ഉപയോഗം" എന്ന വിഷയത്തിൽ അദ്ദേഹം തന്റെ ഡോക്ടറേറ്റ് നേടി.
2002-ൽ ഗൈനക്കോളജിയിലും പ്രസവചികിത്സയിലും സ്പെഷ്യലിസ്റ്റായി അദ്ദേഹം സാക്ഷ്യപ്പെടുത്തി.
"മൾട്ടിമോഡൽ മാനേജ്മെന്റ് ഓഫ് മാലിഗ്നന്റ് ഓവേറിയൻ ട്യൂമറുകൾ" എന്ന വിഷയത്തിൽ ഒരു പോസ്റ്റ്ഡോക്ടറൽ തീസിസുമായി 2005-ൽ അദ്ദേഹം ഹംബോൾട്ട്-യൂണിവേഴ്സിറ്റേറ്റ് സു ബെർലിനിൽ തന്റെ ഹാബിലിറ്റേഷൻ പൂർത്തിയാക്കി.
2005-ൽ ഗൈനക്കോളജിയും പ്രസവചികിത്സയും പഠിപ്പിക്കാൻ നിയമിതനായി.
2007-ൽ ബെർലിനിലെ ചാരിറ്റേ ഹോസ്പിറ്റലിലെ W2 പ്രൊഫസർഷിപ്പ് വാഗ്ദാനം അദ്ദേഹം സ്വീകരിച്ചു.
2014-ൽ അദ്ദേഹം ചാരിറ്റിലെ ജീവിതത്തിനായി ഗൈനക്കോളജിക്കുള്ള W3 ഫുൾ പ്രൊഫസർഷിപ്പിലേക്ക് തിരഞ്ഞെടുക്കപ്പെട്ടു, അതിനുശേഷം ഗൈനക്കോളജിക്കായുള്ള ക്ലിനിക്കിന്റെ ഡയറക്ടറും ചാരിറ്റിലെ മുഴുവൻ പ്രൊഫസറുമാണ്..
പരീക്ഷണാത്മക ശസ്ത്രക്രിയാ ഗൈനക്കോളജിയിലും ഓങ്കോസർജറിയിലും ഡോക്‌ടർ-പേഷ്യന്റ് കമ്മ്യൂണിക്കേഷൻ വിഷയത്തിലും ജാലിദ് വൈദഗ്ദ്ധ്യം നേടിയിട്ടുണ്ട് (ഉദാ. മോശം വാർത്തകൾ).
വിവിധ പ്രൊഫഷണൽ ജേണലുകളുടെ സഹ-എഡിറ്ററും ഗൈനക്കോളജിയിലെ രോഗനിർണയം, തെറാപ്പി, അനന്തര പരിചരണം എന്നിവയിൽ ഊന്നൽ നൽകി ദേശീയ അന്തർദേശീയ ജേർണലുകളിൽ നൂറുകണക്കിന് ലേഖനങ്ങളുടെ രചയിതാവുമാണ് ജാലിദ്.
ടാർഗെറ്റുചെയ്‌ത ചികിത്സകളെക്കുറിച്ചുള്ള വിവിധ ദേശീയ, അന്തർദേശീയ ഘട്ടങ്ങൾ I, II, III പഠനങ്ങൾക്ക് അദ്ദേഹം നേതൃത്വം നൽകിയിട്ടുണ്ട്.
അദ്ദേഹം നിരവധി ശാസ്ത്ര ഗ്രന്ഥങ്ങളുടെ എഡിറ്ററും രചയിതാവുമാണ്.
2015 മുതൽ 2016 വരെ ബെർലിനിലെ സൊസൈറ്റി ഫോർ ഒബ്‌സ്റ്റട്രിക്‌സ് ആൻഡ് ഗൈനക്കോളജിയുടെ ചെയർമാനായിരുന്ന ജാലിദ് 1998-മുതൽ നോർത്ത്-ഈസ്റ്റ് ജർമ്മൻ സൊസൈറ്റി ഫോർ ഗൈനക്കോളജിക്കൽ ഓങ്കോളജിയുടെ (NOGGO e.V.) ബോർഡിൽ അംഗമാണ്.
ഗൈനക്കോളജിക്കൽ ഓങ്കോളജി വർക്കിംഗ് ഗ്രൂപ്പിന്റെ (AGO) ഓർഗൻ കമ്മീഷൻ ഓവർ, കൂടാതെ വിവിധ ദേശീയ അന്തർദേശീയ അസോസിയേഷനുകളിലും വിദഗ്ധരുടെ സംഘടനകളിലും സജീവ അംഗമാണ്..
റഫറൻസുകൾ ↑ Leonhard, Elke (July 15, 2016).
Urvertrauen und unbändiger Wille.
Im Roten Wedding geboren: Der unaufhaltsame Aufstieg des Jalid Sehouli, dessen Eltern aus Marokko immigrierten.
neues deutschland.
Retrieved February 20, 2018.
↑ ↑ Curriculum Vitae of Prof. Dr. med. Jalid Sehouli Archived 2018-03-02 at the Wayback Machine .
, p. 1-2.
↑ Elkahlaoui, Hajar (October 23, 2017).
Director at Hospital That His Mother Cleaned: Story of Moroccan-German Doctor Jalid Sehouli.
Morocco World News.
Retrieved February 10, 2018.
↑ Curriculum Vitae of Prof. Dr. med. Jalid Sehouli Archived 2018-03-02 at the Wayback Machine .
, p. 3-4.
ജാവ (പ്രോഗ്രാമിങ് ഭാഷ) ഇംഗ്ലീഷ് വിലാസം https://ml.wikipedia.org/wiki/Java_programming_language
കമ്പ്യൂട്ടറുകളിലും മറ്റും ഉപയോഗിക്കുന്ന വിവിധോദ്ദേശ്യ പ്രോഗ്രാമിങ് ഭാഷയാണ്‌ ജാവ .
ജെയിംസ് ഗോസ്‌ലിങ്ങ് , ബിൽ ജോയ് മുതലായവരുടെ നേതൃത്വത്തിൽ സൺ മൈക്രോസിസ്റ്റംസ്‌ വികസിപ്പിച്ചെടുത്ത ഒബ്ജക്റ്റ് ഓറിയന്റഡ് പ്രോഗ്രാമിങ് ഭാഷയായ‌ ജാവ, ഇന്ന് വെബ് സെർവറുകൾ , കമ്പ്യൂട്ടറുകൾ , മൊബൈൽ ഫോണുകൾ തുടങ്ങി ഒട്ടനവധി ഇലക്ട്രോണിക് ഉപകരണങ്ങളിൽ ഉപയോഗിക്കപ്പെടുന്നു.
വെബ് പ്രോഗ്രാമിങിനാണ് കൂടുതൽ ഉപയോഗിക്കുന്നതെങ്കിലും, അതിലേറെ കാര്യങ്ങൾ ചെയ്യാൻ ഉപയോഗിക്കുന്ന വിവിധോദ്ദേശ്യ പ്രോഗ്രാമിങ് ഭാഷയാണിത് .
സൺ മൈക്രോസിസ്റ്റംസിനെ 2009 മദ്ധ്യത്തിൽ ഒറാക്കിൾ വാങ്ങിയതോടെ ജാവ ഒറാക്കിളിന്റെ നിയന്ത്രണത്തിലായി .
കമ്പ്യൂട്ടറുകളിൽ തന്നെ സെർവറുകളിലും ക്ലൈന്റുകളിലും പ്രത്യേകം പ്രത്യേകം പ്രവർത്തിക്കാൻ പ്രാപ്തമായ പ്രോഗ്രാമുകൾ സൃഷ്ടിക്കാൻ ജാവ ഉപയോഗപ്പെടുത്താം.
ഇതിനുപുറമേ സ്വതന്ത്രമായി പ്രവർത്തിക്കുന്ന ആപ്ലിക്കേഷനുകൾ നിർമ്മിക്കാനും ജാവ ഉപയോഗിക്കുന്നു.
ഓരോ ഓപ്പറേറ്റിങ് സിസ്റ്റത്തിനുമായി വെവ്വേറെ സോഫ്റ്റ്‍വെയറുകൾ നിർമ്മിക്കുക എന്ന മറ്റു പല പ്രോഗ്രാമിങ് ഭാഷകൾക്കും ഉള്ള പരിമിതി ജാവക്കില്ല.
പ്ലാറ്റ്ഫോം സ്വാതന്ത്ര്യം (Platform Independence) എന്ന ഈ ഗുണം ജാവ സാധ്യമാക്കുന്നത് ജാവ വിർച്ച്വൽ മെഷീൻ അഥവാ ജെ.വി.എം (JVM-Java Virtual Machine) എന്ന സാങ്കേതികത ഉപയോഗിച്ചാണ്.
ജെ.വി.എം. എല്ലാ ഓപ്പറേറ്റിങ് സിസ്റ്റത്തിനും വ്യത്യസ്തമാണ്.
ജാവയിൽ സോഫ്റ്റ്‍വെയറുകൾ സൃഷ്ടിക്കാൻ, സൺ മൈക്രോസിസ്റ്റംസ് ജാവ ഡവലപ്മെന്റ് കിറ്റ് അഥവാ ജെ. ഡി. കെ (Java Development Kit - JDK) എന്നൊരു വികസനോപാധിയും സൃഷ്ടിച്ചിട്ടുണ്ട്.
പ്രോഗ്രാമിങ് താരതമ്യേന എളുപ്പമാക്കാൻ എക്ലിപ്സ് , നെറ്റ്ബീൻസ് , ബോർലാൻഡ് ജെബിൽഡർ തുടങ്ങിയ ഇന്റഗ്രേറ്റ്ഡ് ഡവലപ്മെന്റ് എൻവിയോണ്മെന്റുകളും (ഐ.ഡി.ഇ) ഇന്ന് ലഭ്യമാണ്.
ഇന്ന് ജാവയുടെ പതിപ്പ് 7 (ജാവ 7) ഉം, ജെ.ഡി.കെ പതിപ്പ് 7u10 ഉം ആണ് .
ജാവയുടെ പ്രധാന പതിപ്പുകളിൽ എട്ടാമത്തേതാണിത്.
2005 ആയപ്പോഴേക്കും, 250 കോടിയോളം ഉപകരണങ്ങളിൽ ജാവ ഉപയോഗിക്കപ്പെടുകയും, 45 ലക്ഷം ആളുകൾ ജാവ പഠിക്കുകയും ചെയ്തിട്ടുണ്ട്.
ഏറക്കുറേ സി , സി++ എന്നീ പ്രോഗ്രാമിങ് ഭാഷകളുടെ വാക്യഘടന (syntax) തന്നെയാണ് ജാവയിലും ഉപയോഗിക്കുന്നത്.
മൈക്രോസോഫ്റ്റിന്റെ സി# (സി ഷാർപ്പ്, മുമ്പ് ജെ++ ) പോലുള്ള ഭാഷകളിൽ ജാവയുടെ സ്വാധീനം ഏറെയുണ്ട്.
സി ഷാർപ്പിൽ നിന്നും ജാവയും ചില പ്രത്യേകതകൾ കടംകൊണ്ടിട്ടുണ്ട്.
പേരിലും, ലേഖനരീതിയിലും സാമ്യങ്ങളുണ്ടെങ്കിലും ജാവാസ്ക്രിപ്റ്റ് എന്ന സ്ക്രിപ്റ്റിങ്ങ് ഭാഷയ്ക്ക് ജാവയുമായി ബന്ധമൊന്നുമില്ല.
1990 കളുടെ ആദ്യപാദത്തിൽ സൺ മൈക്രോസിസ്റ്റംസ്‌ വികസിപ്പിച്ച ജാവ കമ്മ്യൂണിറ്റി പ്രോസസിന്റെ നിർദ്ദേശങ്ങൾക്കനുസൃതമായി ജാവ കംപൈലർ , ജാവ വിർച്ച്വൽ മെഷീൻ എന്നിവയ്ക്ക് സൺ മൈക്രോസിസ്റ്റംസ് ഗ്നൂ സാർവ്വജനിക അനുവാദപത്രം നൽകിയിട്ടുണ്ട് .
സി പ്രോഗ്രാമിങ് ഭാഷയിൽ നിന്നും 1980-ൽ @Quách Tĩnh അവതരിപ്പിച്ച സി++ -ഉം അതിനോടൊപ്പം രൂപം കൊണ്ട വസ്തുതാധിഷ്ഠിത പ്രോഗ്രാമിങ് രീതിയും 1990 ആയപ്പോഴേക്കും വൻതോതിൽ ജനകീയമായി.
പ്രോഗ്രാം പ്രവർത്തിക്കാനാവശ്യമായ മെമ്മറി പ്രത്യേകം കുറിച്ചുകൊടുക്കണം എന്നുള്ളതുകൊണ്ടും, അതു കൊണ്ടു തന്നെ ഹാർഡ്‌വെയറിനനുസൃതമായി പ്രോഗ്രാം പുതുക്കേണ്ടി വരുമെന്നതും പിൽക്കാലത്ത് സി++നു തിരിച്ചടിയായി.
മെമ്മറിയുടെ കൈകാര്യം പ്രോഗ്രാമറുടെ കൈയ്യിലായിരുന്നതിനാൽ വിനാശബുദ്ധികൾക്ക് ദോഷകരങ്ങളായ പ്രോഗ്രാമുകൾ എഴുതാൻ സി, സി++ ഭാഷകളിൽ എളുപ്പമായിരുന്നു.
ജാവയുടെ സൃഷ്ടി ജെയിംസ് ഗോസ്‌ലിങ്ങ് .
ജാവയുടെ പിതാവ്
1990-ൽ പരസ്പര സംവേദനക്ഷമമായ ഒരു ടിവി പരിപാടി നിർമ്മിക്കാനുള്ള പദ്ധതിക്കിടയിൽ ജെയിംസ് ഗോസ്‌ലിങ്ങ് എന്ന സോഫ്റ്റ്‌വേർ വിദഗ്ദ്ധൻ സി++ ചില പ്രത്യേകതകളിൽ സംതൃപ്തനാകാതെ പദ്ധതിക്കനുസരിച്ച ഒരു പ്രോഗ്രാമിങ് ഭാഷ നിർമ്മിക്കാനുള്ള ശ്രമം തുടങ്ങിയതുമുതലാണ്‌ ജാവയുടെ ചരിത്രം തുടങ്ങുന്നത് .
ടെലിവിഷൻ സംവേദനക്ഷമമാക്കാനുള്ള “സെറ്റ് റ്റോപ്” ബോക്സ് പോലുള്ള, ഇലക്ട്രോണിക് ഉപകരണങ്ങൾക്കായിട്ടാണ് “ഗ്രീൻ” (Green) എന്ന കോഡുനാമത്തിൽ അന്നറിയപ്പെട്ട ഈ ഭാഷ നിർമ്മിക്കാനാരംഭിച്ചത് .
സി യിൽ നിന്നും സി++ ഉണ്ടാക്കിയതുപോലെ സി++ ൽ അനുബന്ധങ്ങൾ ചേർത്ത് പുതിയൊരു ഭാഷയും, ഏതൊരു ഹാർഡ്‌വെയറുമായി ആശയവിനിമയം നടത്താൻ കഴിവുള്ള ഒരു ഇടനിലപ്രോഗ്രാമും നിർമ്മിക്കാനായിരുന്നു ആദ്യശ്രമമെങ്കിലും അത് വളരെ പെട്ടെന്നു തന്നെ തികച്ചും പുതിയൊരു ഭാഷയെന്ന ലക്ഷ്യത്തിലെത്തിച്ചേർന്നു.
1991 ൽ ‘ ഓക് ’ എന്ന പേരിലാണ് ഗോസ്ലിങ് പുതിയ പ്രോഗ്രാമിങ് ഭാഷയ്ക്കുള്ള ശ്രമം തുടങ്ങിയത്.
സി , സി++ പ്രോഗ്രാമിംഗ് ഭാഷകളോട് സാമ്യമുള്ള ഒരു പ്രോഗ്രാമിംഗ് ഭാഷ സൃഷ്ടിക്കുകയും, ആ ഭാഷയിലെഴുതുന്ന പ്രോഗ്രാമുകൾ എല്ലാത്തരം കമ്പ്യൂട്ടറുകളിലും , ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റങ്ങളിലും എന്നതിനുപരിയായി ഏത് ഇലക്ട്രോണിക് ഉപകരണത്തിലും പ്രവർത്തിപ്പിക്കുവാൻ സഹായിക്കുന്ന ഒരു വിർച്ച്വൽ മെഷീൻ നിർമ്മിക്കുകയുമായിരുന്നു അദ്ദേഹത്തിന്റെ ലക്ഷ്യം.
ബിൽ ജോയ് , ആർതർ വാൻ ഹോഫ് , ജോനാതൻ പെയ്ൻ , ഫ്രാങ്ക് യെല്ലിൻ , റ്റിം ലിൻഡോം തുടങ്ങിയവർ മറ്റു പ്രധാന സഹസ്രഷ്ടാക്കളാണ് .
18 മാസം കൊണ്ട് ഇതിന്റെ ആദ്യരൂപം 1992 -ൽ പുറത്തിറങ്ങി.
ജാവ ആദ്യം എംബഡഡ് സിസ്റ്റങ്ങളേയും കമ്പ്യൂട്ടറുകളേയും ആയിരുന്നു ലക്ഷ്യം വച്ചിരുന്നത്.
എംബഡഡ് സിസ്റ്റങ്ങൾ ഒന്നിനൊന്നു വ്യത്യസ്തങ്ങളായിരുന്നതിനാൽ ഒരേ പ്രോഗ്രാമിന്റെ വിതരണം എപ്പോഴും പ്രശ്നങ്ങളെ നേരിട്ടു, അതേ പ്രോഗ്രാം തന്നെ കമ്പ്യൂട്ടറിൽ ഉപയോഗിക്കുക എന്നത് പലപ്പോഴും അസാധ്യമായിത്തീർന്നു.
അപ്പോഴേക്കും ഇന്റർനെറ്റിന് ഒരു പൂർണ്ണത കൈവന്നിരുന്നു.
അതോടെ സ്രഷ്ടാക്കളുടെ ശ്രദ്ധ പുതിയമേഖലയിലേക്കു തിരിഞ്ഞു.
പുതിയ ലക്ഷ്യം ജാവയുടെ വളർച്ചയിൽ നിർണ്ണായകമായി.
രൂപകല്പനയിലെ നിഷ്പക്ഷത(Architectural neutral) എന്ന ഗുണം ഏവരുടേയും ശ്രദ്ധ ആദ്യം തന്നെ ജാവയിലേക്കു തിരിയാൻ കാരണമായിരുന്നുവെന്നാലും ആത്യന്തികമായി ഇന്റർനെറ്റാണ് ജാവയുടെ വൻ‌വിജയത്തിന് കാരണമായത് .
സണ്ണിന്റെ സംവേദനക്ഷമമായ ടി.വി. എന്ന പദ്ധതി വിജയിച്ചില്ലെങ്കിലും പുതിയൊരു കഴിവുറ്റ ഭാഷയുടെ ഉദയത്തിനതു കാരണമായി. 'ഓക്' 1995 -മെയ് മാസത്തിൽ ജാവ എന്ന പുതിയ പേരിൽ താരതമ്യേന പൂർണ്ണരൂപത്തിൽ പുറത്തിറങ്ങി .
“ ഒരിക്കലെഴുതൂ എവിടെയും പ്രവർത്തിപ്പിക്കൂ ” ( Write Once, Run Anywhere -WORA) എന്ന ആപ്തവാക്യവുമായാണ് ജാവ വന്നത്.
ജാവയുടെ ആദ്യപതിപ്പ് കേവലമൊരു ഫ്ലോപ്പി ഡിസ്കിൽ ഉൾക്കൊള്ളിക്കാമായിരുന്നു.
കാതലായ ഭാഗം കേവലം നൂറ് കെ.ബി. ആണുണ്ടായിരുന്നത്.
ഗണിത പ്രശ്നങ്ങൾ കൈകാര്യം ചെയ്യാനുള്ള ഭാഗമായ മാത് ലൈബ്രറി (math library) 20 കെ.ബി. മാത്രമാണുണ്ടായിരുന്നത്.
മിക്ക ക്ലാസ് ലൈബ്രറികളും കൂടെ 375 കെ.ബി. മാത്രമായിരുന്നു ഉണ്ടായിരുന്നത്.
ചിത്രീകരണങ്ങൾക്കായി വ്യത്യസ്ത പ്ലാറ്റ്ഫോമുകൾക്കായുണ്ടായിരുന്ന ഭാഗങ്ങളും കൂടി ചേർത്താൽ ഒരു എം.ബി. അടുത്തായിരുന്നു ജാവയുടെ വലിപ്പം .
പ്രത്യേകതകൾ ബൈറ്റ്കോഡ്
സി, സി++ തുടങ്ങിയ ഭാഷകളെല്ലാം കം‌പൈൽ ചെയ്യുമ്പോൾ പ്രവർത്തനക്ഷമമായ (executable) കോഡാണ് ലഭിക്കുന്നത്.
എന്നാൽ ജാവ ഒരു ബൈറ്റ്കോഡ് ആണ് സൃഷ്ടിക്കുന്നത് .
ക്ലാസ് (ഉദാ: Hello.class) എന്നായിരിക്കും ഈ ബൈറ്റ്കോഡ് ഫയലിന്റെ എക്സ്റ്റെൻഷൻ.
ഈ ബൈറ്റ്കോഡ് പ്രവർത്തിപ്പിക്കണമെങ്കിൽ ഒരു വിർച്ച്വൽ മെഷീൻ അത്യന്താപേക്ഷമാണ്.
ജെ.വി.എം-നു മനസ്സിലാകത്തക്കവിധം അങ്ങെയറ്റം കൃത്യമാക്കി സൃഷ്ടിക്കുന്ന നിർദ്ദേശങ്ങളുടെ ഗണമാണ് ബൈറ്റ്കോഡ് .
പ്രോഗ്രാമിനെ പ്രവർത്തിപ്പിക്കുന്ന ബാദ്ധ്യത ബൈറ്റ്കോഡിനില്ല, പ്രവർത്തിപ്പിക്കുകയെന്നത് ജാവ വിർച്ച്വൽ മെഷീന്റെ ഉത്തരവാദിത്തമാണ്.
അതുകൊണ്ട് തന്നെ ബൈറ്റ്കോഡ് വളരെ ചെറുതും നെറ്റുവർക്കുകളിലൂടെ എളുപ്പം കൈമാറ്റം ചെയ്യാനാവുന്നതുമായിരിക്കും.
ജാവ സാങ്കേതിക വിദ്യയിൽ ജാവ പ്രോഗ്രാമിങ് ഭാഷ ഇഴുകിച്ചേർന്നിട്ടുള്ളതാണ്.
എന്നിരുന്നാലും മറ്റുഭാഷകൾ കമ്പൈൽ ചെയ്യുമ്പോൾ ജാവ ബൈറ്റ്കോഡ് സൃഷ്ടിക്കാനും അവ ജാവ വിർച്ച്വൽ മെഷീനുപയോഗിച്ചു പ്രവർത്തിപ്പിക്കാനുമുള്ള ശ്രമങ്ങൾ നടന്നിട്ടുണ്ട് .
അവയൊന്നും വേണ്ടത്ര പിന്തുണ നേടിയില്ല.
പൈത്തൺ ഭാഷ ഉപയോഗിച്ച് ജാവ ബൈറ്റ്കോഡ് സൃഷ്ടിക്കാനുള്ള ശ്രമമായ "ജൈത്തൺ" ആണ്‌ അക്കൂട്ടത്തിൽ കുറച്ചെങ്കിലും ശ്രദ്ധ നേടിയത്.
വിർച്ച്വൽ മെഷീൻ
ജാവയിൽ എഴുതിയ പ്രോഗ്രാമിനെ കമ്പ്യൂട്ടറുമായി ബന്ധപ്പെടുത്തുന്ന ഇടനില സോഫ്റ്റ്‌വെയറാണ് ജാവ വിർച്ച്വൽ മെഷീൻ .
ഒരു പ്രോഗ്രാമിനെ പ്രവർത്തിപ്പിക്കുവാൻ പറ്റിയ അന്തരീക്ഷം സൃഷ്ടിക്കുക എന്നതാണ് വിർച്ച്വൽ മെഷീന്റെ കടമ, ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റവുമായി സംവദിച്ച് യന്ത്രഭാഗങ്ങളെ അഥവാ കമ്പ്യൂട്ടർ ഹാർഡ്‌വെയറിനെ , പ്രവർത്തിച്ചു കൊണ്ടിരിക്കുന്ന പ്രോഗ്രാമിന്റെ ആവശ്യാനുസരണം ലഭ്യമാക്കുക, ഒരു കവചം പോലെ നിലനിന്നു കൊണ്ട് പ്രോഗ്രാം ഓപ്പറേറ്റിംഗ് സിസ്റ്റത്തിൽ അനാവശ്യ ഇടപെടലുകൾ നടത്താതെ നോക്കുക എന്നിങ്ങനെയുള്ള കാര്യങ്ങളാണ് വിർച്ച്വൽ മെഷീൻ ചെയ്യുന്നത്.
വിർച്ച്വൽ മെഷീൻ അധിഷ്ഠിതമായ പ്രോഗ്രാമിങ്ങ് ഭാഷകൾ സൃഷ്ടിക്കുന്നതിന്റെ ഉദ്ദേശ്യം ഏതു തരം ഹാർഡ്‌വെയറിലും, ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റത്തിലും പ്രവർത്തിക്കുന്ന പ്രോഗ്രാമുകൾ എഴുതുക എന്നുള്ളതാണ്.
ഇത്തരം പ്രോഗ്രാമുകൾ ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റത്തെയോ, ഹാർഡ്‌വെയറിനെയോ കാണുന്നില്ല കാരണം ഇവ വിർച്ച്വൽ മെഷീനുമായി മാത്രമേ ബന്ധപ്പെടുന്നുള്ളൂ.
ഓപ്പറേറ്റിങ്ങ് സിസ്റ്റവും ഹാർഡ്‌വെയറും മാറുന്നതിനനുസരിച്ച് പ്രോഗ്രാമുകൾ അപ്പോൾ മാറ്റിയെഴുതേണ്ടി വരില്ല, പകരം എല്ലാ സാഹചര്യങ്ങൾക്കും വേണ്ടിയുള്ള വിർച്ച്വൽ മെഷീനുകൾ ആദ്യം വികസിപ്പിക്കുകയാണ് ചെയ്യുന്നത്.
ബൈറ്റ്കോഡ് ഇക്കാരണം കൊണ്ട് വഹനീയം (portable) ആണെന്നു പറയുന്നു.
മെമ്മറിയിൽ പ്രോഗ്രാമർ നടത്തുന്ന അനാവശ്യ കൈകടത്തലുകളെ ജാവ വിർച്ച്വൽ മെഷീൻ അനുവദിക്കുന്നില്ല.
അതുകൊണ്ട് ജാവയിൽ വൈറസുകൾ എഴുതുക തീരെ എളുപ്പമല്ല.
ഓപ്പറേറ്റിങ് സിസ്റ്റത്തെ അമിതമായി സ്വാധീനിക്കാൻ വിർച്ച്വൽ മെഷീൻ അനുവദിക്കാത്തതിനാൽ ജാവ ഏറെ സുരക്ഷിതമായ പ്രോഗ്രാമിങ് ഭാഷയാണ്.
പ്രോഗ്രാമുകൾ പ്രവർത്തിപ്പിക്കാനായി 'ജാവ വിർച്ച്വൽ മെഷീൻ' പ്രോഗ്രാമിനെ പ്രവർത്തനക്ഷമമായി കമ്പൈൽ ചെയ്യുകയും പ്രവർത്തിപ്പിക്കുകയുമാണ് ചെയ്യുന്നത്.
ഇത് പ്രോഗ്രാം പ്രവർത്തിക്കുന്നത് മെല്ലെയാക്കുമെങ്കിലും ജാവയിൽ ഈ വൈകൽ തുലോം നിസ്സാരമാണ്.
ഒരു പ്രോഗ്രാം പ്രവർത്തിക്കുമ്പോൾ വേണ്ട പലതരത്തിലുള്ള പരിശോധനകൾ നടത്തുക, പ്രവർത്തിക്കാനുള്ള സ്ഥലം അനുവദിച്ചുകൊടുക്കുക തുടങ്ങി ഒട്ടനവധി കാര്യങ്ങൾ ചെയ്യണം‍, അതിന്റെ കൂടെ ബൈറ്റ്കോഡ് കമ്പൈൽ ചെയ്യുകയും പ്രോഗ്രാം പ്രവർത്തിപ്പിക്കുകയും ചെയ്യേണ്ടതുണ്ട്.
ഒരു വലിയ പ്രോഗ്രാമിൽ ഇതെല്ലാം ഒരുമിച്ചു ചെയ്യുക എന്നത് ഏറെ സമയമെടുക്കുന്ന ഒന്നാ‍ണ്.
അതുകൊണ്ട് സൺ ജെ.വി.എമ്മിൽ ബൈറ്റ്കോഡിനായി ജസ്റ്റ് ഇൻ റ്റൈം കമ്പൈലർ (Just In Time Compiler - JIT) എന്നൊരു കമ്പൈലർ ചേർത്തിരിക്കുന്നു.
ഒരു പ്രോഗ്രാം പ്രവർത്തിക്കുമ്പോൾ പ്രോഗ്രാമിന്റെ ഭാഗങ്ങളെ ആവശ്യമുള്ളപ്പോൾ മാത്രം കമ്പൈൽ ചെയ്തു പ്രവർത്തിപ്പിക്കുന്നതിനാണ് ജെ.ഐ.റ്റി.
ഉപയോഗിക്കുന്നത് .
ഇത് ഉപയോക്താക്കൾക്ക് യാതൊരുവിധ താമസവും അനുഭവപ്പെടാതെ തന്നെ പ്രോഗ്രാം പ്രവർത്തിക്കുന്നതിനു സഹായിക്കുന്നു.
ജാവ 2-ലാണ് ജെ.ഐ.റ്റി.
രംഗപ്രവേശം ചെയ്തത്.
ജാവ റൺറ്റൈം എൻ‌വിയറന്മെന്റ് അഥവാ ജെ.ആർ.ഇ.
എന്നും ജാവ സോഫ്റ്റ്‌വേർ എന്നും അറിയപ്പെടുന്ന സോഫ്റ്റ്‍വെയറിലാണ് വിർച്ച്വൽ മെഷീനുള്ളത്.
ജെ.ആർ.ഇ.
ആർക്കും സണ്ണിന്റെ സൈറ്റിൽ നിന്നും ശേഖരിക്കാനും പുനർവിതരണം ചെയ്യാനും കഴിയും.
ജാവയുടെ അതേ സിന്റാക്സ് ഉപയോഗിക്കുന്ന ജി.സി.ജെ. (GCJ - Gnu Compiler for Java) കമ്പൈലറിന്‌ ജാവ പ്രോഗ്രാമുകളെ ഒബ്ജക്റ്റ് കോഡ് അഥവാ കമ്പ്യൂട്ടറുമായി സംവദിക്കാൻ പ്രാപ്തമായ കോഡായും ബൈറ്റ്കോഡ് ആയും കം‌പൈൽ ചെയ്യാൻ കഴിയും .
ജി.സി.ജെ ഉപയോഗിച്ച് ഒബ്ജക്റ്റ്കോഡ് ആണ്‌ സൃഷ്ടിക്കുന്നതെങ്കിൽ വിർച്ച്വൽ മെഷീന്റെ ആവശ്യമില്ല.
പക്ഷേ ഇങ്ങനെ ചെയ്യുമ്പോൾ ജാവപ്രോഗ്രാമുകളുടെ വഹനീയത(portability) എന്ന ഗുണം നഷ്ടപ്പെടുന്നു.
പ്രോഗ്രാമിങ്
ക്ലൈന്റ് കമ്പ്യൂട്ടറുകളിൽ ബ്രൗസറുകളിൽ പ്രവർത്തിക്കുന്ന ജാവ പ്രോഗ്രാമിനെ ആപ്‌ലറ്റ് എന്നു വിളിക്കുന്നു.
സ്വതന്ത്രമായി പ്രവർത്തിക്കുന്ന പ്രോഗ്രാമുകളെ ആപ്ലിക്കേഷൻ എന്ന് വിളിക്കുന്നു.
സി.പി/ഐ.
പി. അനുസരിച്ച് ആപ്‌ലറ്റുകളും, ആപ്ലിക്കേഷനുകളും എല്ലാം സമഞ്ജസമായി ഒരുമിപ്പിച്ച് ഒരു നെറ്റ്വർക്കിൽ പടർന്നു കിടക്കുന്ന പ്രോഗ്രാമെഴുതാനും ജാവ ഉപയോഗിക്കുന്നു.
പ്രോഗ്രാമിങ് ഭാഷയുടെ ആവശ്യമുള്ള ഭാഗങ്ങൾ മാത്രമേ ഒരു പ്രത്യേക പ്രോഗ്രാമിലുണ്ടാകൂ.
ഇത് പ്രോഗ്രാം വളരെ ചെറുതായിരിക്കാൻ സഹായിക്കുന്നു.
ഉദാഹരണത്തിന് ഒരു ജാവ ആപ്ലിക്കേഷനിൽ ആപ്‌ലറ്റിന്റെ അംശം ഉണ്ടായിരിക്കില്ല.
പാക്കേജുകൾ എന്നറിയപ്പെടുന്ന ജാവയുടെ പ്രോഗ്രാമിങ് ഭാഷാശകലങ്ങൾ ആവശ്യാനുസരണം ചേർത്താണിത് സാധ്യമാക്കുന്നത്.
ഇരുനൂറിലധികം എ.പി.ഐകൾ ജാവ സ്റ്റാൻഡേർഡ് എഡിഷനിൽ ലഭ്യമാണ്.
ഒരു പ്രോഗ്രാമറെ സംബന്ധിച്ച് ഇത് പ്രോഗ്രാമിങ് കൂടുതൽ എളുപ്പമാക്കാനും പ്രോഗ്രാമിന്റെ ഘടന പുനരുപയോഗത്തിനായി ആർക്കും മനസ്സിലാകുന്നതരത്തിൽ എഴുതാനും കാരണമാകുന്നു.
വെബ് പ്രോഗ്രാമിങ്ങിനായി ജാവയെ ഉപജീവിച്ച് സൃഷ്ടിച്ചിട്ടുള്ള കമ്പ്യൂട്ടർ ഭാഷയാണ് ജെ.എസ്.പി. .
ജാവയുടെ നിർമ്മാണത്തിൽ സൃഷ്ടിച്ചിട്ടുള്ള പ്രത്യേകതകൾകൊണ്ട് ആർക്കും അനുബന്ധങ്ങൾ അഥവാ മറ്റ് എ.പി.ഐ.കൾ ഉണ്ടാക്കാനും അവയുടെ സഹായത്തോടെ പ്രോഗ്രാമിങ് കൂടുതൽ എളുപ്പമാക്കാനും കഴിയും.
ജാവമെയിൽ (ഇ-മെയിലുകളുടെ കൈകാര്യത്തിനായുള്ള എ.പി.ഐ.), സ്റ്റ്രറ്റ്സ് , ജെ.എസ്.എഫ്. (രണ്ടും വെബ് പ്രോഗ്രാമിങ്ങിനായുള്ള ഫ്രെയിം‌വർക്കുകൾ ) തുടങ്ങിയവ ഇത്തരത്തിലുള്ള അനുബന്ധങ്ങൾക്കുദാഹരണമാണ്.
ജാവാമെയിൽ , ജാവ 3ഡി, ജാവ സെർവ്‌ലറ്റ്സ് , ജാവ മീഡിയ, ജാവ ക്രിപ്റ്റോഗ്രാഫി എന്നിങ്ങനെ ഒരു പിടി അനുബന്ധങ്ങൾ ഔദ്യോഗികമായി ലഭ്യമാണ്.
ഉപയോഗത്തിനനുസരിച്ച് വ്യത്യസ്ത ക്രമീകരണങ്ങൾ അനുവദിക്കുന്ന സോഫ്റ്റ്‍വെയറുകൾ ഔദ്യോഗികമായി തന്നെ സൺ നിർമ്മിച്ചിട്ടുണ്ട്.
എന്റർപ്രൈസ് ആപ്ലിക്കേഷനുകൾക്കായി ജാവ ഇ.
(Java EE - Java Enterprise Edition), മൊബൈൽ ആപ്ലിക്കേഷനുകൾക്കായി ജാവ എം.ഇ.
(Java ME-Java Mobile Edition) എന്നിങ്ങനെ; മാനക പതിപ്പിനെ ജാവ എസ്.ഇ.
(Java SE-Java Standard Edition) എന്നുവിളിക്കുന്നു.
ജാവ എസ്.ഇ.
, ജെ.ഡി.കെ. ആയി ലഭ്യമാകുന്നു.
ജെ.ഡി.കെ.യിൽ ജാവ കമ്പൈലർ, ഡീബഗ്ഗർ, ജാവാഡോക്, ജാർ ഫയൽ നിർമ്മാണത്തിനുള്ള സോഫ്റ്റ്‌വേർ തുടങ്ങി 23 ഉപകരണങ്ങൾ ഉൾക്കൊള്ളിച്ചിരിക്കുന്നു എഴുത്തു രീതി
ജാവയുടെ എഴുത്തു രീതി സി പ്ലസ് പ്ലസ്സിൽ നിന്നും രൂപപ്പെടുത്തിയിട്ടുള്ളതാണ്‌.
എങ്കിലും, സി പ്ലസ് പ്ലസിൽ നിന്നും വ്യത്യസ്തമായി, ജാവ, വസ്തുതാ അധിഷ്ഠിത പ്രോഗ്രാമുകൾക്കു (Object Oriented Programs) മാത്രമായാണ്‌ രൂപപ്പെടുത്തിയിരിക്കുന്നത്.
താഴെ ജാവയിൽ ഉള്ള ഒരു ഹലോ വേൾഡ് പ്രോഗ്രാം കൊടുത്തിരിക്കുന്നു.
കമാൻഡ് ലൈനിൽ “Hello, World!
" എന്നു പ്രിന്റ് ചെയ്യുകയാണ് ഈ പ്രോഗ്രാം ചെയ്യുക. Hello.java പ്രോഗ്രാമിന്റെ ഔട്ട്പുട്ട് // Hello.java public class Hello { public static void main ( String [] args ) { System . out . println ( "Hello, World!" ); } }
ജി.യു.ഐ. സൃഷ്ടിക്കാനും ജാവ ഉപയോഗിച്ചു സാധിക്കും.
HelloWorld.java പ്രോഗ്രാമിന്റെ ഔട്ട്പുട്ട് import javax.swing.
* ; //HelloWorld.java public class HelloWorld { public static void main ( String [] args ) { JFrame frame = new JFrame ( "ലോകമേ വന്ദനം" ); JLabel label = new JLabel ( "Hello World!" , JLabel . CENTER ); frame .
add ( label ); frame .
setSize ( 300 , 300 ); frame .
setVisible ( true ); } } ജാവ പ്ലാറ്റ്ഫോമുകൾ
ജാവയിൽ പ്രോഗ്രാമുകൾ നിർമ്മിക്കാനായും അവ സുസജ്ജമായ രീതിയിൽ വിവിധ ഉപകരണങ്ങളിൽ വിന്യസിക്കാനും ഒരു പ്രോഗ്രാമർക്ക് തിരഞ്ഞെടുക്കാൻ പാകത്തിൽ സൺ മൂന്നു മണ്ഡലങ്ങൾ അഥവാ പ്ലാറ്റ്ഫോമുകൾ ഔദ്യോഗികമായി സജ്ജീകരിച്ചിട്ടുണ്ട്.
ജാവ എസ്.ഇ, ജാവ ഇ.
ഇ, ജാവ എം.ഇ.
ജാവ 2, 1.4 -നു ശേഷം കമ്യൂണിറ്റി പ്രോസസ് വിളിക്കപ്പെടുന്ന പ്രവർത്തനത്തിലൂടെയാണ് പ്ലാറ്റ്ഫോമുകൾ പുറത്തിറങ്ങുന്നത്.
പൊതു ഉപയോഗത്തിനുള്ള സോഫ്റ്റ്‍വെയറുകൾ നിർമ്മിക്കാൻ സാധാരണ ഉപയോഗിക്കുന്ന പ്ലാറ്റ്ഫോമാണ് ജാവ എസ്.ഇ.
(Java SE - Java Platform, Standard Edition).
യിൽ ജെ.വി.എം., പ്രോഗ്രാമിങ്ങിനായുള്ള ശേഖരം (ലൈബ്രറി അഥവാ പാക്കേജ്) തുടങ്ങിയവ ഉൾക്കൊള്ളുന്നു.
ജാവയുടെ മാനകപതിപ്പാണ് ജാവ എസ്.ഇ.
ജാവയുടെ പുതിയ വേർഷൻ നിശ്ചയിക്കപ്പെടുന്നത് ജാവ എസ്.ഇ.
പുറത്തിറങ്ങുന്നതോടെയാണ്.
‘ജാവ 5‘ വരെ ഇത് ജെ2എസ്.
ഇ (J2SE) എന്നാണ് ജാവ എസ്.ഇ.
അറിയപ്പെട്ടിരുന്നത്.
ജാവ ഇ.
ജാവ പ്രോഗ്രാമിങ് ഭാഷ ഉപയോഗിച്ചുള്ള സെർവർ സൈഡ് പ്രോഗ്രാമിങ്ങിനായി സൃഷ്ടിച്ചിട്ടുള്ള പ്ലാറ്റ്ഫോമാണ് ജാവ ഇ.
അഥവാ ജാവ എന്റർപ്രൈസ് എഡിഷൻ (Java EE - Java Platform, Enterprise Edition), വിവിധ കമ്പ്യൂട്ടറുകളിലേക്കായി വിന്യസിക്കാൻ പ്രാപ്തമായ രീതിയിൽ പ്രോഗ്രാമുകളെ ഒരുക്കാനുള്ള കഴിവ് ഈ മണ്ഡലത്തിൽ ഉൾക്കൊള്ളിച്ചിരിക്കുന്നു.
യെ അതിന്റെ മാനദണ്ഡങ്ങൾക്കനുസരിച്ചുമാത്രമേ ഉപയോഗിക്കാൻ കഴിയുകയുള്ളു.
അതുകൊണ്ട് തന്നെ ജാവ കമ്മ്യൂണിറ്റി പ്രോസസ് നിർദ്ദേശിച്ചിട്ടുള്ള മാർഗ്ഗരേഖകൾ പ്രകാരം നിർമ്മിച്ച ജാവ ഇ.
ആപ്ലിക്കേഷൻ മാത്രമേ അതിനു യോജ്യമായി കണക്കാക്കാറുള്ളു.
യിലുള്ള എ.പി.ഐ.കൾക്കു പുറമേ സെർവ്‌ലറ്റ് , എന്റർപ്രൈസ് ജാവാബീൻ തുടങ്ങി ഒരു കൂട്ടം എ.പി.ഐകൾ ജാവ ഇ.
യിൽ കൂടുതലായി ഉണ്ട്.
ജാവ 5-നു മുമ്പ് ജാവ ഇ.
, ജെ2ഇ.
ഇ (J2EE) എന്നറിയപ്പെട്ടു വന്നു.
ജാവ എം.ഇ.
പ്രവർത്തനശേഷികുറഞ്ഞ ഉപകരണങ്ങൾക്കായുള്ള ജാവയുടെ ഒരു ഉപഗണമാണ് ജാവ എം.ഇ.
(Java ME - Java Platform, Micro Edition).
മറ്റ് പ്ലാറ്റ്ഫോമുകളിൽ നിന്നും ജാവ എം.ഇ.
യ്ക്കുള്ള പ്രധാനവ്യത്യാസം ജാവ എം.ഇ.
പ്രോഗ്രാമുകൾ പ്രവർത്തിക്കാനാവശ്യമായ റൺ‌റ്റൈം എൻ‌വയേണ്മെന്റ് സൗജന്യമായി സൺ നൽകുന്നില്ല എന്നതാണ്.
ഇന്ന് റഫ്രിജറേറ്റർ, അലക്കുയന്ത്രം, മൊബൈൽ ഫോൺ തുടങ്ങി ഒട്ടനവധി നിത്യോപയോഗ ഉപകരണങ്ങളിൽ ജാവ.
ഉപയോഗിക്കുന്നു. 'ജാവ 5' പുറത്തിറങ്ങുന്നതിനുമുമ്പ് ജാവ എം.ഇ.
യും ജെ2എം.
(J2ME) എന്നാണ് അറിയപ്പെട്ടിരുന്നത്.
ജാവയെ നിർവ്വചിച്ചവർ ജാവയുടെ ഗുണങ്ങൾ എന്തൊക്കെയാണെന്ന് വ്യക്തമായി പറഞ്ഞിട്ടുണ്ട് :-
ലളിതം : ഒരു നല്ലപ്രോഗ്രാമർക്ക് ജാവയിലെഴുതിയ പ്രോഗ്രാം എന്താണെന്ന് പെട്ടെന്നു മനസ്സിലാക്കാൻ കഴിയും.
ജാവയിൽ പരിചയമില്ലെങ്കിൽ തന്നെയും സി, സി++ തുടങ്ങിയ പ്രോഗ്രാമിങ് ഭാഷകൾ ഏതെങ്കിലും വശമുള്ളയാളാണെങ്കിൽ ജാവയുടെ കോഡിങ് രീതി അപ്രാപ്യമായിരിക്കില്ല.
ഒബ്ജക്റ്റ് ഓറിയന്റഡ് : ജാവ പോഗ്രാമുകൾ പൂർണ്ണമായും ഒബ്ജക്റ്റ് ഓറിയന്റഡാണ്.
ഇത് പ്രോഗ്രാമുകൾ ലളിതമാകാനും പുനരുപയോഗത്തിനു സഹായകരമാകാനും തെറ്റുകൾ കണ്ടെത്താനും സഹായിക്കുന്നു.
എന്നാൽ സി++ൽ ഉണ്ടായിരുന്നതു പോലെ മൾട്ടിപ്പിൾ ഇൻ‌ഹെറിറ്റൻസ് ജാവയിൽ നേരിട്ട് അനുവദിക്കുന്നില്ല.
അത് പ്രോഗ്രാം കൂടുതൽ സങ്കീർണ്ണമാകാതിരിക്കാൻ സഹായിക്കുന്നു.
ചിതറിക്കിടക്കുന്നത് (Distributed) : റ്റി.
സി.പി./ഐ.
പി. ഉപയോഗിച്ച് ഒരു നെറ്റ്‌വർക്കിനാവശ്യമുള്ള പ്രോഗ്രാമുകൾ എഴുതാൻ ജാവ ഉപയോഗിച്ചു കഴിയും.
അതിനായുള്ള വിപുലമായ ശേഖരങ്ങൾ ജാവയിൽ ഇണക്കിച്ചേർത്തിരിക്കുന്നു.
ജാവ ആപ്ലിക്കേഷനുകൾക്ക് യൂ.ആർ.എല്ലുകൾ ഉപയോഗിച്ച് ഫയൽ സിസ്റ്റങ്ങളെ സമീപിക്കാൻ കഴിയും.
അബദ്ധരഹിതം (Robust) : പ്രോഗ്രാമുകളിലെ തെറ്റുകുറ്റങ്ങൾ എപ്രകാരമെല്ലാം കുറയ്ക്കാമോ ആ വഴികളെല്ലാം ജാവയിൽ ചേർത്തിട്ടുണ്ട്.
ഉണ്ടാകാനിടയുള്ള തെറ്റുകളെ മുമ്പേ തിരിച്ചറിയാനും അവയെ ഒഴിവാക്കാനുമുള്ള വഴികൾ ജാവയിലുണ്ട്.
മെമ്മറിയുടെ കൈകാര്യം മുമ്പൊക്കെ പ്രോഗ്രാമറുടെ മുന്നിലെ കീറാമുട്ടികളായിരുന്നുവെങ്കിൽ ജാവ അതു സ്വയം കൈകാര്യം ചെയ്യുന്നതിനാൽ ഉപയോഗം ഏറെ ഏളുപ്പമാക്കുന്നു.
ഉപയോഗിച്ചശേഷം പ്രയോജനരഹിതമാകുന്ന മെമ്മറിയെ പുനരുപയോഗിക്കാൻ ഓട്ടോമാറ്റിക് ഗാർബേജ് കളക്ഷൻ എന്ന വിദ്യ ജാവ ഉപയോഗിക്കുന്നു.
കമ്പൈൽ ചെയ്യുമ്പോഴും പ്രവർത്തിപ്പിക്കുമ്പോഴും ജാവ കോഡിങ് പരിശോധിക്കുന്നുണ്ട്.
ഇത് പ്രോഗ്രാമറുടെ കണ്ണിൽ പെടാതെ പോകുന്ന തെറ്റുകളെ തിരിച്ചറിയാൻ സഹായകമാകുന്നു.
വ്യത്യസ്തമായ സാഹചര്യങ്ങളിൽ ഒരേ ജാവ പ്രോഗ്രാം എപ്രകാരമൊക്കെ പ്രവർത്തിക്കാനിടയുണ്ടെന്നു മുൻ‌കൂട്ടി പറയാൻ കഴിയും.
പ്രവർത്തന സമയത്തുണ്ടാകാവുന്ന ഒഴിവാക്കേണ്ട പ്രശ്നങ്ങൾ അഥവാ എക്സെപ്ഷനുകൾ (Exceptions- ഉദാ:പൂജ്യം കൊണ്ട് ഹരിക്കുക) തികച്ചും ഒബ്ജക്റ്റ് ഓറിയന്റഡ് രീതിയിൽ കൈകാര്യം ചെയ്യാൻ ഈ പ്രോഗ്രാമിങ് ഭാഷയിൽ കഴിയും.