Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास · पाठ

Leiningen और Deps.edn की मूल बातें

परियोजना निर्माण, निर्भरता प्रबंधन और कार्य स्वचालन के लिए Leiningen और Deps.edn की मूल बातें समझें

पाठ 1, कुल 4 में से12 चरण

Leiningen और Deps.edn की मूल बातें, CoddyKit पर Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास का एक निःशुल्क पाठ है। यह 4 में से 1वाँ पाठ है। आप नीचे पूरा पाठ निःशुल्क पढ़ सकते हैं—फिर अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर के साथ ब्राउज़र में इसका व्यावहारिक अभ्यास कर सकते हैं। यह Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास सीखने के मार्ग का हिस्सा है और आपकी प्रगति वेब तथा CoddyKit ऐप पर सिंक होती रहती है। Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

Clojure को Build Tools की आवश्यकता क्यों है

Clojure में dependencies प्रबंधित करने, code compile करने, tests चलाने और application को package करने जैसे कार्यों को स्वचालित करने के लिए build tools आवश्यक हैं। वे project setup को सरल बनाते हैं और एकरूपता सुनिश्चित करते हैं।

इनके बिना आपको libraries को मैन्युअल रूप से download करना, classpaths सेट करना और JVM को चलाना पड़ता, जो किसी भी साधारण से अधिक जटिल project के लिए जल्दी ही कठिन हो जाता है।

Leiningen: Clojure का मुख्य कार्य-उपकरण

Leiningen Clojure परियोजनाओं के लिए एक लोकप्रिय और परिपक्व बिल्ड ऑटोमेशन टूल है। यह Maven से प्रेरित है और नई परियोजनाएँ बनाने से लेकर उन्हें परिनियोजित करने तक, सब कुछ संभालता है।

इसकी मुख्य कॉन्फ़िगरेशन फ़ाइल project.clj है, जो स्वयं एक Clojure डेटा संरचना है। इससे यह बहुत लचीली बन जाती है।

Leiningen परियोजना बनाना

आप lein new कमांड का उपयोग करके एक नया Leiningen एप्लिकेशन प्रोजेक्ट बना सकते हैं। यह कमांड बॉयलरप्लेट कोड के साथ एक मानक डायरेक्टरी संरचना तुरंत तैयार कर देता है।

अपने टर्मिनल में यह कमांड चलाएँ:

lein new app my-lein-app

project.clj के अंदर

project.clj फ़ाइल आपकी परियोजना का मेटाडेटा और कॉन्फ़िगरेशन निर्धारित करती है। इसके मुख्य तत्व हैं:

  • :dependencies: आपकी परियोजना के लिए आवश्यक बाहरी लाइब्रेरी की सूची।
  • :main: आपके एप्लिकेशन के मुख्य प्रवेश बिंदु को निर्दिष्ट करता है।
  • :version: आपकी परियोजना का वर्तमान संस्करण।

यह Clojure सिंटैक्स में लिखी जाती है, जिससे शक्तिशाली और गतिशील कॉन्फ़िगरेशन संभव होते हैं।

(defproject my-lein-app "0.1.0-SNAPSHOT"
  :description "A sample Leiningen project."
  :url "http://example.com/FIXME"
  :dependencies [[org.clojure/clojure "1.11.1"]]
  :main ^:skip-aot my-lein-app.core
  :target-path "target/%s")

Leiningen के साथ पहली बार चलाना

अपनी परियोजना बनाने के बाद, Leiningen आपके एप्लिकेशन को चलाने का आसान तरीका देता है। lein run कमांड project.clj में निर्दिष्ट मुख्य फ़ंक्शन को चलाता है।

यहाँ डिफ़ॉल्ट core.clj सामग्री दी गई है, जिसे lein new app तैयार करता है। इसे चलाकर देखें!

(ns my-lein-app.core
  (:gen-class))

(defn -main
  "The entry point for our Leiningen app."
  [& args]
  (println "Hello from Leiningen!"))

Deps.edn: आधिकारिक टूल

deps.edn Clojure का आधिकारिक और अधिक हल्का निर्भरता प्रबंधन तथा बिल्ड टूल है, जिसे Clojure 1.9 के साथ पेश किया गया था। इसका ध्यान केवल निर्भरताओं और क्लासपाथ को प्रबंधित करने पर होता है।

यह अपने कॉन्फ़िगरेशन के लिए EDN (Extensible Data Notation) का उपयोग करता है, जो Clojure का एक उपसमुच्चय है। इससे इसे पढ़ना और पार्स करना आसान होता है।

Deps.edn परियोजना सेट अप करना

Leiningen के विपरीत, deps.edn में परियोजनाओं का ढाँचा तैयार करने के लिए new कमांड नहीं है। आमतौर पर आवश्यक फ़ाइलें और डायरेक्टरी आपको स्वयं बनानी होती हैं।

एक न्यूनतम परियोजना के लिए परियोजना के रूट में deps.edn फ़ाइल और आपके कोड के लिए एक स्रोत डायरेक्टरी (जैसे, src) आवश्यक होती है।

deps.edn के अंदर

deps.edn फ़ाइल आपकी परियोजना की निर्भरताएँ और स्रोत पथ निर्धारित करती है। इसके मुख्य तत्व हैं:

  • :paths: उन डायरेक्टरियों का वेक्टर जहाँ आपका स्रोत कोड मौजूद है।
  • :deps: बाहरी लाइब्रेरी और उनके संस्करणों का मानचित्र, जिसमें आमतौर पर Maven निर्देशांकों का उपयोग किया जाता है।

यह project.clj से सरल है और इसका ध्यान क्लासपाथ बनाने पर होता है।

{:paths ["src"]
 :deps {org.clojure/clojure {:mvn/version "1.11.1"}
        org.clojure/tools.cli {:mvn/version "1.0.206"}}}

Deps.edn के साथ पहली बार चलाना

deps.edn परियोजना चलाने के लिए आप clj कमांड (Clojure CLI टूल) का उपयोग करते हैं। आप -m का उपयोग करके मुख्य नेमस्पेस निर्दिष्ट करते हैं।

यहाँ एक सरल core.clj फ़ाइल है, जिसे clj -m my-deps-app.core के साथ चलाया जा सकता है। इसे आज़माकर देखें!

(ns my-deps-app.core
  (:gen-class))

(defn -main
  "The entry point for our deps.edn app."
  [& args]
  (println "Hello from deps.edn!"))

Leiningen बनाम Deps.edn

Leiningen और deps.edn दोनों उत्कृष्ट टूल हैं, लेकिन इनके दृष्टिकोण थोड़े अलग हैं:

  • Leiningen: एक सर्वसमावेशी परियोजना प्रबंधक, जिसमें विभिन्न कार्यों (परीक्षण, परिनियोजन आदि) के लिए व्यापक प्लगइन समर्थन है।
  • deps.edn: निर्भरता और क्लासपाथ प्रबंधन के लिए एक सरल, केंद्रित टूल, जिसका उपयोग अक्सर विशिष्ट कार्यों के लिए अन्य CLI टूल के साथ किया जाता है।

कई आधुनिक Clojure परियोजनाएँ इसकी सरलता और सीधेपन के कारण deps.edn का उपयोग करती हैं, कभी-कभी Leiningen के साथ भी।

बिल्ड टूल ज्ञान जाँच

Leiningen और deps.edn के मुख्य उद्देश्य तथा कॉन्फ़िगरेशन के तरीकों पर विचार करें।

पुनरावलोकन: Leiningen और Deps.edn की मूल बातें

हमने Clojure के दो प्रमुख बिल्ड टूल की मूल बातों को समझा:

  • Leiningen: कॉन्फ़िगरेशन के लिए project.clj का उपयोग करने वाला पूर्ण-सुविधायुक्त टूल, जो परियोजना निर्माण और कार्य स्वचालन की सुविधा देता है।
  • deps.edn: क्लासपाथ और निर्भरता प्रबंधन के लिए deps.edn का उपयोग करने वाला हल्का, आधिकारिक टूल, जिसे आमतौर पर clj CLI के साथ इस्तेमाल किया जाता है।

Clojure परियोजनाओं को कुशलता से प्रबंधित करने के लिए दोनों महत्वपूर्ण हैं। इनसे आप अपनी परियोजना की आवश्यकताओं के आधार पर सही टूल चुन सकते हैं।

शुरुआत निःशुल्क

एआई शिक्षक के साथ Clojure सीखें — निःशुल्क

अपने ब्राउज़र में वास्तविक कोड लिखें और चलाएँ, चौबीसों घंटे एआई शिक्षक से तुरंत सहायता पाएँ, और वेब या ऐप पर वहीं से शुरू करें जहाँ आपने छोड़ा था।

पाठ्यक्रम
12
पाठ
48

अक्सर पूछे जाने वाले प्रश्न

क्या “Leiningen और Deps.edn की मूल बातें” पाठ निःशुल्क है?

हाँ—“Leiningen और Deps.edn की मूल बातें” का पूरा पाठ यहाँ वेब पर निःशुल्क पढ़ा जा सकता है। इंटरैक्टिव अभ्यास (अंतर्निहित कोड संपादक और 24/7 एआई ट्यूटर) करने और Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास पाठ्यक्रम का बाकी हिस्सा अनलॉक करने के लिए CoddyKit PRO लें। Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास पाठ्यक्रम में कुल 4 पाठ शामिल हैं।

“Leiningen और Deps.edn की मूल बातें” में मैं क्या सीखूँगा?

परियोजना निर्माण, निर्भरता प्रबंधन और कार्य स्वचालन के लिए Leiningen और Deps.edn की मूल बातें समझें आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

पहले के अनुभव की आवश्यकता नहीं है। CoddyKit पर Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास शुरुआती से लेकर उन्नत शिक्षार्थियों तक सभी के लिए व्यवस्थित किया गया है, इसलिए आप यहीं से या शुरुआत से सीखना शुरू कर सकते हैं और अपनी गति से आगे बढ़ सकते हैं। यह 4 में से 1वाँ पाठ है।

“Leiningen और Deps.edn की मूल बातें” पाठ पूरा करने में कितना समय लगता है?

CoddyKit का अधिकांश पाठ लगभग 5–10 मिनट में पूरा हो जाता है। हर पाठ छोटा और संवादात्मक है, इसलिए आप लगातार प्रगति करते हैं और वेब या ऐप पर वहीं से सीखना जारी रख सकते हैं जहाँ आपने छोड़ा था।

क्या मैं इस Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास पाठ में कोड लिख और चला सकता हूँ?

हाँ। हर Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास पाठ में एक अंतर्निर्मित कोड संपादक शामिल है, जिससे आप सीधे अपने ब्राउज़र में वास्तविक कोड लिख और चला सकते हैं और तुरंत एआई प्रतिक्रिया पा सकते हैं—स्थानीय सेटअप की आवश्यकता नहीं है।

इस पाठ्यक्रम के सभी पाठ

  1. Leiningen और Deps.edn की मूल बातें
  2. निर्भरताओं और प्लगइन का प्रबंधन
  3. बिल्ड, परीक्षण और परिनियोजन
  4. प्रोफ़ाइल, उपनाम और वातावरण प्रबंधित करना
← Clojure में कार्यात्मक प्रोग्रामिंग और JVM बैकएंड विकास पर वापस जाएँ