TypeScript Academy · पाठ

नेमस्पेस बनाम मॉड्यूल: आधुनिक उपयोग

समझें कि नेमस्पेस की तुलना में मॉड्यूल को क्यों प्राथमिकता दी जाती है

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

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

स्वागत है

TypeScript में पहले कोड को व्यवस्थित करने के लिए नेमस्पेस (जिन्हें पहले 'आंतरिक मॉ्यूल' कहा जाता था) होते थे। आधुनिक TypeScript में इसके बजाय ES मॉ्यूल का उपयोग किया जाता है। यह पाठ बताता है कि इनमें से प्रत्येक का उपयोग कब उचित है।

नेमस्पेस क्या है

नेमस्पेस, `namespace` कीवर्ड का उपयोग करके संबंधित कोड को किसी नामित कार्यक्षेत्र के अंतर्गत समूहित करने का TypeScript-विशिष्ट तरीका है।
namespace Geometry {
  export interface Point { x: number; y: number; }
  export function distance(a: Point, b: Point): number {
    return Math.sqrt((a.x - b.x) ** 2 + (a.y - b.y) ** 2);
  }
}

नेमस्पेस सदस्यों तक पहुँचना

डॉट नोटेशन का उपयोग करके नेमस्पेस के नाम से उसके सदस्यों तक पहुँचें।
const p1: Geometry.Point = { x: 0, y: 0 };
const p2: Geometry.Point = { x: 3, y: 4 };
const d = Geometry.distance(p1, p2); // 5

नेस्टेड नेमस्पेस

नेमस्पेस को एक-दूसरे के भीतर रखा जा सकता है।
namespace App {
  export namespace Models {
    export interface User { name: string; }
  }
}
const u: App.Models.User = { name: 'Alice' };

नेमस्पेस का विलय

नेमस्पेस घोषणाओं के विलय का समर्थन करते हैं — एक ही नाम वाली दो नेमस्पेस घोषणाओं को मिला दिया जाता है।
namespace Validation {
  export function validate(s: string): boolean { return s.length > 0; }
}
namespace Validation {
  export function sanitize(s: string): string { return s.trim(); }
}

मॉड्यूल को प्राथमिकता क्यों दी जाती है

ES मॉड्यूल JavaScript मानक हैं। सभी बंडलर उनका समर्थन करते हैं, वे ट्री-शेकिंग के लिए कुशल हैं और आधुनिक ब्राउज़र तथा Node.js में मूल रूप से काम करते हैं।

नेमस्पेस का मॉड्यूल समकक्ष

आधुनिक TypeScript में नेमस्पेस बस एक फ़ाइल बन जाता है। जिसे सार्वजनिक रखना है उसे निर्यात करें और बाकी को निजी रखें।
// geometry.ts
export interface Point { x: number; y: number; }
export function distance(a: Point, b: Point): number {
  return Math.sqrt((a.x - b.x) ** 2 + (a.y - b.y) ** 2);
}

घोषणा फ़ाइलों में नेमस्पेस का अब भी उपयोग

वैश्विक लाइब्रेरी के लिए .d.ts घोषणा फ़ाइलों में नेमस्पेस का अब भी व्यापक रूप से उपयोग किया जाता है (जैसे DOM प्रकार और Node.js प्रकार), क्योंकि वे वैश्विक कार्यक्षेत्र का विस्तार करते हैं।
// node.d.ts
declare namespace NodeJS {
  interface ProcessEnv { NODE_ENV?: 'development' | 'production'; }
}

ट्रिपल-स्लैश संदर्भ (विरासत में मिला तरीका)

ES मॉड्यूल से पहले, ट्रिपल-स्लैश निर्देशों का उपयोग अन्य फ़ाइलों का संदर्भ देने के लिए किया जाता था। आज tsconfig में includes और मॉड्यूल आयात उनका स्थान लेते हैं।
/// <reference types="node" />
/// <reference path="./other.d.ts" />

नेमस्पेस का अब भी उपयोग कब करें

नेमस्पेस का उपयोग करें: (1) परिवेशीय वैश्विक प्रकारों के लिए घोषणा फ़ाइलों में, (2) लाइब्रेरी से मौजूद वैश्विक नेमस्पेस का विस्तार करते समय।

नेमस्पेस से मॉड्यूल में स्थानांतरण

`namespace Foo {}` को किसी मॉड्यूल फ़ाइल से बदलें। `/// ` को आयात से बदलें। TypeScript टीम ने इस स्थानांतरण प्रक्रिया का दस्तावेज़ीकरण किया है।

त्वरित जाँच

आधुनिक TypeScript में नेमस्पेस के लिए अनुशंसित विकल्प क्या है?

पुनरावलोकन

नेमस्पेस कोड को किसी नामित कार्यक्षेत्र के अंतर्गत व्यवस्थित करते हैं, लेकिन आधुनिक TypeScript में ये विरासत में मिला तरीका हैं। एप्लिकेशन कोड के लिए ES मॉड्यूल (import/export) का उपयोग करें। वैश्विक प्रकारों के विस्तार के लिए घोषणा फ़ाइलों में नेमस्पेस अब भी उपयोगी हैं।
शुरुआत निःशुल्क

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

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

पाठ्यक्रम
101
पाठ
352

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

क्या “नेमस्पेस बनाम मॉड्यूल: आधुनिक उपयोग” पाठ निःशुल्क है?

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

“नेमस्पेस बनाम मॉड्यूल: आधुनिक उपयोग” में मैं क्या सीखूँगा?

समझें कि नेमस्पेस की तुलना में मॉड्यूल को क्यों प्राथमिकता दी जाती है आप ब्राउज़र में सीधे चलाए जाने वाले व्यावहारिक कोड के साथ TypeScript Academy का अभ्यास करते हैं, और पाठ पूरा करते समय 24/7 एआई ट्यूटर आपके प्रश्नों के उत्तर देता है।

क्या TypeScript Academy शुरू करने के लिए मुझे किसी अनुभव की आवश्यकता है?

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

“नेमस्पेस बनाम मॉड्यूल: आधुनिक उपयोग” पाठ पूरा करने में कितना समय लगता है?

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

क्या मैं इस TypeScript Academy पाठ में कोड लिख और चला सकता हूँ?

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

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

  1. ES मॉड्यूल सिंटैक्स: import और export
  2. री-एक्सपोर्ट और बैरल फ़ाइलें
  3. केवल-प्रकार वाले इम्पोर्ट और एक्सपोर्ट
  4. नेमस्पेस बनाम मॉड्यूल: आधुनिक उपयोग
← TypeScript Academy पर वापस जाएँ