Short এবং Long Options ব্যবহারের কৌশল

Command Line Option তৈরির পদ্ধতি - অ্যাপাচি কমন্স সিআলআই (Apache Commons CLI) - Java Technologies

295

Apache Commons CLI লাইব্রেরি কমান্ড লাইন ইন্টারফেস (CLI) তৈরি করতে ব্যবহৃত হয় এবং এটি Short Options (একক অক্ষরের অপশন) এবং Long Options (পূর্ণ অক্ষরের অপশন) সমর্থন করে। এই অপশনগুলি ব্যবহারকারীদের ইনপুট হিসেবে নির্দিষ্ট আর্গুমেন্ট বা অপশন নির্বাচন করার সুযোগ দেয়, যা অ্যাপ্লিকেশনটির আচরণ কাস্টমাইজ করতে সহায়তা করে।

এখানে Short Options এবং Long Options ব্যবহারের কৌশল দেখানো হবে।


1. Short Options এবং Long Options এর মধ্যে পার্থক্য

  • Short Option: একক অক্ষরের অপশন, সাধারণত একটি হাইফেন (-) দিয়ে শুরু হয়। যেমন: -h, -f ইত্যাদি।
  • Long Option: পূর্ণ শব্দের অপশন, যা দুইটি হাইফেন (--) দিয়ে শুরু হয়। যেমন: --help, --file ইত্যাদি।

2. Apache Commons CLI এর মাধ্যমে Short এবং Long Options ব্যবহার

এখানে Apache Commons CLI ব্যবহার করে Short Options এবং Long Options এর মাধ্যমে কমান্ড লাইন আর্গুমেন্ট প্রক্রিয়া করার একটি উদাহরণ দেওয়া হলো।

কমান্ড লাইন অপশন কনফিগারেশন

import org.apache.commons.cli.*;

public class CLIExample {
    public static void main(String[] args) {
        // Create options object
        Options options = new Options();

        // Add short and long options
        options.addOption("h", "help", false, "Show help");
        options.addOption("f", "file", true, "Input file");
        options.addOption("v", "verbose", false, "Verbose output");

        // Create parser
        CommandLineParser parser = new DefaultParser();
        CommandLine cmd = null;

        try {
            // Parse the command line arguments
            cmd = parser.parse(options, args);

            // Check if help option is present
            if (cmd.hasOption("h")) {
                HelpFormatter formatter = new HelpFormatter();
                formatter.printHelp("CLIExample", options);
            }

            // Check for file option and print file value
            if (cmd.hasOption("f")) {
                System.out.println("File: " + cmd.getOptionValue("f"));
            }

            // Check for verbose flag
            if (cmd.hasOption("v")) {
                System.out.println("Verbose mode enabled");
            }

        } catch (ParseException e) {
            System.err.println("Error parsing command line arguments: " + e.getMessage());
        }
    }
}

ব্যাখ্যা:

  • Short Option:
    • -h অথবা -f এমন অপশন যা একক অক্ষরের মাধ্যমে নির্দিষ্ট করা হয়।
    • options.addOption("h", "help", false, "Show help");-h এবং --help অপশন একসাথে তৈরি করা হয়েছে। এই অপশনটি কোনো আর্গুমেন্ট গ্রহণ করে না।
    • options.addOption("f", "file", true, "Input file"); এখানে -f এবং --file অপশন যোগ করা হয়েছে, যেখানে true মানে হল যে এটি একটি আর্গুমেন্ট গ্রহণ করবে।
  • Long Option:
    • --help এবং --file অপশনগুলোকে পূর্ণ শব্দ হিসাবে ব্যবহৃত করা হয়, যা অধিক বোধগম্য এবং পরিষ্কার।
  • CommandLineParser:
    • DefaultParser ব্যবহার করে আর্গুমেন্ট পার্স করা হয় এবং পরবর্তী ধাপে কমান্ড লাইনে প্রাপ্ত অপশন অনুযায়ী কার্যক্রম পরিচালনা করা হয়।
  • HelpFormatter:
    • যদি -h বা --help অপশন দেওয়া হয়, তাহলে HelpFormatter দিয়ে অপশনের সাহায্য নিয়ে হেল্প মেসেজ প্রদর্শন করা হয়।

3. Command Line Example

এখন, আমরা যদি উপরের প্রোগ্রামটি কমান্ড লাইনে রান করি, তবে কিছু উদাহরণ দেখানো হবে:

1. হেল্প অপশন ব্যবহার (Short and Long)

Command:

java CLIExample -h

অথবা

java CLIExample --help

Output:

CLIExample [options]
Options:
  -h, --help      Show help
  -f, --file      Input file
  -v, --verbose   Verbose output

2. ফাইল অপশন ব্যবহার (Short and Long)

Command:

java CLIExample -f myfile.txt

অথবা

java CLIExample --file myfile.txt

Output:

File: myfile.txt

3. Verbose Mode ব্যবহার (Short Option)

Command:

java CLIExample -v

Output:

Verbose mode enabled

4. চেকিং Multiple Options

আপনি একাধিক অপশন একসাথে ব্যবহার করতে পারেন। উদাহরণস্বরূপ, -f, -v, এবং -h অপশন একসাথে দেওয়া হতে পারে।

Command:

java CLIExample -f myfile.txt -v

Output:

File: myfile.txt
Verbose mode enabled

এখানে, -v অপশনটি verbose mode সক্ষম করেছে এবং -f অপশনটি ফাইলের নাম দেখিয়েছে।


5. Default Value এবং Conditional Logic

যদি কোনো অপশন না দেওয়া হয়, তবে আপনি default value সেট করতে পারেন এবং আর্গুমেন্ট বা অপশন অনুপস্থিত থাকলে নির্দিষ্ট শর্তে আচরণ পরিবর্তন করতে পারেন।

if (!cmd.hasOption("f")) {
    System.out.println("No file provided, using default file.");
}

এটি নিশ্চিত করবে যে যদি -f বা --file অপশনটি না দেওয়া হয়, তাহলে আপনি ডিফল্ট ফাইল ব্যবহার করতে পারবেন।


সারাংশ

Apache Commons CLI লাইব্রেরি ব্যবহার করে আপনি Short Options এবং Long Options যোগ করতে পারবেন এবং ক্লিন ও কার্যকরী CLI ইন্টারফেস তৈরি করতে পারবেন। Options.addOption() এর মাধ্যমে আপনি কমান্ড লাইন অপশন এবং আর্গুমেন্ট সংজ্ঞায়িত করতে পারেন, এবং CommandLineParser ব্যবহার করে সেই অপশনগুলি পার্স করতে পারেন। এই কৌশলগুলো ব্যবহার করে আপনি অ্যাপ্লিকেশনের ফ্লেক্সিবিলিটি এবং ইউজার এক্সপেরিয়েন্স উন্নত করতে পারবেন।

Content added By
Promotion

Are you sure to start over?

Loading...