ஜாவா எனும்கணினிமொழிமேம்படுத்துநர்களுக்கான உதவிக்குறிப்புகள்

ஜாவா என்பது ஒவ்வொரு தொழிற்துறையிலும் ஏதோவது ஒரு வகையில் பயன்படுத்தப்படும் பல்துறை நிரலாக்க மொழியாகும். இந்த ஜாவாவானது JVM எனும் ஜாவா மெய்நிகர் இயந்திரத்-திலும் இயங்கவல்லது,என்பதே இதனுடைய மிகப் பெரிய சக்தியாகும் இந்த JVM ஆனது ஜாவா குறிமுறைவரிகளை நம்முடைய இயக்க முறைமையுடன் இணக்கமான இயந்திர குறிமுறை-வரிகளாக மொழிபெயர்க்கின்ற ஒரு அடுக்காக விளங்குகின்றது. நம்முடைய இயக்க முறைமைக்கு இதனுடைய JVM இருக்கும் வரை, அந்த இயக்கமுறைமை ஒரு சேவையகத்தில் அல்லது சேவையகமற்ற மேஜைக்கணினி, மடிக்கணினி, கைபேசி சாதனம் அல்லது உட்பொதிக்கப்பட்ட சாதனத்தில் இருந்தாலும், ஒரு ஜாவா பயன்பாட்டினால் அதை இயக்க முடியும். இந்த JVM ஆனது நிரலாளர்களும் பயனாளர்களும் ஜாவாவை எளிதாக பயன்படுத்தி கொள்ளுமாறு மாற்றுகின்றது. பொதுவாக எந்தவொரு தளத்திலும் ஒரு பயன்பாடு இயங்கும்திறனைகொள்வதற்கு தங்களுடைய மென்பொருளின் ஒரு பதிப்பை மட்டுமே எழுத வேண்டும் என்பதை நிரலாளர்கள் அறிவார்கள், மேலும் பயனாளர்கள் எந்த இயக்க முறைமையைப் பயன்படுத்தினாலும் ஒரு பயன்பாடானது தங்களுடைய கணினியில் இயங்கும் என்பதையும் அறிவார்கள். பொதுவாக பல்வேறு கணினிமொழிகளும் வரைச்சட்டங்களும் அனைத்து இயக்கமுறைமைகளிலும் செயல்படவல்ல திறனை கொண்டுள்ளன, ஆனால் அவை எதுவும் தாம் இயங்குகின்ற ஒரே அளவிலான சுருக்கமான விவரங்களை நமக்கு வழங்குவதில்லை. அதற்குபதிலாக ஜாவாவுடன், நாம் இந்த JVM ஐ தெரிவுசெய்திடும்போது அவ்வாறான விவரங்களை நமக்கு வழங்குகின்றது என்ற செய்தியை மனதில் கொள்க. நிரலாளர்களைப் பொறுத்தவரை, பல நிரலாக்க சவால்களை எதிர்கொள்ளும்-போது இது எதிர்ப்பு எதுவும் இல்லாமல் அல்லது குறைந்தபட்ச எதிர்ப்புடன் செயல்படுகின்றது, ஆனால் ஜாவாவில் எவ்வாறு நிரலாக்கம் செய்வது என்று அடிப்படைசெய்திகளை மட்டும் நாம் தெரிந்துகொண்டிருந்தால்போதுமானதாகும். ஜாவா நிரலாக்க பணியை துவங்குவதற்காக, தெரிந்து கொள்ள வேண்டிய அடிப்படையான ஏழு செய்திகள் பின்வருமாறு. ஆனால் முதலில், நம்முடைய கணினியில் ஜாவா நிறுவியிருக்கின்றோமா இல்லையா என்ற தகவலை Bash அல்லது PowerShell போன்றவைகளை செயல்படச்செய்து கண்டுபிடிக்கமுடியும் என்ற செய்தியை மனதில்கொண்டு தொடர்ந்து செல்க
$ java –version
openjdk 12.0.2 2019-07-16
OpenJDK Runtime Environment 19.3 (build 12.0.2+9)
OpenJDK 64-Bit Server VM 19.3 (build 12.0.2+9, mixed mode, sharing)
நாம் இந்த கட்டளைவரிகளை செயல்படுத்திடும்போது நமக்கு பிழை அல்லது வேறு எந்தவிததொந்திரவும் கிடைக்கவில்லை எனில் சரியாக இருக்கின்றது என தெரிந்து கொள்க, இருந்தபோதிலும் இந்த ஜாவா எனும் கணினிமொழியில் நாம் விரும்பும் பயன்பாடுகளை உருவாக்கவேண்டுமெனில் JDKஎனும் ஜாவா வை மேம்படுத்திடும் உதவிபெட்டியை நம்முடைய கணினியில் நிறுவுகை செய்திருக்க வேண்டும் . மேலும் அவ்வாறு நாம் உருவாக்கிய பயன்பாடுகள் சரியாக செயல்படு கின்றதாவென பரிசோதித்து பார்த்திடJREஎனும் ஜாவாவின் இயக்க நேர சூழலும் கண்டிப்பாக நிறுவுகை செய்திருக்கவேண்டும் என்ற கூடுதல் செய்தியையும் மனதில் கொள்க.
1.ஜாவா தொகுப்புகள்(packages): ஜாவாவில், தொடர்புடைய இனங்கள் ஒரு குழுவாக தொகுக்கப்படுகின்றன. நாம் JDK ஐ பதிவிறக்கம்செய்திடும் போது கிடைக்கும் அடிப்படை ஜாவா நூலகங்கள் ஜாவா அல்லது javaxஇல் துவங்கி கட்டுகளாக தொகுக்கப்படுகின்றன. இந்த கட்டுகளாலான தொகுப்புகளானவை நம்முடைய கணினியில் கோப்புறைகளாக ஒத்த செயல்பாட்டை வழங்குகின்றன.அவை தொடர்புடைய கூறுகளுக்கான கட்டமைப்புகளையும் வரையறைகளையும் வழங்குகின்றன (நிரலாக்க சொற்களின், ஒரு பெயர்இடைவெளியுடன்). எந்தவொரு நிரலாக்க மொழிக்கும் நூலகங்களைப் பெறுவது போல, சுதந்திரமான நிரலாளர்கள், திறமூல செயதில்ட்டங்களுக்கு வணிக விற்பனையாளர்களிட-மிருந்து கூடுதல் கட்டுகளாலான தொகுப்புகளைப் பெறமுடியும். நாம் ஒரு ஜாவா நிரலை எழுதும்போது, நம்முடைய குறிமுறைவரிகளின் தலைப்பில் அந்த தொகுப்ப கட்டுகளுக்கு ஏதேனும் பெயரை கண்டிப்பாக அறிவிக்க வேண்டும். ஜாவாவுடன் துவங்குவதற்கு நாம் ஒரு எளிய பயன்பாட்டை எழுதுகின்றோம் எனில், நம்முடைய செயல்திட்டத்தின் பெயரைபோன்று எளிமையாக இருக்கலாம். மேலும் Eclipse,போன்ற ஜாவாவின் IDEஎனும் ஒருங்கிணைந்த மேம்பாட்டு சூழலை பயன்படுத்துகின்றோம எனில், நாம் ஒரு புதிய செயல்திட்டத்தைத் துவங்கிடும்போது அதுதானாகவே நம்முடைய பயன்பாட்டிற்காகவென ஒரு நல்ல தொருபெயரை அதே தொகுப்பிற்காக உருவாக்கிகொள்கின்றது.
package helloworld;
/**
* @author sk
* An application written in Java.
*/
இல்லையெனில், நம்முடைய செயல்திட்டத்தினை முழுமையாக அறிந்து கொண்டு அதனடிப்படையில் நம்முடைய தொகுப்பிற்கான பெயரைப்த் தீர்மானிக்கலாம். உதாரணமாக, விளையாட்டு மேம்பாட்டிற்கு உதவுவதற்கான அதன்உள்ளடக்க இணங்களின் தொகுப்பிற்கான ஜாவா குறிமுறைவரிகளை எழுதுகின்றோமெனில் முதன்மை தலைப்பானது jgamer என அழைக்கப்படுவதாக கொள்க, தொடர்ந்துஅந்த தொகுப்பிற்குள் பல்வேறு தனிப்பட்ட இனங்கள் பின்வருமாறுஇருக்கலாம்.
package jgamer.avatar;
/**
* @author sk
* An imaginary game library.
*/
தொகுப்பின் முதல் நிலையின் பெயர் jgamer ஆகும், மேலும் அதற்குள் இருக்கும் ஒவ்வொரு துனை தொகுப்பிற்கும் jgamer.avatar என்றும் ஒவ்வொரு இனத்திற்கும் jgamer.score என்றவாறும் பெயரிடுவது கோப்பு ஒழுங்கு முறைமையில், கட்டமைப்பு இதைப் பிரதிபலிக்கிறது,
2. ஜாவாவில் பதிவிறக்கம்(imports): எனும் திறவு கோள் ஒரு பல்துறை நிரலாளராகிய நாம் எந்தவொரு நிரலாக்க மொழியின் பயன்பாட்டிலும் நாம் எழுதிடும் குறிமுறைவரிகளில் நூலகத்தை சேர்த்து பயன்படுத்திகொள்வதற்கு அல்லது வேறு ஏதேனும் ஒரு சொல்லைக் கண்காணிப்பதற்கு முயற்சிப்பதற்காக அந்த குறிமுறைவரி-களுக்குத் தேவையான நூலகங்களை பதிவிறக்கம் செய்யும் போது importஎனும் முக்கிய சொல்லை அதற்கான திறவுகோளாக ஜாவா பதிவேடுகளின் ஆவனமானதுபி ன்வருமாறு பயன்படுத்தி கொள்கின்றது
package helloworld;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
/**
* @authorsk
* A GUI hello world.
*/
ஒரு Java path இன் அடிப்படை சூழலில்பதிவிறக்கும் பணிசெயல்படுகின்றது. ஒரு கணினியில் ஜாவா நூலகங்கள் எங்கு சேமிக்கப்படுகின்றன என்பது ஜாவாவுக்குத் தெரியாவிட்டால், பதிவிறக்கும்பணி வெற்றிகரமாக செயல்பட முடியாது. ஒரு கணினியின் Java pathஇல் ஒரு நூலகம் சேமிக்கப்படும் போது பதிவிறக்கும் பணிவெற்றிகரமாக முடியும், மேலும் ஜாவா பயன்பாட்டை உருவாக்கவும் இயக்கவும் ஒரு நூலகத்தைப் பயன்படுத்திகொள்ளலாம்.. ஒரு நூலகம்Java pathஇல் இருக்கும் என்று எதிர்பார்க்கப்படா விட்டால் , நூலகத்தை நம்முடைய பயன்பாட்டுடன் தொகுக்கலாம் அதனை தொடர்ந்து பதிவிறக்கும் பணியானதுஎதிர்பார்த்தபடி செயல்படும்.
3. ஜாவாவில் இனங்கள்( class): எந்தவொரு ஜாவா இனத்திலும் public class எனும் திறவுகோளுடன் அதன் கோப்பின் பெயரை பிரதிபலிக்கும் தனித்துவமான இனப்பெயருடன் அறிவிக்கப்படுகின்றது. எடுத்துக்காட்டாக, helloworld எனும் செயல்திட்டத்தின் Hello.java எனும் கோப்பில் பின்வருமாறு அமைந்திருக்கும்:
package helloworld;
import javax.swing.*;
import java.awt.*;
import java.awt.event.*;
/**
* @author sk
* A GUI hello world.
*/
public class Hello {
// இது ஒரு காலியான இனமாகும்
}
எந்தவொரு இனத்திற்குள்ளும் மாறிகளையும் செயலிகளையும் அறிவிக்க முடியும். மிகமுக்கியமாக ஜாவாவின், ஒரு இனத்திற்குள் இருக்கும் மாறிகளானவை புலங்கள் எனஅழைக்கப்படுகின்றன.
4. ஜாவாவில் வழிமுறைகள்(methods) :ஜாவா வழிமுறைகளானவை, அடிப்படையில், ஒரு பொருளுக்குள் செயல்படுகின்றன. அவை வெற்றிடமாக(void), முழு எண்ணாக(int), மிதவை (float) போன்ற பல்வேறு எதிர்பார்க்கப்பட்ட தரவுகளின் அடிப்படையில் public (வேறு எந்தவொரு இனத்தாலும் அணுகுவதற்காக) என்றுஅல்லது private (அவற்றின் பயன்பாட்டைக் கட்டுப்படுத்துவதற்காக) என்று பின்வருமாறு வரையறுக்கப்படுகின்றன.
public void helloPrompt(ActionEvent event) {
String salutation = “Hello %s”;
string helloMessage = “World”;
message = String.format(salutation, helloMessage);
JOptionPane.showMessageDialog(this, message);
}
private int someNumber (x) {
return x*2;
}
ஒரு வழிமுறையை நேரடியாக அழைக்கும் போது, அது தன்னுடைய இனத்தின் வழிமுறையின் பெயரால் குறிப்பிடப்படுகின்றது. உதாரணமாக, Hello.someNumber என்பது Helloclass இல் உள்ள சில எண்களின் வழிமுறையைக் குறிக்கின்றது.
5. ஜாவாநிலையானது(Static): ஜாவாவில் உள்ள நிலையான முக்கிய சொல்லானது குறிமுறைவரிகளில் உள்ள உறுப்பினர்களைஅதில் உள்ள பொருளிலிருந்து சுதந்திரமாக அணுக வைக்கின்றது. பொருள் சார்ந்த நிரலாக்கத்தில், பயன்பாடுஒன்று இயங்கும்போது உருவாகும் “பொருள்களுக்கான” வார்ப்புருவாக செயல்படும் குறிமுறைவரிகளை எழுதமுடியும். உதாரணமாக, நாம் ஒரு குறிப்பிட்ட சாளரத்தை குறியிடவில்லை, ஆனால் ஜாவாவில் ஒரு சாளர இனத்தை அடிப்படையாகக் கொண்ட ஒரு சாளரத்தின் உதாரண ( நம்முடைய குறிமுறைவரிகளால் மாற்றியமைக்கப் பட்டது). பயன்பாடு அதன் ஒரு நிகழ்வை உருவாக்கும் வரை “எதுவும் இல்லை” என்பதால், அவர்கள் சார்ந்திருக்கும் பொருள் உருவாக்கப்படும் வரை பெரும்பாலான வழிமுறைகளையும் மாறிகளையும் ( உள்ளமைக்கப்பட்ட இனங்கள் கூட) பயன்படுத்த முடியாது. இருப்பினும், ஒருசில நேரங்களில் ஒரு பொருளை பயன்பாட்டினால் உருவாக்கப்படுவதற்கு முன்பு அதை அணுக அல்லது பயன்படுத்த வேண்டும் (எடுத்துக்காட்டாக, பந்து சிவப்பு நிறமாக இருக்க வேண்டும் என்பதை முதலில் அறியாமல் ஒரு பயன்பாடு ஒரு சிவப்பு பந்தை உருவாக்க முடியாது). அந்த நிகழ்வுகளுக்கு, static எனும் திறவுகோள் உள்ளது.
6. ஜாவாவில்முயற்சி செய்தலும்(Try) பிடித்தலும்(catch):பிழைகளை தேடிபிடிப்பதில் ஜாவா சிறந்து விளங்குகின்றது, ஆனால் நாம் என்ன செய்ய வேண்டும் என்று சொன்னால் மட்டுமே அது உடனடியாக நாம் கோரியாவாறு செயல்படதுவங்கி அந்த செயலைச் செய்ய முயற்சிக்கின்றது அடுத்தடுத்து ஒரு அடுக்குகளாலான வரிசைமுறையிலான முயற்சியுடன் பின்பற்றுகின்றது, தொடர்ந்து மீண்டும் முயற்சிக்கின்றது, இறுதியாக இந்த பணிவெற்றிகரமாக முடிகின்றது. இவ்வாறான முயற்சி விதிமுறை தோல்வியுற்றால், நாம்விரும்பிய செயல்நிறுத்தப்படும், முடிவில், முடிவுகளைப் பொருட்படுத்தாமல் சில விவேகமான செயல்களைச் செய்ய எப்போதும் செயல்படுகின்றது.அதற்கான ஒரு எடுத்துக்காட்டு பின்வருமாறு:
try {
cmd = parser.parse(opt, args);
if(cmd.hasOption(“help”)) {
HelpFormatter helper = new HelpFormatter();
helper.printHelp(“Hello <options>”, opt);
System.exit(0);
}
else {
if(cmd.hasOption(“shell”) || cmd.hasOption(“s”)) {
String target = cmd.getOptionValue(“tgt”);
} // else
} // fi
} catch (ParseException err) {
System.out.println(err);
System.exit(1);
} //catch
finally {
new Hello().helloWorld(opt);
} //finally
} //try
இது ஒரு வலுவான கட்டமைப்பாகும், இது மீளமுடியாத பிழைகளைத் தவிர்க்க முயற்சிக்கிறது அல்லது குறைந்தபட்சம் பயனளாருக்கு பயனுள்ள கருத்துக்களை வழங்குவதற்கான விருப்பத்தை வழங்குகிறது.
7. ஒரு ஜாவா பயன்பாட்டினை இயக்குதல் : பொதுவாக ஜாவா கோப்புகள் அனைத்தும், .java எனும் இறுதி சொல்லுடன் முடிவடைவதாகவே இருக்கும், இந்த கோப்புகள் கோட்பாட்டளவில் java எனும் கட்டளைசொல்லுடன் இயக்கப்படலாம். ஒரு பயன்பாடு சிக்கலானது எனில், அந்த கோப்பினை இயக்குவதால் அர்த்தமுள்ள விளைவும் எதுவும் ஏற்படுமா என்பது மற்றொரு கேள்வி நம்முடைய மனதில் எழும் நிற்க
.java எனும் இறுதி சொல்லுடன்ல் முடிவடையும் ஒரு கோப்பினை நேரடியாக இயக்குவதற்காக
$ java ./Hello.java
வழக்கமாக, ஜாவா பயன்பாடுகள் ஜாவா காப்பகங்கள் (JAR) கோப்புகளாக விநியோகிக்கப்படுகின்றன, இது .jar எனும் சொல்லுடன் முடிவடைகின்றது. ஒரு JAR கோப்பில் முதன்மை இனத்தைக் குறிக்கும் ஒரு வெளிப்படையான கோப்பு, செயல் திட்ட அமைப்பு பற்றிய சிலபேரளவுதரவுகள் மற்றும் பயன்பாட்டை இயக்குவதற்காக நம்முடைய குறிமுறைவரிகளின் அனைத்து பகுதிகளும் உள்ளன. ஒரு JAR கோப்பை இயக்க, அதன் உருவப்பொத்தானை இருமுறை சொடுக்குக , அல்லது அதை ஒரு முனைமத்திலிருந்து செயல்படுமாறு துவங்கலாம்:
$ java -jar ./Hello.jar
ஜாவா ஒரு சக்திவாய்ந்த மொழியாகும். ஜாவா கற்றல் என்பது பலவகையான தொழில்களில் பணியாற்றத் சிறந்த வழியாகும், மேலும் அதைப் பயன்படுத்த ஏராளமான காரணங்கள் உள்ளன. அதனால் இன்றே ஜாவா எனும் கணினிமொழியை கற்று வாழ்க்கையை மேம்டுத்தி கொள்க.

%d bloggers like this: