কন্টাক্ট ম্যানেজমেন্ট সিস্টেম

প্র্যাকটিস প্রোজেক্টস - জাভা প্রোগ্রামিং (Java Programming) - Computer Programming

348

কন্টাক্ট ম্যানেজমেন্ট সিস্টেম হলো একটি সহজ ও কার্যকরী অ্যাপ্লিকেশন, যা ব্যবহারকারীর বিভিন্ন কন্টাক্ট (যেমন নাম, ফোন নম্বর, ইমেইল ইত্যাদি) সংরক্ষণ, আপডেট, খোঁজা এবং মুছে ফেলার কাজ করতে সক্ষম। এটি একটি সাধারণ কনসোল ভিত্তিক প্রোগ্রাম হতে পারে, আবার Java Swing, JavaFX বা Spring Boot ব্যবহার করে একটি GUI বা ওয়েব ভিত্তিক অ্যাপ্লিকেশন হিসেবেও তৈরি করা যেতে পারে।


প্রোজেক্ট বৈশিষ্ট্যসমূহ

  • কন্টাক্ট সংরক্ষণ করা: নতুন কন্টাক্ট যুক্ত করা।
  • কন্টাক্ট খোঁজা: নাম বা ফোন নম্বর অনুযায়ী কন্টাক্ট খুঁজে বের করা।
  • কন্টাক্ট আপডেট করা: কন্টাক্টের নাম, ইমেইল বা ফোন নম্বর পরিবর্তন করা।
  • কন্টাক্ট মুছে ফেলা: একটি কন্টাক্ট ডিলিট করা।
  • সম্পূর্ণ কন্টাক্ট তালিকা: কন্টাক্ট তালিকা প্রদর্শন করা।

কনসোল ভিত্তিক উদাহরণ (কনসোল ইনপুট/আউটপুট এবং ArrayList ব্যবহার করে)

১. প্রথমে একটি Contact ক্লাস তৈরি করুন যা প্রতিটি কন্টাক্টের ডেটা ধারণ করবে।

class Contact {
    private String name;
    private String phoneNumber;
    private String email;

    public Contact(String name, String phoneNumber, String email) {
        this.name = name;
        this.phoneNumber = phoneNumber;
        this.email = email;
    }

    // গেটার ও সেটার মেথড
    public String getName() {
        return name;
    }

    public void setName(String name) {
        this.name = name;
    }

    public String getPhoneNumber() {
        return phoneNumber;
    }

    public void setPhoneNumber(String phoneNumber) {
        this.phoneNumber = phoneNumber;
    }

    public String getEmail() {
        return email;
    }

    public void setEmail(String email) {
        this.email = email;
    }

    @Override
    public String toString() {
        return "Name: " + name + ", Phone: " + phoneNumber + ", Email: " + email;
    }
}

২. এবার একটি ContactManager ক্লাস তৈরি করুন যা কন্টাক্ট ম্যানেজমেন্টের সব কার্যাবলী পরিচালনা করবে।

import java.util.ArrayList;
import java.util.Scanner;

public class ContactManager {
    private ArrayList<Contact> contacts = new ArrayList<>();
    private Scanner scanner = new Scanner(System.in);

    // নতুন কন্টাক্ট যুক্ত করা
    public void addContact() {
        System.out.print("Enter Name: ");
        String name = scanner.nextLine();
        System.out.print("Enter Phone Number: ");
        String phoneNumber = scanner.nextLine();
        System.out.print("Enter Email: ");
        String email = scanner.nextLine();

        Contact contact = new Contact(name, phoneNumber, email);
        contacts.add(contact);
        System.out.println("Contact added successfully!");
    }

    // কন্টাক্ট খোঁজা
    public void searchContact() {
        System.out.print("Enter Name to search: ");
        String name = scanner.nextLine();

        for (Contact contact : contacts) {
            if (contact.getName().equalsIgnoreCase(name)) {
                System.out.println(contact);
                return;
            }
        }
        System.out.println("Contact not found!");
    }

    // কন্টাক্ট আপডেট করা
    public void updateContact() {
        System.out.print("Enter Name to update: ");
        String name = scanner.nextLine();

        for (Contact contact : contacts) {
            if (contact.getName().equalsIgnoreCase(name)) {
                System.out.print("Enter new Phone Number: ");
                contact.setPhoneNumber(scanner.nextLine());
                System.out.print("Enter new Email: ");
                contact.setEmail(scanner.nextLine());
                System.out.println("Contact updated successfully!");
                return;
            }
        }
        System.out.println("Contact not found!");
    }

    // কন্টাক্ট মুছে ফেলা
    public void deleteContact() {
        System.out.print("Enter Name to delete: ");
        String name = scanner.nextLine();

        for (int i = 0; i < contacts.size(); i++) {
            if (contacts.get(i).getName().equalsIgnoreCase(name)) {
                contacts.remove(i);
                System.out.println("Contact deleted successfully!");
                return;
            }
        }
        System.out.println("Contact not found!");
    }

    // কন্টাক্ট তালিকা প্রদর্শন
    public void displayContacts() {
        if (contacts.isEmpty()) {
            System.out.println("No contacts to display.");
        } else {
            for (Contact contact : contacts) {
                System.out.println(contact);
            }
        }
    }
}

৩. মেইন মেথডে ম্যানেজমেন্ট সিস্টেমটি পরিচালনা করা

public class Main {
    public static void main(String[] args) {
        ContactManager manager = new ContactManager();
        Scanner scanner = new Scanner(System.in);
        
        while (true) {
            System.out.println("\nContact Management System");
            System.out.println("1. Add Contact");
            System.out.println("2. Search Contact");
            System.out.println("3. Update Contact");
            System.out.println("4. Delete Contact");
            System.out.println("5. Display All Contacts");
            System.out.println("6. Exit");
            System.out.print("Choose an option: ");
            
            int choice = scanner.nextInt();
            scanner.nextLine(); // newline consume
            
            switch (choice) {
                case 1 -> manager.addContact();
                case 2 -> manager.searchContact();
                case 3 -> manager.updateContact();
                case 4 -> manager.deleteContact();
                case 5 -> manager.displayContacts();
                case 6 -> {
                    System.out.println("Exiting... Goodbye!");
                    scanner.close();
                    return;
                }
                default -> System.out.println("Invalid choice. Please try again.");
            }
        }
    }
}

বৈশিষ্ট্য সমূহ

  1. Add Contact: ব্যবহারকারী নতুন কন্টাক্ট সংরক্ষণ করতে পারবে।
  2. Search Contact: ব্যবহারকারী নাম অনুযায়ী কন্টাক্ট খুঁজতে পারবে।
  3. Update Contact: কোনো কন্টাক্টের তথ্য পরিবর্তন করতে পারবে।
  4. Delete Contact: কোনো কন্টাক্ট মুছে ফেলা যাবে।
  5. Display All Contacts: সব কন্টাক্টের তালিকা দেখা যাবে।

স্কিলস

এই প্রোজেক্টটি করতে গিয়ে আপনি নিচের বিষয়গুলো শিখতে পারবেন:

  • OOP Concepts: ক্লাস, অবজেক্ট, ইনক্যাপসুলেশন।
  • Data Structures: ArrayList ব্যবহার করে ডেটা সংরক্ষণ।
  • File I/O (অ্যাডভান্সড প্রোজেক্টের জন্য): কন্টাক্টগুলোকে ফাইলে সংরক্ষণ করতে চাইলে ফাইল I/O অন্তর্ভুক্ত করতে পারেন।
  • Exception Handling: ইনপুট বা আউটপুট জনিত ত্রুটি হ্যান্ডেল করতে এক্সেপশন হ্যান্ডলিং ব্যবহার করা যায়।

এই প্রোজেক্টটি প্রাথমিক স্তরের প্রোগ্রামারদের জন্য খুবই সহায়ক, যা তাদের Java প্রোগ্রামিংয়ের দক্ষতা বাড়াতে সাহায্য করবে।

Content added By
Promotion

Are you sure to start over?

Loading...