Java මූලික හැඳින්වීම | Core Java Fundamentals - SC Guide

කට්ටිය කොහොමද? වැඩේට සෙට් වෙලා ඉන්නවද? අද අපි කතා කරන්න යන්නේ ඔයාලා Software Engineering පැත්තට හරි Programming ලෝකෙට හරි අලුතින් එනවනම් අනිවාරෙන් දැනගන්න ඕන දෙයක් ගැන. ඒ තමයි Java Programming Language එක ගැන. මේක බොහොම සරලව සහ අපේ භාෂාවෙන්ම ඔයාලට කියලා දෙන්නයි මම ලෑස්ති වෙන්නේ.
ලෝකේ තියෙන Programming Languages අතරින් Java කියන්නේ අනිවාරෙන් මතක් වෙන නමක්. අවුරුදු 25කටත් වැඩිය පරණ වුණත්, තාමත් මේක ඩිමාන්ඩ් එකේ තියෙන, වැදගත්කමකින් තොරව ඉවත් කරන්න බැරි Language එකක්. ඇයි මේක මෙච්චර වැදගත්? මේකෙන් මොනවද කරන්න පුළුවන්? අලුතින් Java ඉගෙන ගන්න කෙනෙක්ට කොහෙන්ද පටන් ගන්න ඕනේ? මේ හැම ප්රශ්නයකටම අද අපි උත්තර හොයමු.
ඔයාලා Android Phone එකක් පාවිච්චි කරනවනම්, Facebook, LinkedIn වගේ Web Applications පාවිච්චි කරනවනම්, නැත්තම් බැංකු, දුරකථන සේවා ආයතන වගේ තැන් වල Systems පාවිච්චි කරනවනම්, මේ හැම තැනකම Java වල අතපසුවීමක් තියෙනවා. Sri Lankan Software Industry එක ගත්තොත්, Java Developers ලට තියෙන Demand එකත් ගොඩක් ඉහලයි. ඉතින් අපි බලමු මේ "Java" කියන අපේ යාලුවා කවුද කියලා!
Java කියන්නේ මොකක්ද? ඒක කොහෙන්ද ආවේ?
හරි, මුලින්ම බලමු මේ Java කියන්නේ මොකක්ද කියලා. සරලවම කිව්වොත් Java කියන්නේ Object-Oriented, Class-based, Concurrent, Secure සහ General-purpose Programming Language එකක්. මේක හැදුවේ James Gosling කියන කෙනා Sun Microsystems වල වැඩ කරන කාලේ 1995 දී විතර. මුලින් මේකට නම තිබ්බේ "Oak" කියලා. ඒ Gosling ගේ ඔෆිස් එක ඉස්සරහා තිබ්බ Oak ගහ නිසා. හැබැයි පස්සේ නම වෙනස් කරලා "Java" කියලා දැම්මා. (අර කෝපි වලට දාන Java Bean එකේ නම තමයි අරන් තියෙන්නේ!) පස්සේ මේ Sun Microsystems කියන ආයතනය Oracle එකට විකුණුවා. ඉතින් දැන් Java වල අයිතිය තියෙන්නේ Oracle Corporation එකට.
Java වල ප්රධානම අරමුණ වුණේ "Write Once, Run Anywhere" (WORA) කියන එක. ඒ කියන්නේ ඔයා එක පාරක් Java code එකක් ලිව්වොත්, ඒක ඕනම Platform එකක (Windows, Mac, Linux වගේ) කිසිම වෙනසක් නැතුව Run කරන්න පුළුවන්. 1990 ගණන් වල මැද භාගයේදී මේ Concept එක ගොඩක්ම අලුත් දෙයක් වුණා. මේක තමයි Java වල තියෙන ලොකුම වාසියක්. මේක නිසා Developers ලට ලොකු පහසුවක් වෙනවා. එකම Codebase එකකින් විවිධ Operating Systems වල වැඩ කරන Applications හදන්න පුළුවන්.
ඇයි Java තාමත් මෙච්චර Powerful?
ඔන්න ඔයාලගේ ඔලුවේ තියෙන ලොකුම ප්රශ්නයක් වෙන්න ඇති මේක. Java අවුරුදු ගාණක් පරණ වුණත්, ඇයි තාමත් Software Industry එකේ මේක මෙච්චර දියුණු කියලා. ඒකට හේතු කීපයක් තියෙනවා. අපි එකින් එක බලමු:
1. Platform Independent (WORA - "Write Once, Run Anywhere")
මේක ගැන මම උඩිනුත් කිව්වා. ඔයාගේ පරිගණකය Windowsද, Mac ද, නැත්නම් Linux ද කියන එක Java වලට අදාළ නැහැ. Java Code එක Compiler එකෙන් Bytecode බවට compile කරනවා. ඊට පස්සේ ඒ Bytecode එක ඕනම Platform එකක තියෙන Java Virtual Machine (JVM) එකකින් Run කරන්න පුළුවන්. මේ JVM එක හැම Operating System එකකටම වෙන වෙනම හදලා තියෙනවා. ඒක හරියට භාෂා පරිවර්තකයෙක් වගේ. එකම Bytecode එක තේරුම් අරගෙන, ඒ OS එකට ගැලපෙන විදිහට Run කරනවා. මේක නිසා Developers ලට ලොකු පහසුවක් වෙනවා. එකම Codebase එකකින් විවිධ Operating Systems වල වැඩ කරන Applications හදන්න පුළුවන්. මේක Enterprise-level Systems වලට නම් මාරම වැදගත්.
2. Object-Oriented (OOPS Concepts)
Java කියන්නේ නියම Object-Oriented Programming (OOP) Language එකක්. Class, Object, Inheritance, Polymorphism, Abstraction, Encapsulation වගේ Concepts Java වල හොඳටම තියෙනවා. OOP කියන්නේ Programming කරන්න තියෙන Methodology එකක්. මේකෙන් Real-world Objects වගේම Software Components නිර්මාණය කරන්න පුළුවන්. උදාහරණයක් විදිහට, අපි "Car" කියලා Class එකක් හැදුවොත්, ඒකෙන් "Toyota", "Honda" වගේ Objects හදන්න පුළුවන්. මේකෙන් Code එක Modular වෙලා, Maintain කරන්න, Extend කරන්න සහ Reuse කරන්න ලේසි වෙනවා. ඒ වගේම Complex Systems හදන්න මේක ගොඩක් උදව් වෙනවා.
3. Simple, Secure & Robust
- Simple: C++ වගේ Language එකක තියෙන සංකීර්ණ දේවල් (විශේෂයෙන් Pointers වගේ Memory Management Concepts) Java වල නැහැ. Java වලට තියෙන්නේ Automatic Garbage Collection එකක්. ඒ නිසා Developers ලට Memory Management ගැන වැඩිය හිතන්න ඕනේ නැහැ. ඒ නිසා අලුතින් ඉගෙන ගන්න කෙනෙක්ට ලේසියෙන් තේරුම් ගන්න පුළුවන්.
- Secure: Java වල inbuilt Security Features ගොඩක් තියෙනවා. bytecode verifier එක, security manager එක වගේ දේවල් නිසා Virus වලින් ආරක්ෂා වෙන්න, Code එකේ Security Holes නැති කරන්න මේක උදව් වෙනවා. විශේෂයෙන් Internet Applications සහ Banking Systems වලට මේ Security එක ගොඩක් වැදගත්.
- Robust: Java වල තියෙන Strong Memory Management System එක සහ Exception Handling Mechanisms (Errors detect කරලා ඒවා Handle කරන්න පුළුවන් ක්රම) නිසා Program එකක් Crash වෙන්නේ නැතුව දිගටම වැඩ කරන්න පුළුවන්. මේක Data Loss වගේ දේවල් වලින් ආරක්ෂා වෙනවා වගේම Application එකේ විශ්වාසනීයත්වය වැඩි කරනවා.
4. Multithreaded & High Performance
- Multithreaded: Java වලට එකම වෙලාවේ වැඩ ගොඩක් කරන්න පුළුවන් (Concurrency). උදාහරණයක් විදිහට, ඔයාගේ Web Browser එකෙන් Web page එකක් Load වෙනකොටම Graphics Load කරන එක, Text Load කරන එක වගේ දේවල් එකම වෙලාවේ කරන්න පුළුවන්. මේක නිසා Applications වේගවත් වෙනවා වගේම User Experience එකත් හොඳයි.
- High Performance: Java වල JIT (Just-In-Time) Compiler එකක් තියෙනවා. මේකෙන් Runtime එකේදී Code එක Optimise කරලා වේගය වැඩි කරනවා. ඒ වගේම JVM එකේ Optimizations නිසා Java Applications ගොඩක් වේගයෙන් Run කරන්න පුළුවන්.
5. Large Community Support & Rich API
Java වලට ලෝකේ පුරාම ඉන්න විශාල Developers Community එකක් ඉන්නවා. ඒ නිසා ඔයාට මොනවා හරි ගැටලුවක් ආවොත්, Stack Overflow වගේ Sites වලින් උදව් ගන්න ලේසියි. ඒ වගේම Java වලට ලොකු API (Application Programming Interface) එකක් තියෙනවා. මේකෙන් Built-in Libraries ගොඩක් දෙනවා. ඒ නිසා අපිට ගොඩක් දේවල් මුල ඉඳන් ලියන්න ඕනේ නැහැ. Ready-made Solutions පාවිච්චි කරන්න පුළුවන්.
Java වලින් මොනවද කරන්න පුළුවන්?
Java වලට පුළුවන් දේවල් නම් අනන්තයි. කර්මාන්ත ගණනාවකම Java භාවිත වෙනවා. මෙන්න ප්රධාන ඒවා කීපයක්:
- Android Mobile Applications: ඔයාලා පාවිච්චි කරන ගොඩක් Android Apps Java වලින් හදලා තියෙන්නේ. (Kotlin ආවත්, Java තවමත් Backend එකට, Enterprise-level Android Development වලට සහ Legacy Systems වලට ඉතාම වැදගත්).
- Web Applications: Enterprise level Web Applications හදන්න Java (විශේෂයෙන් Spring Framework, Spring Boot) බහුලව භාවිත වෙනවා. LinkedIn, eBay, Amazon වගේ ජනප්රිය වෙබ් අඩවි වල Backend එකට Java භාවිත කරනවා. Microservices Architecture වලටත් Java ගොඩක් ජනප්රියයි.
- Enterprise Applications: බැංකු, රක්ෂණ, රජයේ ආයතන වගේ විශාල ආයතන වල දත්ත කළමනාකරණයට, ව්යාපාරික කටයුතු වලට සහ Core Systems වලට Java භාවිත වෙනවා. මේවා ගොඩක් වෙලාවට mission-critical Systems.
- Big Data Technologies: Apache Hadoop, Apache Spark, Apache Kafka වගේ Big Data Technologies බොහොමයක් Java වලින් හදලා තියෙන්නේ. මේවා Data Processing, Analytics වගේ දේවල් වලට භාවිත වෙනවා.
- Cloud Computing: Cloud Platforms වල Infrastructure සහ Services හදන්නත් Java භාවිත වෙනවා. Cloud-native Applications develop කරන්නත් Java හොඳ Option එකක්.
- Scientific Applications: විද්යාත්මක පර්යේෂණ, ගණනය කිරීම් සහ Simulations සඳහා Java භාවිත වෙනවා.
- Games: Minecraft වගේ ජනප්රිය Games Java වලින් හදලා තියෙනවා. Gamification Concepts වලටත් Java භාවිත වෙනවා.
පළමු Java Code එක ලියමු! (Hello World)
හරි, අපි කතා කළා ඇති. දැන් බලමු අපි කොහොමද අපේ පළමු Java Program එක ලියන්නේ කියලා. මේකෙන් ඔයාලට පුංචි අදහසක් ගන්න පුළුවන්.
අවශ්ය දේවල් (What You Need):
- Java Development Kit (JDK): Java Programs ලියන්න, Compile කරන්න, Run කරන්න මේක ඕනේ. Oracle වෙබ් අඩවියෙන් (oracle.com/java/technologies/downloads/) Free Download කරගන්න පුළුවන්. (Google කරන්න "Download JDK"). ඔයාගේ Operating System එකට අදාළ Latest Stable Version එක බාගන්න.
- Text Editor / Integrated Development Environment (IDE): Code ලියන්න Notepad, VS Code වගේ Text Editor එකක් හෝ IntelliJ IDEA Community Edition, Eclipse, NetBeans වගේ IDE එකක් පාවිච්චි කරන්න පුළුවන්. IntelliJ IDEA වගේ IDE එකක් අලුතින් ඉගෙන ගන්න කෙනෙක්ට ගොඩක් ලේසියි. ඒකෙන් Code එක ලියන එක, Error හොයන එක වගේ ගොඩක් දේවල් ලේසි කරනවා.
පියවරෙන් පියවර (Step-by-Step):
පියවර 1: Java File එකක් හදමු
ඔයාගේ Desktop එකේ හරි වෙන තැනක හරි අලුත් Folder එකක් හදාගන්න. උදාහරණයක් විදිහට "MyJavaPrograms" කියලා. ඒක ඇතුළේ "HelloWorld.java" කියලා File එකක් හදාගන්න. වැදගත්: File Name එක සහ Class Name එක (පහළ Code එකේ public class HelloWorld
කියලා තියෙන තැන) අනිවාරෙන් එකම වෙන්න ඕනේ. නැත්තම් Compile වෙන්නේ නැහැ.
මේ File එක Open කරලා පහළ තියෙන Code එක Type කරන්න (හෝ Copy-Paste කරන්න).
// This is a simple Java program to print "Hello, World!"
// Author: Your Name (optional)
// Date: Today's Date (optional)
public class HelloWorld { // This is our main class. The file name must match this class name.
public static void main(String[] args) { // This is the main method, where program execution begins.
System.println("Hello, World! From Sri Lanka!"); // This line prints text to the console.
}
}
Code එකේ තේරුම ටිකක් බලමු:
// This is a simple Java program...
: මේක Comment එකක්. Developers ලට Code එක තේරුම් ගන්න උදව් වෙන්න මේක පාවිච්චි කරනවා. Code එක Run වෙනකොට මේක නොසලකා හරිනවා.public class HelloWorld
: මේක Class එකක් හදන විදිහ. Java වල හැම දෙයක්ම Class ඇතුළේ තමයි තියෙන්නේ.HelloWorld
කියන්නේ Class එකේ නම.public
කියන්නේ මේ Class එක ඕන තැනක පාවිච්චි කරන්න පුළුවන් කියලා.public static void main(String[] args)
: මේක තමයි Java Program එකක් Run වෙනකොට මුලින්ම Execution එක පටන් ගන්න තැන. JVM (Java Virtual Machine) එක මේ Method එක තමයි මුලින්ම හොයන්නේ.public
: ඕනෑම තැනකින් Access කරන්න පුළුවන්.static
: Class එකේ Object එකක් හදන්නේ නැතුව මේ Method එක Call කරන්න පුළුවන්.void
: මේ Method එකෙන් කිසිම දෙයක් Return කරන්නේ නැහැ.main
: මේක Method එකේ නම.String[] args
: Command Line එකෙන් Program එකට දෙන Argument ගන්න පාවිච්චි කරනවා.
System.out.println("Hello, World! From Sri Lanka!");
: මේ Line එකෙන් තමයි "Hello, World! From Sri Lanka!" කියලා Console එකේ Print කරන්නේ.System
: Java වල තියෙන Predefined Class එකක්.out
:System
Class එකේ තියෙන Object එකක් (Standard Output Stream).println
:out
Object එකේ තියෙන Method එකක් (Print Line). මේකෙන් String එකක් Print කරලා අලුත් Line එකකට යනවා.
පියවර 2: Compile කරමු
දැන් Command Prompt (Windows) හෝ Terminal (Mac/Linux) එක Open කරගන්න. ඔයා "HelloWorld.java" File එක හදපු Folder එකට යන්න. (cd
Command එකෙන්). උදාහරණයක් විදිහට:
cd C:\Users\YourUser\Desktop\MyJavaPrograms
දැන් මේ Command එක Type කරලා Enter කරන්න:
javac HelloWorld.java
මේකෙන් Java Code එක Bytecode බවට Convert වෙනවා. ඔයාගේ Folder එකේ "HelloWorld.class" කියලා අලුත් File එකක් හැදෙනවා නම්, Compile එක සාර්ථකයි. ගැටලුවක් ආවොත්: "javac is not recognized as an internal or external command" වගේ Error එකක් ආවොත්, ඒ කියන්නේ ඔයාගේ JDK එකේ Path එක Environment Variables වලට Add කරලා නැහැ. Google එකේ "how to set Java path in Windows/Mac" කියලා Search කරලා හදාගන්න පුළුවන්.
පියවර 3: Run කරමු
දැන් Compile කරපු Program එක Run කරන්න පුළුවන්. Command Prompt/Terminal එකේම මේ Command එක Type කරලා Enter කරන්න:
java HelloWorld
එතකොට ඔයාට Output එක විදිහට "Hello, World! From Sri Lanka!" කියලා පේයි. සිරා වැඩක් නේද? ඔයාගේ පළමු Java Program එක සාර්ථකයි!
අවසන් වදන
ඉතින් මචංලා, අද අපි Java ගැන ගොඩක් දේවල් කතා කළා. Java කියන්නේ ඇයි තාමත් Software Industry එකේ රජ කරන Language එකක්ද කියලත්, ඒකෙන් මොනවද කරන්න පුළුවන් කියලත්, ඔයාගේ පළමු Java Program එක කොහොමද ලියන්නේ කියලත් ඉගෙන ගත්තා. මේක ඔයාගේ Java ගමනට හොඳ ආරම්භයක් වෙයි කියලා මම හිතනවා.
Java කියන්නේ සාගරයක් වගේ. මේක පොඩි Introduction එකක් විතරයි. තාම අපිට Variables, Data Types, Operators, Loops, Conditional Statements, Arrays, Methods, Classes, Objects වගේ තව ගොඩක් දේවල් ඉගෙන ගන්න තියෙනවා. ඒ හැම එකක්ම Step-by-Step ඔයාලට කියලා දෙන්න මම බලාපොරොත්තු වෙනවා. අනිවාරෙන් අපි ඊළඟ Article එකෙන් තවත් වැදගත් Concept එකක් අරන් එන්නම්.
ඉතින්, අද ඉගෙන ගත්ත දේවල් අනිවාරෙන් Try කරලා බලන්න. මොනවා හරි ගැටලුවක් ආවොත්, නැත්තම් මේ Article එක ගැන ඔයාලගේ අදහස්, යෝජනා තියෙනවනම් පහළින් Comment එකක් දාගෙනම යන්න. අලුත් Articles එක්ක ඉක්මනින්ම සෙට් වෙමු! එහෙනම් හැමෝටම ජය වේවා!