கேள்வி: ஜாவா (நிரலாக்க மொழி) - தொடக்ககால வரலாறு குறித்து விரிவாக சொல்லுங்கள்.
பதில்: File:Duke (Java mascot) waving.svg ஜாவா நிரலாக்க மொழி, ஜாவா இயங்குசூழல் ஆகியவை சன் மைக்ரோசிஸ்டம்ஸ் நிறுவனத்தின் உட்புற செயற்றிட்டங்களாக மார்கழி 1990 இல் தொடங்கப்பட்டன. பசுமைத் திட்டம் (Green Project) என்ற பெயரில் கலிபோர்னியாவின் மென்லோ பார்க் நகரில் தொடங்கிய இத்திட்டத்தில் ஜேம்ஸ் காஸ்லிங், பாட்ரிக் நோட்டன், மைக் ஷெரிடன் ஆகியோர் முக்கியப் பங்கு வகித்தனர். அடுத்த தலைமுறை (next generation) வீட்டுப் பாவனைக்குரிய இலத்திரனியல் உபகரணங்களுக்கான தொழில்நுட்பத்தை வடிவமைப்பதே இவர்களுடையதும் சன் நிறுவனத்தினதுமான அப்போதைய குறிக்கோளாக இருந்தது. இப்பணிக்காக இவர்கள் முதலில் சி++ மொழியைப் பாவிப்பதற்கு எண்ணியிருந்த போதிலும், பின் பலவித காரணங்களால் அது நிராகரிக்கப்பட்டது. அவர்கள் வளங்கள் வரையறுக்கப்பட்டதொரு உள்ளமைப்பு இயந்திரம் (embedded system) ஐ உருவாக்க நினைத்திருந்தனர். சி++ மொழியானது ஏற்படுத்தும் நினைவகக் கால்தடங்கள் (memory footprints) இவ்வாறான இலத்திரனியல் உபகரணங்களுக்குத் தேவைக்கதிகமாகப் பெரிதானதாக இருப்பதும், சி++ மொழிக்கே உரியதான கடினத்தன்மை மென்பொருட் பிழைகள் ஏற்படக் காரணமாக இருக்கும் என்பதும் இம்மொழி நிராகரிக்கப்பட முக்கியக் காரணங்களாக இருந்தது. அத்துடன் சி++ மொழியானது நினைவகச் சுத்திகரிப்பு (garbage collection அல்லது GC) வசதிகளைக் கொண்டிருக்கவில்லை. இதனால் மென்பொருளாளர் தாங்களே நினைவகச் சுத்திகரிப்பை ஆற்றவேண்டியிருந்தது. இது மிகக் கடினமானதும் தவறுகள் அதிகமாக எற்பட வாய்ப்புள்ளதுமான ஒரு பணியாகும். மேலும் சி++ மொழியானது மேம்படுத்தப்பட்ட பாதுகாப்பு, பரவலாக்கப்பட்ட நிரலாக்கம் (distributed programming), இயக்க இழை (threading) போன்ற வசதிகளைக் கொண்டிருக்காதது மட்டுமின்றி பல்வேறுபட்ட கருவிகளில் உபயோகிக்கத்தக்கவாறு இயங்குதள சார்பின்மை (platform independence) கொண்டிருக்கவில்லை. :1995 இல் சன் மைக்ரோசிஸ்டம்ஸ் ஜாவா 1.0 ஐ வெளியிட்டது. இது பிரபலமான தளங்களினைப் போலவே "ஒருமுறை எழுதி, எங்கு வேண்டுமானாலும் இயக்கலாம்" உறுதியளித்தார். மிகவும் பாதுகாப்பான இணைய, கோப்பு ஆகிய அணுகல் கட்டுப்பாடுகளை அனுமதித்தது. ஜாவா விரைவில் பிரபலமான பின்னர் முக்கிய இணைய உலாவிகளில் வலை பக்கங்களில் உள்ள ஜாவா ஆப்லேட்ஸ்-ஐ இயக்கும் திறன் இணைக்கப்பட்டது. :1998 டிசம்பர் இல் ஜாவா 2 வெளியீட்டிற்கு பின் J2EE நிறுவன பயன்பாடுகளும் மொபைல் பயன்பாடுகளும் (மொபைல் ஜாவா) பெரிய அளவில் இழந்து கீழே பதிப்பு J2ME இலக்கு. J2SE ஸ்டாண்டர்ட் பதிப்பு நியமிக்கப்பட்ட. 2006 இல், சந்தைப்படுத்தல் நோக்கங்களுக்காக சன், ஜாவா EE, ஜாவா ME, மற்றும் ஜாவா SE புதிய J2 பதிப்புகள் அறிமுகப்படுத்தப்பட்டது. :2006, நவம்பர் 13, அன்று, சன் குனு பொது மக்கள் உரிமத்தின் (GPL) கீழ், இலவச மற்றும் திறந்த மூல மென்பொருலாக ஜாவாவின் பெரும்பகுதி வெளியிடப்பட்டது. :2007, மே 8 அன்று, சன் இதை முழுமையான இலவச திறந்த மூல மென்பொருளாக நிபந்தனைகளின் கீழ் விநியோகம் செய்யப்படுகிறது. :2010 முதல் ஒவ்வொரு ஆண்டும் 930 மில்லியன் ஜாவா நிகழ்நேர சூழல் மற்றும் 3 பில்லியன் மொபைல் தொலைபேசிகளில் ஜாவா பதிவிறக்கம் செய்யப்பட்டன.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - கொள்கைகள் பற்றி விளக்கவும்.
பதில்: ஜாவா மொழியை உருவாக்குவதில் ஐந்து முதன்மை இலக்குகள் இருந்தன. # இஃது எளிமையானதாகவும், பொருள் நோக்கு நிரலாக்கம், பழக்கமானதாகவும் இருக்க வேண்டும். # இது வலுவானதாகவும் பாதுகாப்பாகவும் இருக்க வேண்டும். # இது கட்டமைப்பு-நடுநிலையாகவும் கையடக்கமாகவும் இருக்க வேண்டும். # இஃது உயர் செயல்திறனுடன் செயலாற்ற வேண்டும். # இது விளக்கப்பட்டும், திரிக்கப்பட்டும், செயல் விரைந்தும் இருக்க வேண்டும்.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - பதிப்புகள் பற்றி தகவல் சொல்.
பதில்: ஜாவாவின் முதன்மை வெளியீட்டுப்பதிப்புகளும், அவற்றின் வெளியீட்டு நாளும்: {| class="wikitable" |- ! பதிப்புகள் !! வெளி வந்த நாள் |- | JDK 1.0 || சனவரி 23, 1996 |- | JDK 1.1 || பெப்ரவரி 19, 1997 |- | J2SE 1.2 || திசெம்பர் 8, 1998 |- | J2SE 1.3 || மே 8, 2000 |- | J2SE 1.4 || பெப்ரவரி 6, 2002 |- | J2SE 5.0 || செப்டம்பர் 30, 2004 |- | ஜாவா SE 6 || திசெம்பர் 11, 2006 |- | ஜாவா SE 7 || சூலை 28, 2011 |- |ஜாவா SE 8 (LTS) |மார்ச் 18, 2014 |- |ஜாவா SE 9 |செப்டம்பர் 21, 2017 |- |ஜாவா SE 10 |மார்ச் 20, 2018 |- |ஜாவா SE 11 (LTS) |செப்டம்பர் 25, 2018 |- |ஜாவா SE 12 |மார்ச் 19, 2019 |- |ஜாவா SE 13 |செப்டம்பர் 17, 2019 |- |ஜாவா SE 14 |மார்ச் 17, 2020 |- |ஜாவா SE 15 |செப்டம்பர் 15, 2020 |- |ஜாவா SE 16 |மார்ச் 16, 2021 |- |ஜாவா SE 17 (LTS) |செப்டம்பர் 14, 2021 |- |ஜாவா SE 18 |மார்ச் 2022 |}
கேள்வி: ஜாவா (நிரலாக்க மொழி) - ஜாவாவின் சிறப்பம்சங்கள் பற்றி விளக்கவும்.
பதில்: * எளிமையானது * பலமானது * பாதுகாப்பானது * இயங்குதள சார்பின்மை * எளிதில் ஓர் இயங்குதளத்திலிருந்து மற்றொன்றிற்கு மாற்றலாம் அனைத்து இயந்திரங்களும் புரிந்து கொள்ளக்கூடியது 0, 1 ஆகியவை மட்டுமேயாகும். ஜாவா நிரல், நிரல் எழுதப்பட்ட இயந்திரத்திலேயே 0, 1 ஐ மட்டுமே கொண்ட கோப்புகளாகச் சேமிக்கப்படுகிறது. இதன் மூலம்தான் ஜாவா நிரலாக்க மொழி இயங்குதள சார்பின்மையை அடைகிறது.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - தளம் சாரத்தன்மை பற்றி விளக்கவும்.
பதில்: படிமம்:James Gosling 2008.jpg]] ஜாவாவின் மிக முக்கியமான பண்பு தளம் சாராத்தன்மை (Platform Independent) ஆகும். C, C++ போன்ற கணினி நிரலாக்க மொழிகளைத் தொகுக்கும்போது (compile) அவை குறிப்பட்ட தொகுக்கும் இயந்திரத்தின் தன்மைக்கேற்ப அமையும். ஆனால் ஜாவா தொகுக்கப்படும்போது அவை தளம்சாரா எண்ணுன்மி குறியீடு (platform independent byte code) எனப்படும் தளம் சாரா அமைப்பை உருவாக்கும். இந்த பைட் குறியீடானது ஜாவா மெய்நிகர் பொறி (JVM) எனப்படும் ஜாவா மெய்நிகர் இயந்திரத்தால் பல்வேறு தளங்களில் விளக்கப்படுகின்றன.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - ஜாவா மெய்நிகர் இயந்திரம் பற்றி தகவல் சொல்.
பதில்: ஜாவா அமைப்பில் ஜாவா மெய்நிகர் இயந்திரம் [(Java Virtual Machine (JVM)] மிக முக்கியப் பங்கு வகிக்கின்றது. இதில் ஜாவா நிரல்களை இயக்கும் சூழல் உள்ளது. ஜாவா மெய்நிகர் இயந்திரமானது ஒரு மென்பொருளாகும். இவை வன்பொருள் (Hardware) மற்றும் இயக்கு தளம் (Operating System) ஆகியவற்றின் மீது செயல்படுத்தப்படும். ஜாவா மூலக் குறியீடு (source code) அதாவது .java கோப்பானது செயல்படுத்தப்படும் போது இவை எண்ணுன்மி குறியீடுகளாக (Byte Codes) மாற்றப்பட்டு பின் .class கோப்பிற்குள் வைக்கப்படும். இந்த பைட் குறியீடுகளானது பின் ஜாவா மெய்நிகர் இயந்திரத்தால் செயல்படுத்தப்படுகின்றன. ஆகவே இந்த பைட் குறியீடுகளானது ஜாவா மெய்நிகர் இயந்திரத்தின் எந்திர மொழி (Machine Language) எனப்படுகின்றது.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - பொருள் சார்ந்த நிரலாக்கம் என்பது என்ன?
பதில்: ஜாவா ஓர் பொருள் சார்ந்த நிரலாக்க மொழியாகும் (Object Oriented Programming). இவை பின்வரும் தனிச் சிறப்புகளைக் கொண்டுள்ளன.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - எளிமையானது என்பது என்ன?
பதில்: ஜாவா கற்பதற்கு ஏற்ற மிக எளிமையானது. இவை புரிந்துகொள்ள எளிமையான வடிவமைப்பை பெற்றுள்ளன. C, C++ இல் உள்ள குழப்பமான மற்றும் தெளிவற்ற கருத்துக்கள் நீக்கப்பட்டு அல்லது மறு வடிவமைக்கப்பட்டு இவை செயல்படுத்தப்படுகிறது.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - பல்புரியாக்கம் பற்றி நீங்கள் என்ன அறிந்துள்ளீர்கள்?
பதில்: பல்புரியாக்கம் (Multithreading). இப்பண்பினால் ஜாவா இரண்டு அல்லது அதற்கு மேற்பட்ட பணிகளை ஒரே நேரத்தில் செய்ய இயலும். பல்புரியாக்கத்தின் முக்கிய பயன்பாடானது ஒரே நினைவகம் மற்றும் பல ஆதாரங்கறு பணிகளுக்காக பயன்படுத்துவது. எடுத்துகாட்டாக தட்டச்சு செய்யும் போது, இலக்கண பிழைகளை சேர்ந்து பரிசோதித்தல் போன்ற வசதிகளை பல்புரியாகம் மூலம் செயல்படுத்தமுடியும்.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - பெயர்வுத் திறன் குறித்து விரிவாக சொல்லுங்கள்.
பதில்: ஜாவாவின் எண்ணுன்மி குறியீடுகளானது அணைத்து தளங்களிலும் செயல்படக்கூடியவை. இவை இயந்திரத்தின் அம்சங்களை சார்ந்து செயல்படுதப்படுவதில்லை.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - செயல் திறன்மிக்கது பற்றி நீங்கள் என்ன அறிந்துள்ளீர்கள்?
பதில்: ஜாவா விளக்கத்தன்மையுடையது. இது C, C++ போன்ற நிரலாக்க மொழிகளைக் காட்டிலும் மேலானது.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - பகிர்வுதன்மை என்பது என்ன?
பதில்: ஜாவா HTTP மற்றும் FTP போன்ற TCP/IP நெறிமுறைகளில் (Protocol) மேம்பட்ட நடைமுறைகளை, பகிர்வுதன்மையைக் (JAVA IS DISTRIBUTED) கொண்டுள்ளது. ஆகவே வலையமைப்பிலுள்ள URL மூலமாக பொருட்களை (objects) அணுக முடியும்.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - தொடரியல் குறித்து விரிவாக சொல்லுங்கள்.
பதில்: File:JavaUniverse.png சி++, சி (நிரலாக்க மொழி) ஆகியவற்றின் பேரளவு இயக்க விளைவால் அமைந்துள்ளது ஜாவாவின் தொடரியல். சி++ ஐ ஒத்திராமல் கட்டமைப்பதற்கும், பொதுப்படையாக்குவதற்கும், பொருள் நோக்கு நிரலாக்குவதற்கும் இதன் தொடரியல் ஒருங்கிணைந்துள்ளது. ஜாவா ஒரு பொருள் நோக்கு மொழியாகவே உருவாக்கப்பட்டது. அனைத்து நிரற்தொடர்களும் வகுப்புகளுக்குள் எழுதுப்பட்டுள்ளன மேலும் ஒவ்வொரு தரவு உருப்படியும் ஒரு பொருளாகும். முழுவெண்கள், மிதவைப்புள்ளி எண்கள், பூலியன் மதிப்புகள், எழுத்துகள் ஆகிய தொடக்கநிலை தரவு வகைகள் செயற்திறன் காரணங்களால் பொதுநிலைமீறி பொருள்களாக அல்லாமல் அமைந்துள்ளன. ஐாவா சி++ இன் printf போன்ற புகழ்பெற்ற செயற்முறைகளை மீண்டும் பயன்படுத்துகிறது.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - அகிலத்திற்கு வணக்க நரலின் எடுத்துக்காட்டு பற்றி தகவல் சொல்.
பதில்: ஜாவாவில் மரபார்ந்த அகிலத்துக்கு வணக்கம் (நிரல்) இவ்வாறென எழுதலாம்: public class HelloWorldApp { public static void main(String[] args) { System.out.println("Hello World!"); // முனையத்தில் உரையை அச்சிடுகிறது. } }
கேள்வி: ஜாவா (நிரலாக்க மொழி) - ஜாவா இயங்குதளம் பற்றி நீங்கள் என்ன அறிந்துள்ளீர்கள்?
பதில்: ஜாவா மொழியில் எழுதப்பட்ட கணினி திரல்கள் எந்த வன்பொருள்/இயக்கதளத்திலும் ஒரே மாதிரி இயங்கும் பண்பு உடையது.குறிப்பிட்ட இயந்திரம் நேரடியாக ஜாவா பைட்குறியீட்டை புரிந்துகொள்ள ஒரு இடைநிலை பிரதிநிதித்துவம் வேண்டும்.ஜாவா பைட்குறியீட்டு நிரல்கள் இயந்திர குறியீடு முறையில் இருக்கும்,இதை வழங்கும் வன்பொருளுக்கு குறிப்பாக எழுதப்பட்ட ஒரு மெய்நிகர் இயந்திரம் (VM) மூலம் புரியவைக்கலாம். இறுதி பயனர்கள் பொதுவாக ஜாவா நிகழ்நேர சூழல் (JRE) முழுமையான ஜாவா பயன்பாடுகளை தங்கள் சொந்த கணினியில் நிறுவியோ அல்லது வலை உலாவியில் ஜாவா ஆப்லேட்ஸாக பயன்படுத்தப்படுகிறது.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - செயலாக்கங்கள் பற்றி நீங்கள் என்ன அறிந்துள்ளீர்கள்?
பதில்: ஜனவரி 27, 2010 இல் சன் மைக்ரோசிஸ்டமிடம் ஜாவா SE இயக்குதளத்தை உத்தியோகபூர்வமாக மேம்படுத்த ஆரக்கிள் நிறுவனம் உரிமம் பெற்றது. இதை தொடர்ந்து மாக் X, விண்டோஸ் மற்றும் சோலாரிஸ் இயங்குதளங்களுக்கான ஆரக்கிள் வெளியிடப்பட்டது.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - செயல்திறன் பற்றி விளக்கவும்.
பதில்: ஜாவாவில் எழுதப்பட்ட நிரல்கள் சி++ ஐ விட மெதுவாகவும்,அதிக இடம் தேவை படுவதாகவும் இருப்பினும் 1997/1998ல் ஜாவா 1.1 ன் ஒரேநேர தொகுப்பு அறிமுகத்தின் பின் ஜாவா நிரல்களின் செயல்படுத்தும் வேகம் குறிப்பிடத்தக்க முன்னேற்றம் அடைந்தது. டிசம்பர் 2012 நிலவரப்படி ஜாவா7 சி++ ஐ விட சுமார் 44% மெதுவானதாக தெரிந்தது.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - தானியங்கி நினைவக மேலாண்மை பற்றி விளக்கவும்.
பதில்: ஜாவா நினைவகத்தை நிர்வகிக்க ஒரு தானியங்கி குப்பை சேகரிப்பை பயன்படுத்துகிறது.கோப்புகளை உருவாக்கும் போது தேவையற்ற பகுதிகளை தானாகவே நீக்குகின்றது.ஒரு கோப்புகள் ஏதும் இல்லாமல் இருந்தால், "பூஜ்ய சுட்டிக்காட்டி விதிவிலக்கு" மோளம் அது நீக்கப்பட வேண்டும். இதனால் நிரல்கள் இயங்கும் வேகம் அதிகரிக்கின்றது.
கேள்வி: ஜாவா (நிரலாக்க மொழி) - ஜாவாவின் பயன்பாடுகள் என்பது என்ன?
பதில்: ஜாவா ஓர் எளிமையான இணைய இயங்குதளத்தை உருவாக்குவதிலிருந்து பெரிய நிறுவனங்கள் பயன்படுத்தும் சிக்கலான அமைப்புகளை உருவாக்கும் வகையில் மேம்பட்டுள்ளது. தற்காலத்தில் ஜாவா இணையதளம் அடிப்படையிலான பயன்பாடுகள், பொருளாதார பயன்பாடுகள், விளையாட்டு பயன்பாடுகள், வினியோக நிறுவன பயன்பாடுகள், கைபேசி பயன்பாடுகள் மற்றும் டெஸ்க்டாப் பயன்பாடுகள் ஆகியவற்றில் முக்கியபங்குவகிக்கிறது.