Programming and Java Fundamentals

Creating Your First Java Project

ReadingPreview

আপনি একটি free preview lesson দেখছেন।

Lesson Overview

Java development environment প্রস্তুত হওয়ার পর এখন আমরা একটি complete Java project তৈরি করব।

এই lesson-এ আমরা IntelliJ IDEA ব্যবহার করে:

  • একটি নতুন Java project তৈরি করব
  • Project-এর folder structure বুঝব
  • Source directory শনাক্ত করব
  • একটি Java class তৈরি করব
  • main method লিখব
  • Program run করব
  • Console output পড়ব
  • Project file কোথায় সংরক্ষিত হচ্ছে, তা দেখব
  • Common project creation error বুঝব

এই lesson শেষে আপনার computer-এ একটি working Java project থাকবে, যেটি আপনি পরবর্তী lessonগুলোতে practice-এর জন্য ব্যবহার করতে পারবেন।


Learning Objectives

এই lesson শেষ করার পর আপনি পারবেন:

  • IntelliJ IDEA-তে একটি Java project তৈরি করতে
  • Project name এবং location নির্বাচন করতে
  • Project SDK configure করতে
  • Project structure-এর গুরুত্বপূর্ণ অংশ শনাক্ত করতে
  • Source directory-এর উদ্দেশ্য ব্যাখ্যা করতে
  • একটি Java class তৈরি করতে
  • main method ব্যবহার করে program start করতে
  • IntelliJ IDEA থেকে Java program run করতে
  • Console output এবং exit code বুঝতে
  • Terminal থেকে একই project compile এবং run করতে
  • Common project setup problem identify করতে

Java Project কী?

Java project হলো Java source code, configuration, compiled output এবং অন্যান্য resource organize করার একটি structure।

একটি ছোট Java project-এ থাকতে পারে:

java-first-project/
├── src/
│   └── Main.java
└── project configuration

একটি বড় project-এ থাকতে পারে:

java-application/
├── src/
│   ├── main/
│   │   ├── java/
│   │   └── resources/
│   └── test/
│       └── java/
├── build.gradle
├── settings.gradle
└── README.md

এখন আমরা simple Java project দিয়ে শুরু করব।

Build tool, dependency এবং advanced project structure পরবর্তী course-এ বিস্তারিত শেখা যাবে।


Project কেন প্রয়োজন?

একটি Java project আমাদের code organize করতে সাহায্য করে।

Project ব্যবহার করে আমরা:

  • Source file এক জায়গায় রাখতে পারি
  • Multiple class manage করতে পারি
  • JDK version configure করতে পারি
  • Program run করতে পারি
  • Compiled file আলাদা রাখতে পারি
  • Test code organize করতে পারি
  • Library এবং dependency manage করতে পারি
  • Version control ব্যবহার করতে পারি

একটি ছোট example-এর জন্য একটি .java file যথেষ্ট হতে পারে।

কিন্তু real application-এর জন্য structured project প্রয়োজন।


IntelliJ IDEA Open করুন

IntelliJ IDEA open করলে সাধারণত welcome screen দেখা যাবে।

সেখানে option থাকতে পারে:

New Project
Open
Get from Version Control

নতুন project তৈরি করার জন্য select করুন:

New Project

যদি IntelliJ IDEA-তে আগে থেকেই একটি project open থাকে, তাহলে menu থেকে নতুন project তৈরি করা যেতে পারে:

File
→ New
→ Project

IDE version অনুযায়ী menu কিছুটা ভিন্ন হতে পারে।


Creating a New Project

Step 1: New Project Select করুন

Welcome screen থেকে:

New Project

select করুন।

নতুন project configuration window open হবে।


Step 2: Java Select করুন

Language বা project type হিসেবে select করুন:

Java

কিছু IntelliJ IDEA version-এ optionগুলো এমন হতে পারে:

Java
Kotlin
Groovy
Empty Project

এই course-এর জন্য Java select করুন।


Step 3: Project Name দিন

Project name দিন:

java-foundation

অথবা:

first-java-project

এই lesson-এর example-এ আমরা ব্যবহার করব:

first-java-project

Project name:

  • ছোট রাখুন
  • Meaningful রাখুন
  • Lowercase ব্যবহার করতে পারেন
  • Space avoid করতে পারেন
  • Hyphen ব্যবহার করতে পারেন

ভালো example:

first-java-project
grade-calculator
oop-practice

Avoid:

New Project Final Latest 2
Java!!!Project
My@Project

Step 4: Project Location নির্বাচন করুন

Project কোথায় save হবে, তা select করুন।

Example:

Documents/java-projects/first-java-project

অথবা:

Development/java/first-java-project

Project location এমন জায়গায় হওয়া উচিত:

  • যেখানে আপনার read এবং write permission আছে
  • যেটি সহজে খুঁজে পাওয়া যায়
  • যেটি system-protected folder নয়
  • যেটির path খুব complicated নয়

Avoid করুন:

C:\Windows
/System
/usr

Step 5: JDK Select করুন

Project create করার সময় একটি JDK select করতে হবে।

Example:

JDK 21

Dropdown-এ installed JDK দেখা যেতে পারে:

Eclipse Temurin 21

অথবা:

OpenJDK 21

Installed JDK দেখা না গেলে:

Add JDK

select করুন।

তারপর JDK installation directory select করুন।


Step 6: Build System নির্বাচন

IntelliJ IDEA project creation screen-এ build system select করার option থাকতে পারে।

Possible option:

IntelliJ
Maven
Gradle

এই basic lesson-এর জন্য select করা যেতে পারে:

IntelliJ

এতে project structure simple থাকবে।

Maven এবং Gradle dependency এবং build automation-এর জন্য ব্যবহৃত হয়। সেগুলো future lesson বা backend course-এ শেখা হবে।


Step 7: Sample Code Option

কিছু IntelliJ IDEA version-এ option থাকতে পারে:

Add sample code

আপনি চাইলে এটি disable করে নিজে class তৈরি করতে পারেন।

এই lesson-এ আমরা নিজে class তৈরি করব।


Step 8: Project Create করুন

সব configuration verify করুন:

Name: first-java-project
Language: Java
Build system: IntelliJ
JDK: 21

তারপর select করুন:

Create

IntelliJ IDEA project initialize করবে।


Understanding the Project Window

Project তৈরি হলে IntelliJ IDEA interface-এ কয়েকটি গুরুত্বপূর্ণ অংশ দেখা যাবে।

সাধারণত:

  • Project panel
  • Code editor
  • Toolbar
  • Run window
  • Terminal
  • Status bar

Project Panel

বাম পাশে Project panel project-এর file এবং folder দেখায়।

Simple structure হতে পারে:

first-java-project
├── .idea
├── src
└── first-java-project.iml

Exact structure IntelliJ IDEA version অনুযায়ী ভিন্ন হতে পারে।


Editor Area

Editor area-তে source code লেখা হয়।

যখন কোনো .java file open করবেন, তার content editor-এ দেখা যাবে।


Run Window

Program run করলে নিচের দিকে Run window open হতে পারে।

এখানে দেখা যায়:

  • Program output
  • Runtime error
  • Process information
  • Exit code

Terminal

IntelliJ IDEA-এর integrated terminal থেকে command run করা যায়।

Example:

java -version

অথবা:

pwd

Windows PowerShell-এ:

Get-Location

The .idea Directory

IntelliJ IDEA project-এর মধ্যে .idea directory তৈরি করতে পারে।

Example:

.idea/

এই directory-এর মধ্যে IDE-specific project configuration থাকতে পারে।

যেমন:

  • Project settings
  • Workspace configuration
  • Run configuration
  • Module configuration

Beginner হিসেবে .idea directory manually edit করার প্রয়োজন নেই।


The .iml File

IntelliJ IDEA কিছু project-এ .iml file তৈরি করতে পারে।

Example:

first-java-project.iml

এটি IntelliJ module-related configuration রাখতে পারে।

IDE এবং project type অনুযায়ী এটি নাও থাকতে পারে।

এই file manually edit করার প্রয়োজন নেই।


Source Directory কী?

Project-এর মধ্যে Java source code রাখার directory-কে source directory বা source root বলা হয়।

Simple IntelliJ project-এ এটি হতে পারে:

src

Project structure:

first-java-project/
└── src/

Java class সাধারণত এই directory-এর মধ্যে তৈরি করা হবে।


Source Root কী?

Source root এমন directory, যেটিকে IDE source code-এর root হিসেবে treat করে।

IntelliJ IDEA source root-কে specialভাবে mark করতে পারে।

Project panel-এ src folder আলাদা icon বা color দিয়ে দেখানো হতে পারে।

Source root-এর মধ্যে থাকা Java file:

  • Compile করা হয়
  • Package structure follow করে
  • IDE index করে
  • Code completion support পায়
  • Run configuration-এর অংশ হয়

Source Root না থাকলে কী হবে?

যদি Java file normal folder-এর মধ্যে থাকে কিন্তু folder source root হিসেবে configure করা না থাকে, তাহলে IDE:

  • Class correctly detect নাও করতে পারে
  • Package warning দেখাতে পারে
  • Run option নাও দেখাতে পারে
  • Compilation configuration problem তৈরি করতে পারে

Simple project create করলে IntelliJ IDEA সাধারণত src folder automatically configure করে।


Creating Your First Java Class

এখন আমরা project-এর মধ্যে প্রথম Java class তৈরি করব।


Step 1: src Folder Select করুন

Project panel থেকে:

src

folder-এর ওপর right-click করুন।


Step 2: New Java Class Select করুন

Menu থেকে:

New
→ Java Class

select করুন।


Step 3: Class Name দিন

Class name দিন:

Main

তারপর Enter press করুন।

IntelliJ IDEA একটি file তৈরি করবে:

Main.java

Initial code হতে পারে:

public class Main {
}

Class এবং File Name

Class-এর নাম:

Main

File-এর নাম:

Main.java

Public class এবং file name match করতে হবে।

সঠিক:

Main.java
public class Main {
}

ভুল:

Application.java
public class Main {
}

Java case-sensitive।

তাই:

Main

এবং:

main

একই নয়।


Class Name Convention

Java class name সাধারণত PascalCase convention follow করে।

Example:

Main
Student
GradeCalculator
BankAccount
CourseEnrollment

PascalCase-এ:

  • প্রতিটি word capital letter দিয়ে শুরু হয়
  • Space ব্যবহার করা হয় না

Example:

grade calculator

Class name:

GradeCalculator

Avoid:

gradecalculator
grade_calculator
grade-calculator

Adding the Main Method

Java application execution শুরু করার জন্য আমরা main method লিখব।

Main class-এর মধ্যে লিখুন:

public class Main {

    public static void main(String[] args) {

    }
}

এই method basic Java application-এর entry point।


Main Method

Complete method signature:

public static void main(String[] args)

এখনই প্রতিটি keyword গভীরভাবে বুঝতে হবে না।

পরবর্তী lesson-এ আমরা এই method-এর প্রতিটি অংশ ব্যাখ্যা করব।

এই মুহূর্তে মনে রাখুন:

JVM basic Java application শুরু করার জন্য main method খুঁজে।


Writing Your First Output

main method-এর মধ্যে লিখুন:

System.out.println("Hello Java");

Complete code:

public class Main {

    public static void main(String[] args) {
        System.out.println("Hello Java");
    }
}

System.out.println কী করে?

System.out.println console-এ output display করে।

Example:

System.out.println("Hello Java");

Output:

Hello Java

এখানে:

  • "Hello Java" একটি text value
  • println text print করে
  • Print করার পর cursor নতুন line-এ যায়

এই statement-এর প্রতিটি অংশ আমরা later lesson-এ বিস্তারিত শিখব।


Running the Program

IntelliJ IDEA থেকে program run করার কয়েকটি উপায় আছে।


Method 1: Run Icon

main method-এর পাশে একটি green Run icon দেখা যেতে পারে।

Icon click করুন।

তারপর select করুন:

Run 'Main.main()'

Method 2: Right-Click

Editor বা Project panel-এ Main.java-এর ওপর right-click করুন।

Select করুন:

Run 'Main.main()'

Method 3: Keyboard Shortcut

Operating system এবং keymap অনুযায়ী shortcut ভিন্ন হতে পারে।

IntelliJ IDEA-তে current run configuration run করার common shortcut হতে পারে:

Shift + F10

macOS keymap অনুযায়ী shortcut আলাদা হতে পারে।

IDE menu থেকে exact shortcut দেখা যায়।


Expected Output

Program successfulভাবে run হলে Run window-তে দেখা যাবে:

Hello Java

এর নিচে দেখা যেতে পারে:

Process finished with exit code 0

Exit Code কী?

Program শেষ হওয়ার পর operating system একটি exit code পেতে পারে।

Commonভাবে:

Exit code 0

মানে program normally complete হয়েছে।

Non-zero exit code সাধারণত কোনো problem বা abnormal termination নির্দেশ করতে পারে।

Example:

Process finished with exit code 0

এর অর্থ:

  • Program start হয়েছে
  • Program execute হয়েছে
  • Program normally finish হয়েছে

তবে exit code 0 মানেই program-এর business logic correct—এমন নয়।

Program logical error সহ normally finish করতে পারে।


What IntelliJ IDEA Does When You Run

আপনি Run button চাপলে IntelliJ IDEA background-এ সাধারণত:

  1. Source code save করে
  2. Project compile করে
  3. Syntax এবং type error check করে
  4. .class bytecode তৈরি করে
  5. Runtime classpath configure করে
  6. JVM start করে
  7. Main class load করে
  8. main method খুঁজে
  9. Method execute করে
  10. Output Run window-তে দেখায়
  11. Process finish হলে exit code দেখায়

IDE এই কাজগুলো automate করে।


Modifying the Program

Code পরিবর্তন করুন:

public class Main {

    public static void main(String[] args) {
        System.out.println("Welcome to Java");
        System.out.println("This is my first project");
    }
}

Expected output:

Welcome to Java
This is my first project

প্রতিটি println call-এর পর output নতুন line-এ যায়।


Printing Multiple Lines

Example:

public class Main {

    public static void main(String[] args) {
        System.out.println("Course: Java and OOP Foundation");
        System.out.println("Module: Programming and Java Fundamentals");
        System.out.println("Lesson: Creating Your First Java Project");
    }
}

Output:

Course: Java and OOP Foundation
Module: Programming and Java Fundamentals
Lesson: Creating Your First Java Project

print and println

Java console output-এর জন্য commonly ব্যবহার করা হয়:

System.out.print()

এবং:

System.out.println()

println

Print করার পর new line তৈরি করে।

System.out.println("Hello");
System.out.println("Java");

Output:

Hello
Java

print

Print করার পর automatically new line তৈরি করে না।

System.out.print("Hello ");
System.out.print("Java");

Output:

Hello Java

Combined Example

public class Main {

    public static void main(String[] args) {
        System.out.print("Java ");
        System.out.print("and ");
        System.out.println("OOP");

        System.out.println("Foundation Course");
    }
}

Output:

Java and OOP
Foundation Course

Printing an Empty Line

Empty line print করতে পারেন:

System.out.println();

Example:

public class Main {

    public static void main(String[] args) {
        System.out.println("First line");
        System.out.println();
        System.out.println("Third line");
    }
}

Output:

First line

Third line

Comments in Your First Project

Code-এর উদ্দেশ্য explain করার জন্য comment ব্যবহার করা যায়।

Single-line comment:

// This program prints a welcome message

Example:

public class Main {

    public static void main(String[] args) {
        // Print the course name
        System.out.println("Java and OOP Foundation");
    }
}

Comment compiler execute করে না।

Output:

Java and OOP Foundation

Comments পরবর্তী syntax lesson-এ বিস্তারিত শেখানো হবে।


Saving the Project

IntelliJ IDEA সাধারণত source file automatically save করে।

তবুও manual save shortcut ব্যবহার করা যায়:

Ctrl + S

macOS-এ:

Command + S

IDE version এবং setting অনুযায়ী file auto-save হতে পারে যখন:

  • অন্য file open করেন
  • Program run করেন
  • IDE focus হারায়
  • নির্দিষ্ট সময় পার হয়

Finding the Project on Your Computer

Project folder কোথায় আছে, তা জানা গুরুত্বপূর্ণ।

Project panel-এ project root-এর ওপর right-click করে option থাকতে পারে:

Open In
→ Explorer

Windows-এ:

Show in Explorer

macOS-এ:

Reveal in Finder

Linux-এ:

Open in File Manager

Project structure filesystem-এ এমন হতে পারে:

first-java-project/
├── .idea/
├── out/
├── src/
│   └── Main.java
└── first-java-project.iml

Exact folder IDE version অনুযায়ী ভিন্ন হতে পারে।


Compiled Output Directory

IntelliJ IDEA compiled .class file source directory-এর বাইরে রাখতে পারে।

Possible structure:

out/
└── production/
    └── first-java-project/
        └── Main.class

Source file:

src/Main.java

Compiled file:

out/production/first-java-project/Main.class

এতে source code এবং generated bytecode আলাদা থাকে।


Generated File Manually Edit করা উচিত নয়

Compiled .class file manually edit করা উচিত নয়।

কারণ:

  • এটি generated bytecode
  • Source code compile করলে আবার replace হবে
  • Human-readable source নয়
  • Change permanent হবে না

সব পরিবর্তন .java source file-এ করতে হবে।


Source Code and Compiled Code

Project-এর দুই ধরনের গুরুত্বপূর্ণ output:

Source Code

Main.java

Developer এটি লিখেন এবং edit করেন।

Compiled Bytecode

Main.class

Compiler এটি তৈরি করে।

Flow:

Main.java
    ↓
Compiler
    ↓
Main.class

Running the Program Again

Code change করার পর আবার Run করুন।

IntelliJ IDEA modified source code recompile করবে।

Example:

public class Main {

    public static void main(String[] args) {
        System.out.println("My project is working");
    }
}

New output:

My project is working

আগের output automatically replace বা নতুন run entry হিসেবে দেখা যেতে পারে।


Reading the Run Window

Run window-তে বিভিন্ন ধরনের information দেখা যেতে পারে।

Example:

"C:\Program Files\Java\jdk-21\bin\java.exe" ...
Hello Java

Process finished with exit code 0

macOS বা Linux-এ Java executable path আলাদা হবে।

Important অংশ:

Hello Java

এটি program output।

Process finished with exit code 0

এটি process completion information।


Compile Error in IntelliJ IDEA

নিচের code লিখুন:

public class Main {

    public static void main(String[] args) {
        System.out.println("Hello Java")
    }
}

এখানে semicolon missing।

IDE code underline বা highlight করতে পারে।

Run করার চেষ্টা করলে compilation fail হবে।

Possible error message:

';' expected

Correct code:

System.out.println("Hello Java");

Common Error: No Main Method

Code:

public class Main {

    public void start() {
        System.out.println("Application started");
    }
}

এই class-এ valid main method নেই।

IDE সরাসরি standalone application হিসেবে class run করার option নাও দিতে পারে।

Correct:

public class Main {

    public static void main(String[] args) {
        System.out.println("Application started");
    }
}

Common Error: Incorrect Main Method

নিচের signature valid application entry point নয়:

public void main(String[] args) {
}

কারণ static missing।

নিচেরটিও correct নয়:

public static int main(String[] args) {
    return 0;
}

কারণ return type void হওয়া উচিত।

Standard signature:

public static void main(String[] args)

Common Error: File and Class Name Mismatch

File name:

Application.java

Code:

public class Main {
}

এটি compile error তৈরি করতে পারে।

Correct option 1:

Main.java
public class Main {
}

Correct option 2:

Application.java
public class Application {
}

Common Error: Running the Wrong Class

Project-এ multiple class থাকলে ভুল class run হতে পারে।

Example:

src/
├── Main.java
└── Test.java

Main.java:

public class Main {

    public static void main(String[] args) {
        System.out.println("Main application");
    }
}

Test.java:

public class Test {

    public static void main(String[] args) {
        System.out.println("Test application");
    }
}

দুটি class-এর আলাদা main method আছে।

IDE-তে যে class run করবেন, সেই class-এর output দেখা যাবে।


Run Configuration কী?

IntelliJ IDEA program কীভাবে run করবে, সেই configuration-কে Run Configuration বলা হয়।

এতে থাকতে পারে:

  • Main class
  • JDK
  • Classpath
  • Program argument
  • Environment variable
  • Working directory
  • JVM option

Simple project-এ IDE automatically Run Configuration তৈরি করতে পারে।

Example name:

Main

Working Directory কী?

Working directory হলো program run হওয়ার সময় current filesystem location।

Program file পড়া বা লেখা শুরু করলে working directory গুরুত্বপূর্ণ হয়।

Simple console output-এর জন্য এখন এটি নিয়ে চিন্তা করার প্রয়োজন নেই।

পরে file handling শেখার সময় working directory গুরুত্বপূর্ণ হবে।


Running from IntelliJ Terminal

IntelliJ IDEA-এর Terminal open করুন।

Project root দেখতে পারেন:

pwd

Windows PowerShell:

Get-Location

Project root structure:

first-java-project/
└── src/
    └── Main.java

Compile from the Terminal

Project root থেকে compile করতে পারেন:

javac src/Main.java

এতে class file source folder-এর মধ্যে তৈরি হতে পারে:

src/Main.class

Run করার জন্য:

java -cp src Main

এখানে:

-cp src

JVM-কে বলে compiled class src directory-তে খুঁজতে।


Alternative Terminal Flow

src directory-তে যান:

cd src

Compile:

javac Main.java

Run:

java Main

Output:

Hello Java

এই flow IDE-এর background operation বুঝতে সাহায্য করে।


Classpath in the Terminal

Command:

java -cp src Main

এখানে:

  • java JVM start করে
  • -cp classpath configure করে
  • src class খোঁজার directory
  • Main run করার class

Classpath-এর short option:

-cp

Longer form:

-classpath

Example:

java -classpath src Main

দুটি command একই ধরনের কাজ করে।


Avoid Committing Compiled Files

Source control ব্যবহার করলে সাধারণত generated .class এবং out directory commit করা হয় না।

Commit করা হয়:

  • .java source file
  • Project configuration-এর প্রয়োজনীয় অংশ
  • Build file
  • Documentation

Avoid করা হয়:

  • .class
  • out
  • Temporary file
  • Local cache

Git এবং .gitignore future lesson-এ আলোচনা করা যেতে পারে।


Creating Another Class

Project panel থেকে src folder-এর ওপর right-click করুন:

New
→ Java Class

Class name দিন:

CourseInfo

Code:

public class CourseInfo {

    public static void main(String[] args) {
        System.out.println("Course: Java and OOP Foundation");
        System.out.println("Language: Bangla");
    }
}

Output:

Course: Java and OOP Foundation
Language: Bangla

এখন project structure:

src/
├── Main.java
└── CourseInfo.java

Multiple Classes in One Project

একটি project-এর মধ্যে অনেক Java class থাকতে পারে।

Example:

src/
├── Main.java
├── Student.java
├── Course.java
├── Lesson.java
└── GradeCalculator.java

প্রতিটি class-এর আলাদা responsibility থাকতে পারে।

Object-oriented programming শেখার সময় project-এ multiple class ব্যবহার করা হবে।


One Public Class Per File

সাধারণভাবে প্রতিটি public top-level class আলাদা file-এ রাখা হয়।

Example:

Student.java:

public class Student {
}

Course.java:

public class Course {
}

একই file-এ multiple public top-level class রাখা যায় না।

ভুল:

public class Student {
}

public class Course {
}

এগুলো আলাদা file-এ রাখা উচিত।


Package সম্পর্কে প্রাথমিক ধারণা

Package related class organize করতে ব্যবহৃত হয়।

Example:

package com.liveklass.foundation;

Package ব্যবহার করলে directory structure হতে পারে:

src/
└── com/
    └── liveklass/
        └── foundation/
            └── Main.java

এই lesson-এ package ব্যবহার বাধ্যতামূলক নয়।

Packages পরবর্তী lesson বা module-এ বিস্তারিত শেখানো হবে।


Project View and Packages View

IntelliJ IDEA Project panel-এ বিভিন্ন view থাকতে পারে।

যেমন:

Project
Packages
Project Files

Project View

Actual file এবং folder structure-এর কাছাকাছি view দেখায়।

Packages View

Java package অনুযায়ী class organize করে দেখায়।

Beginner হিসেবে Project view ব্যবহার করা সহজ।


Creating a Project Without IntelliJ IDEA

Java project terminal এবং text editor ব্যবহার করেও তৈরি করা যায়।


Step 1: Folder তৈরি করুন

mkdir first-java-project
cd first-java-project

Step 2: Source Folder তৈরি করুন

mkdir src

Structure:

first-java-project/
└── src/

Step 3: Main.java তৈরি করুন

src/Main.java

Code:

public class Main {

    public static void main(String[] args) {
        System.out.println("Hello Java");
    }
}

Step 4: Compile করুন

javac src/Main.java

Step 5: Run করুন

java -cp src Main

Output:

Hello Java

IDE একই ধরনের কাজ easier interface দিয়ে করে।


IDE বনাম Terminal

IDE ব্যবহার করলে

সুবিধা:

  • Code completion
  • Error highlighting
  • Project navigation
  • Automatic compilation
  • Debugging
  • Refactoring
  • Integrated terminal

Terminal ব্যবহার করলে

সুবিধা:

  • Compilation flow পরিষ্কার বোঝা যায়
  • Command-line skill তৈরি হয়
  • Environment problem diagnose করা সহজ
  • Build process সম্পর্কে ধারণা হয়

একজন Java developer-এর IDE এবং terminal—দুটিই ব্যবহার করতে জানা উচিত।


Your First Complete Program

নিচের code Main.java-তে লিখুন:

public class Main {

    public static void main(String[] args) {
        System.out.println("================================");
        System.out.println("Java and OOP Foundation");
        System.out.println("================================");
        System.out.println("My first Java project is running.");
        System.out.println("I am ready to learn Java.");
        System.out.println("================================");
    }
}

Expected output:

================================
Java and OOP Foundation
================================
My first Java project is running.
I am ready to learn Java.
================================

Adding Simple Information

Code পরিবর্তন করুন:

public class Main {

    public static void main(String[] args) {
        System.out.println("Course: Java and OOP Foundation");
        System.out.println("Module: Programming and Java Fundamentals");
        System.out.println("Language: Bangla");
        System.out.println("Status: Project created successfully");
    }
}

Expected output:

Course: Java and OOP Foundation
Module: Programming and Java Fundamentals
Language: Bangla
Status: Project created successfully

Simple Output Formatting

Text combine করতে + operator ব্যবহার করা যায়।

Example:

public class Main {

    public static void main(String[] args) {
        System.out.println("Course: " + "Java and OOP Foundation");
        System.out.println("Module number: " + 1);
        System.out.println("Environment ready: " + true);
    }
}

Output:

Course: Java and OOP Foundation
Module number: 1
Environment ready: true

এখানে + text combine করতে ব্যবহৃত হয়েছে।

Variable এবং operator পরবর্তী lessonগুলোতে বিস্তারিত শেখানো হবে।


Rebuilding the Project

কখনো IDE compiled output rebuild করতে পারে।

Menu option থাকতে পারে:

Build
→ Build Project

অথবা:

Build
→ Rebuild Project

Build Project

Modified source code compile করে।

Rebuild Project

Existing compiled output remove করে complete project আবার compile করতে পারে।

Simple project-এ Run করার সময় build automatically হতে পারে।


When Rebuild Is Useful

Rebuild useful হতে পারে যখন:

  • Old compiled file problem করছে
  • IDE source change detect করছে না
  • Classpath inconsistency হয়েছে
  • Generated output outdated
  • Unexplained compilation issue হচ্ছে

তবে প্রতিবার program run করার আগে manual rebuild প্রয়োজন নেই।


Deleting Generated Output

out directory generated হলে এটি delete করা যেতে পারে।

তারপর project run করলে IDE আবার তৈরি করবে।

কিন্তু source directory delete করবেন না।

Safe generated directory:

out/

Important source directory:

src/

Common Project Problems

Problem 1: Project SDK Is Not Defined

Possible message:

Project SDK is not defined

Solution:

File
→ Project Structure
→ Project
→ SDK

Installed JDK select করুন।


Problem 2: No Run Option

Possible causes:

  • Valid main method নেই
  • File source root-এর মধ্যে নেই
  • Java class compile হচ্ছে না
  • Project SDK configured নয়
  • File plain text হিসেবে তৈরি হয়েছে

Check করুন:

public static void main(String[] args)

Problem 3: Cannot Find Symbol

Example:

System.out.println(courseName);

কিন্তু courseName declare করা হয়নি।

Compiler error:

cannot find symbol

Correct:

String courseName = "Java Foundation";

System.out.println(courseName);

Variable পরবর্তী lesson-এ শেখানো হবে।


Problem 4: Semicolon Missing

Wrong:

System.out.println("Hello")

Correct:

System.out.println("Hello");

Problem 5: Wrong File Type

Java class file extension হতে হবে:

.java

Wrong:

Main.txt

Correct:

Main.java

IntelliJ IDEA-তে New Java Class ব্যবহার করলে correct file তৈরি হয়।


Problem 6: Wrong JDK Selected

Project পুরোনো বা unavailable JDK ব্যবহার করলে compilation fail হতে পারে।

Check করুন:

File
→ Project Structure
→ Project SDK

Problem 7: Class Name Case Mismatch

Class:

public class Main {
}

Run command:

java main

Wrong।

Correct:

java Main

Problem 8: Project in a Protected Directory

Project system directory-তে থাকলে file save বা compile fail করতে পারে।

Project user-owned directory-তে move করুন।

Example:

Documents/java-projects

Problem 9: Source Folder Is Not Marked

IntelliJ IDEA-তে src folder source root না হলে:

  1. src folder-এর ওপর right-click করুন
  2. Select করুন:
Mark Directory As
→ Sources Root

Folder icon বা color change হতে পারে।


Problem 10: Running an Old Configuration

IDE পুরোনো class run করলে Run Configuration check করুন।

Toolbar dropdown থেকে correct configuration select করুন।

Example:

Main

তারপর আবার Run করুন।


Good Project Habits

Meaningful Project Name ব্যবহার করুন

ভালো:

java-foundation
grade-calculator
library-management

Meaningful Class Name ব্যবহার করুন

ভালো:

GradeCalculator
StudentManager
CourseApplication

Source File Organize করুন

সব file project root-এ না রেখে source directory ব্যবহার করুন।

Generated File Edit করবেন না

.class এবং out generated content।

Code Regularly Run করুন

অনেক code একসঙ্গে লেখার পর run না করে ছোট change-এর পর run করুন।

Error Message পড়ুন

Error message ignore করবেন না।

Practice Project আলাদা রাখুন

প্রতিটি বড় exercise আলাদা project-এ রাখতে পারেন।


Recommended Course Workspace

আপনার computer-এ একটি main folder তৈরি করতে পারেন:

java-learning/

তার মধ্যে:

java-learning/
├── module-01-fundamentals/
├── module-02-methods/
├── module-03-classes-and-objects/
├── exercises/
└── projects/

Module 1-এর জন্য:

module-01-fundamentals/
├── first-java-project/
├── variables-practice/
├── conditions-practice/
└── loops-practice/

এটি practice code organized রাখতে সাহায্য করবে।


Project Creation Checklist

নিচের checklist complete করুন:

  • IntelliJ IDEA open করা হয়েছে
  • New Java project তৈরি করা হয়েছে
  • Project-এর meaningful name দেওয়া হয়েছে
  • Safe project location select করা হয়েছে
  • Correct JDK select করা হয়েছে
  • src directory তৈরি হয়েছে
  • Main.java class তৈরি হয়েছে
  • Valid main method লেখা হয়েছে
  • System.out.println ব্যবহার করা হয়েছে
  • Program successfully run হয়েছে
  • Expected output পাওয়া গেছে
  • Exit code 0 দেখা গেছে
  • Project folder filesystem-এ খুঁজে পাওয়া গেছে
  • Source এবং compiled file-এর পার্থক্য বোঝা হয়েছে

Practice Exercise 1: Create the Project

IntelliJ IDEA-তে একটি project তৈরি করুন।

Project information:

Project name: java-foundation
Class name: Main

Main.java:

public class Main {

    public static void main(String[] args) {
        System.out.println("Java Foundation project created");
    }
}

Expected output:

Java Foundation project created

Practice Exercise 2: Print Personal Learning Information

একটি program লিখুন, যা নিচের information আলাদা line-এ print করবে:

  • আপনার নাম
  • Course name
  • Module number
  • Current lesson
  • Java শেখার একটি কারণ

Example output:

Name: Sakib
Course: Java and OOP Foundation
Module: 1
Lesson: Creating Your First Java Project
Goal: Learn backend development

নিজের information ব্যবহার করুন।


Practice Exercise 3: Use print and println

নিচের exact output তৈরি করুন:

Java and OOP
Foundation Course

শর্ত:

  • First line তৈরিতে অন্তত দুটি print statement ব্যবহার করুন
  • Second line তৈরিতে println ব্যবহার করুন

Possible structure:

System.out.print(...);
System.out.println(...);
System.out.println(...);

Practice Exercise 4: Add an Empty Line

নিচের output তৈরি করুন:

Java Foundation

First Project

Empty line তৈরি করতে ব্যবহার করুন:

System.out.println();

Practice Exercise 5: Fix the Errors

নিচের code-এর errorগুলো fix করুন:

public class main {

    public static void main(String[] args) {
        System.out.println("Hello Java")
        System.out.println("My first project";
    }
}

Expected output:

Hello Java
My first project

Practice Exercise 6: Create Another Class

একই project-এ নতুন class তৈরি করুন:

CourseInfo

Code:

public class CourseInfo {

    public static void main(String[] args) {
        System.out.println("Course: Java and OOP Foundation");
        System.out.println("Level: Beginner");
        System.out.println("Language: Bangla");
    }
}

Main এবং CourseInfo আলাদাভাবে run করুন।


Practice Exercise 7: Run from the Terminal

Project-এর src directory-তে যান।

Compile করুন:

javac Main.java

Run করুন:

java Main

Answer করুন:

  1. কোন নতুন file তৈরি হয়েছে?
  2. File-এর extension কী?
  3. JVM কোন class run করেছে?
  4. IDE ছাড়া program run হয়েছে কি?

Practice Exercise 8: Find Generated Files

IntelliJ IDEA project folder filesystem-এ open করুন।

Find করুন:

  • Main.java
  • Main.class
  • src
  • out
  • .idea

সব project-এ exact structure একই নাও হতে পারে।

লিখুন কোন file source code এবং কোনটি generated।


Practice Exercise 9: Create a Course Banner

নিচের output তৈরি করুন:

================================
JAVA AND OOP FOUNDATION
================================
Language: Bangla
Level: Beginner
Status: Ready to learn
================================

শুধু System.out.println ব্যবহার করুন।


Practice Exercise 10: Explain the Flow

নিজের ভাষায় লিখুন IntelliJ IDEA-তে Run button চাপার পর কী কী ঘটে।

এই termগুলো ব্যবহার করুন:

  • Source code
  • Compiler
  • Bytecode
  • JVM
  • main method
  • Output

Knowledge Check

Question 1

Java project কী?

Question 2

Source directory-এর উদ্দেশ্য কী?

Question 3

Simple IntelliJ project-এর source directory-এর common নাম কী?

Question 4

একটি নতুন Java class কীভাবে তৈরি করা যায়?

Question 5

Public class-এর নাম Main হলে file-এর নাম কী হবে?

Question 6

Basic Java application-এর entry point কোন method?

Question 7

Standard main method signature কী?

Question 8

Console-এ text print করার জন্য কোন statement ব্যবহার করা যায়?

Question 9

print এবং println-এর মধ্যে পার্থক্য কী?

Question 10

Exit code 0 সাধারণত কী বোঝায়?

Question 11

IntelliJ IDEA Run button চাপলে কি source code সরাসরি CPU execute করে?

Question 12

Compiled Java file-এর extension কী?

Question 13

Source code সাধারণত কোন directory-তে থাকে?

Question 14

Generated .class file manually edit করা উচিত নয় কেন?

Question 15

Project SDK কী?

Question 16

Run option না দেখালে possible কারণ কী?

Question 17

একটি project-এর মধ্যে কি multiple main method থাকতে পারে?

Question 18

Terminal থেকে Main.java compile করার command কী?

Question 19

src directory classpath হিসেবে ব্যবহার করে Main run করার command কী?

Question 20

Java কেন case-sensitive বলা হয়?


Knowledge Check Answers

Answer 1

Java project হলো Java source code, configuration, generated output এবং resource organize করার একটি structure।

Answer 2

Source directory Java source file organize করে এবং IDE-কে বলে কোন file compile করতে হবে।

Answer 3

Common source directory:

src

Answer 4

src folder-এর ওপর right-click করে:

New
→ Java Class

select করা যায়।

Answer 5

File-এর নাম হবে:

Main.java

Answer 6

Basic Java application-এর entry point হলো:

main

method।

Answer 7

Standard signature:

public static void main(String[] args)

Answer 8

Example:

System.out.println("Hello");

Answer 9

print output-এর পরে নতুন line তৈরি করে না। println output-এর পরে নতুন line তৈরি করে।

Answer 10

Exit code 0 সাধারণত program normally complete হয়েছে বোঝায়।

Answer 11

না। Source code প্রথমে compiler bytecode-এ convert করে। তারপর JVM bytecode execute করে এবং underlying machine instruction ব্যবহার করে।

Answer 12

Compiled Java file-এর extension:

.class

Answer 13

Simple project-এ source code সাধারণত:

src

directory-তে থাকে।

Answer 14

.class file compiler-generated bytecode। Source code compile করলে এটি আবার তৈরি এবং replace হয়।

Answer 15

Project SDK হলো project compile এবং run করার জন্য IntelliJ IDEA যে JDK ব্যবহার করে।

Answer 16

Possible কারণ:

  • Valid main method নেই
  • JDK configured নয়
  • File source root-এর মধ্যে নেই
  • Compilation error আছে
  • File Java class নয়

Answer 17

হ্যাঁ। Multiple class-এর মধ্যে আলাদা main method থাকতে পারে। প্রতিটি class আলাদাভাবে run করা যায়।

Answer 18

javac Main.java

Answer 19

Project root থেকে:

java -cp src Main

Answer 20

Java-তে uppercase এবং lowercase letter আলাদা হিসেবে বিবেচিত হয়। তাই Main এবং main একই identifier নয়।


Lesson Summary

এই lesson-এ আমরা শিখেছি:

  • Java project source code এবং configuration organize করে
  • IntelliJ IDEA-তে নতুন Java project তৈরি করা যায়
  • Project create করার সময় name, location এবং JDK select করতে হয়
  • Simple project-এর source directory সাধারণত src
  • Java class তৈরি করতে New Java Class ব্যবহার করা যায়
  • Public class এবং source file-এর নাম match করতে হয়
  • Java class name সাধারণত PascalCase follow করে
  • Basic Java application main method থেকে শুরু হয়
  • System.out.println console-এ output দেখায়
  • print এবং println আলাদাভাবে output format করে
  • IntelliJ IDEA program compile করে JVM-এর মাধ্যমে run করে
  • Exit code 0 normal process completion নির্দেশ করে
  • .java source code এবং .class compiled bytecode আলাদা
  • Generated file manually edit করা উচিত নয়
  • Project SDK compile এবং execution-এর JDK নির্ধারণ করে
  • IDE এবং terminal—দুই জায়গা থেকেই Java program run করা যায়
  • একটি project-এর মধ্যে multiple class থাকতে পারে
  • Source root, classpath এবং run configuration program execution-এ গুরুত্বপূর্ণ
  • Common project error systematicভাবে fix করা যায়

Next Lesson

পরবর্তী lesson-এ আমরা আমাদের প্রথম Java program-এর প্রতিটি অংশ বিস্তারিতভাবে বুঝব।

আমরা শিখব:

  • class কী
  • public keyword কী
  • Main class-এর ভূমিকা
  • main method কী
  • static keyword কেন ব্যবহার করা হয়
  • void কী বোঝায়
  • String[] args কী
  • Statement এবং code block কী
  • System.out.println কীভাবে কাজ করে
  • Java program execution কোথা থেকে শুরু হয়