أدوات CLI بلغة Java: تحويل الكود الممل إلى أداة حقيقية
\n\nهل تذكر ذلك الشعور عندما تكتب خوارزمية مفيدة بلغة Java، ولكن لاستخدامها تضطر في كل مرة إلى فتح بيئة التطوير المتكاملة (IDE)، وتغيير القيم الثابتة (hardcode)، وإعادة التشغيل مرة أخرى؟ هل هذا مألوف؟ حان الوقت لإصلاح ذلك. اليوم سنتحدث عن كيفية إنشاء أدوات CLI بلغة Java تعمل مثل الأدوات الاحترافية الحقيقية.
\n\nCLI (واجهة سطر الأوامر) ليست مجرد "نافذة سوداء بها نص". إنها واجهة قوية للغاية يحبها مسؤولو الأنظمة ومهندسو DevOps والمطورون ذوو الخبرة. وجافا هنا ليست متخلفة: فباستخدامها يمكنك إنشاء تطبيقات وحدة تحكم لا تقل سهولة عن واجهات المستخدم الرسومية (GUI)، بل وتتفوق عليها في السرعة والمرونة.
\n\nفي هذه المقالة، سنشرح إنشاء أدوات CLI بلغة Java من الألف إلى الياء. ستتعلم كيفية معالجة وسائط سطر الأوامر، وكيفية تحليل المعاملات المعقدة، وكيفية تجميع ملف JAR جاهز يمكن تشغيله بأمر واحد. هيا بنا!
\n\nلماذا تعتبر Java رائعة لـ CLI؟
\n\nيعتقد الكثيرون أن CLI هي حكر على Python أو Bash. لكن تطبيقات Java لوحدة التحكم لها مزايا لا يمكن إنكارها:
\n\n- \n
- التوافق عبر المنصات: ستعمل أداتك على Windows وLinux وmacOS دون أي تعديل في الكود. \n
- الأداء العالي: الترجمة في الوقت المناسب (JIT) تجعل برامج Java سريعة جدًا. \n
- النظام البيئي الغني: مكتبات لتحليل الوسائط، والعمل مع الشبكة، وقواعد البيانات - كل شيء في متناول اليد. \n
- أمان الأنواع: يكتشف المترجم الأخطاء قبل وصولها إلى بيئة الإنتاج. \n
دعنا ننتقل إلى التطبيق العملي وننشئ أول أداة CLI بلغة Java لدينا.
\n\nإعداد المشروع والهيكل الأساسي
\n\nفي البداية، سننشئ هيكلًا بسيطًا. سنحتاج إلى Maven أو Gradle (سأستخدم Maven لأنه أسهل للفهم).
\n\nالخطوة 1: إنشاء مشروع Maven
\n\nأنشئ ملف pom.xml بالتكوين الأدنى:
<project xmlns="http://maven.apache.org/POM/4.0.0"\n xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"\n xsi:schemaLocation="http://maven.apache.org/POM/4.0.0\n http://maven.apache.org/xsd/maven-4.0.0.xsd">\n <modelVersion>4.0.0</modelVersion>\n <groupId>com.pythonlib</groupId>\n <artifactId>file-utils</artifactId>\n <version>1.0-SNAPSHOT</version>\n <packaging>jar</packaging>\n\n <properties>\n <maven.compiler.source>17</maven.compiler.source>\n <maven.compiler.target>17</maven.compiler.target>\n </properties>\n\n <build>\n <plugins>\n <plugin>\n <groupId>org.apache.maven.plugins</groupId>\n <artifactId>maven-jar-plugin</artifactId>\n <configuration>\n <archive>\n <manifest>\n <mainClass>com.pythonlib.Main</mainClass>\n </manifest>\n </archive>\n </configuration>\n </plugin>\n </plugins>\n </build>\n</project>\n\nالخطوة 2: كتابة فئة Main بسيطة
\n\nأنشئ ملف src/main/java/com/pythonlib/Main.java:
package com.pythonlib;\n\npublic class Main {\n public static void main(String[] args) {\n System.out.println("مرحبًا، هذه أداة CLI بلغة Java!");\n System.out.println("عدد الوسائط المُمررة: " + args.length);\n for (int i = 0; i < args.length; i++) {\n System.out.println("args[" + i + "] = " + args[i]);\n }\n }\n}\n\nقم بتجميع المشروع: m