माइक्रोसॉफ्ट का टाइपस्क्रिप्ट एन्हांसमेंट आपको इंटरनेट ऑफ थिंग्स द्वारा संचालित जटिल सिस्टम विकसित करने में मदद कर सकता है।

डिवाइसस्क्रिप्ट माइक्रोसॉफ्ट रिसर्च का एक अत्याधुनिक नवाचार है। यह सीमित संसाधनों के साथ छोटे पैमाने के इंटरनेट ऑफ थिंग्स (IoT) उपकरणों को समायोजित करने के लिए टाइपस्क्रिप्ट की क्षमताओं का विस्तार करता है।

इसका मुख्य उद्देश्य आपको टाइपस्क्रिप्ट में कोड लिखने और संसाधन-बाधित वातावरण पर तैनाती के लिए अनुकूलित कस्टम बाइटकोड में संकलित करने में सक्षम बनाना है।

डिवाइसस्क्रिप्ट में कंसोल आउटपुट

माइक्रोसॉफ्ट डिवाइसस्क्रिप्ट एक उपयोगकर्ता-अनुकूल कंसोल प्रदान करता है। यह संदेश आउटपुट और सेंसर डेटा की लॉगिंग का समर्थन करता है लेकिन यह एक के रूप में भी कार्य करता है त्रुटि जाँच के लिए मूल्यवान उपकरण.

विभिन्न लॉग स्तरों के साथ संदेशों को लॉग करने के लिए कार्यों की एक श्रृंखला आपके पास उपलब्ध है:

सांत्वना देना.डीबग("डीबग")
सांत्वना देना।लकड़ी का लट्ठा("लकड़ी का लट्ठा")
सांत्वना देना।चेतावनी देना("चेतावनी देना")
सांत्वना देना।गलती("गलती")

कंसोल आउटपुट डिवाइसस्क्रिप्ट टर्मिनल विंडो के भीतर आसानी से दिखाई देता है। यह आपके कोड को चलाने में मूल्यवान अंतर्दृष्टि प्रदान करने और डिबगिंग की प्रक्रिया में सहायता करने में मदद कर सकता है।

instagram viewer

इसके अलावा, डिवाइसस्क्रिप्ट प्रदान करके सेंसर डेटा की लॉगिंग को सरल बनाता है कंसोल.डेटा फ़ंक्शन, जो स्वचालित रूप से लॉग किए गए डेटा में टाइमस्टैम्प जोड़ता है।

निम्नलिखित उदाहरण पर विचार करें:

कॉन्स्ट तापमान = 20;
कॉन्स्ट आर्द्रता = 60;
सांत्वना देना.डेटा({तापमान, आर्द्रता });

लॉग किए गए डेटा तक पहुंचने के लिए, आप पर नेविगेट कर सकते हैं डिवाइसस्क्रिप्ट - डेटा आउटपुट विजुअल स्टूडियो कोड में फलक बनाएं या इसे व्यू मेनू से डाउनलोड करें।

शक्तिशाली स्ट्रिंग फ़ॉर्मेटिंग

का उपयोग करते समय कंसोल.लॉग() डिवाइसस्क्रिप्ट में फ़ंक्शन, आपके पास है स्ट्रिंग्स को प्रारूपित करने के लिए कई विकल्प बेहतर आउटपुट के लिए. निम्नलिखित उदाहरणात्मक उदाहरणों पर विचार करें:

होने देना एक्स = 0;
होने देना य = 4;
सांत्वना देना।लकड़ी का लट्ठा("प्रणाम, विश्व");
सांत्वना देना।लकड़ी का लट्ठा("X का मान है", एक्स, "जबकि Y है", वाई);
सांत्वना देना।लकड़ी का लट्ठा("एक्स =", एक्स, "वाई =", वाई);
सांत्वना देना।लकड़ी का लट्ठा(`एक्स=${x} य=${y}`);
सांत्वना देना।लकड़ी का लट्ठा("एक्स =" + एक्स + " वाई !" + वाई);

डिवाइसस्क्रिप्ट कंपाइलर स्वचालित रूप से रिक्त स्थान सम्मिलित करता है, जिसके परिणामस्वरूप अधिक सुपाठ्य आउटपुट प्राप्त होता है। उदाहरण के लिए, दूसरा और तीसरा उदाहरण सामने आएगा X का मान 7 है जबकि Y का मान 12 है और एक्स=7 वाई=12, क्रमश।

रजिस्टरों में लिखते समय, आप कॉन्सटेनेशन और टेम्पलेट शाब्दिक का भी उपयोग कर सकते हैं। निम्नलिखित कोड स्निपेट पर विचार करें:

कॉन्स्ट स्क्रीन = नया डी.एस. कैरेक्टरस्क्रीन();
होने देना एक्स = 7;
स्क्रीन.संदेश.लिखें("X का मान है" + एक्स);
स्क्रीन.संदेश.लिखें(`एक्स बराबर है ${x}`);

कॉन्सटेनेशन या टेम्प्लेट शाब्दिक का उपयोग करके, आप विभिन्न प्रकार की आवश्यकताओं को पूरा करने के लिए आसानी से गतिशील स्ट्रिंग्स का निर्माण कर सकते हैं।

इसके अलावा, डिवाइसस्क्रिप्ट ऑफ़र करता है डीएस.प्रारूप() उन्नत स्ट्रिंग फ़ॉर्मेटिंग के लिए फ़ंक्शन। आप इस फ़ंक्शन का उपयोग इसके साथ मिलकर कर सकते हैं कंसोल.लॉग() या स्ट्रिंग रजिस्टरों को कॉन्फ़िगर करते समय।

प्रारूप का उपयोग करके तर्कों के लिए प्लेसहोल्डर निर्दिष्ट करें {0}, {1}, {2}, इत्यादि। आप दूसरा अंक जोड़कर भी सटीकता निर्दिष्ट कर सकते हैं।

निम्नलिखित उदाहरण पर गौर करें:

कॉन्स्ट स्क्रीन = नया डी.एस. कैरेक्टरस्क्रीन();
होने देना एक्स = 7;
होने देना य = 12;
सांत्वना देना.लॉग (डीएस.प्रारूप("X, {0} है और Y, {1} है", एक्स, वाई));
सांत्वना देना.लॉग (डीएस.प्रारूप("एक्स = {04}", एक्स));
screen.message.write (ds.format("X लगभग {0} है", एक्स));

ध्यान रखें कि दूसरे अंक के साथ सटीकता निर्दिष्ट करने से सभी परिदृश्यों में दोषरहित परिणाम नहीं मिल सकते हैं।

ग्राहक: सेंसर और एक्चुएटर्स के साथ इंटरेक्शन सक्षम करना

डिवाइसस्क्रिप्ट पारिस्थितिकी तंत्र जैकडैक सेवाओं के माध्यम से सेंसर, एक्चुएटर्स और अन्य हार्डवेयर घटकों के साथ बातचीत को अमूर्त करता है।

यह ढांचा सेंसर को सर्वर के रूप में मानता है, जबकि आपकी स्क्रिप्ट इंटरैक्शन की सुविधा के लिए क्लाइंट को इन सर्वर से जोड़ती है। इस अवधारणा को स्पष्ट करने के लिए, घरेलू हीटिंग सिस्टम नियंत्रक के परिदृश्य पर विचार करें।

हीटिंग सिस्टम में एक रिले शामिल होता है जो भट्टी के संचालन को नियंत्रित करता है, एक तापमान सेंसर और वांछित तापमान को समायोजित करने के लिए एक रोटरी एनकोडर होता है। डिवाइसस्क्रिप्ट में, आप प्रत्येक आवश्यक सेवा के लिए क्लाइंट्स को परिभाषित करते हैं, जिन्हें भूमिकाएँ भी कहा जाता है।

निम्नलिखित कोड स्निपेट पर एक नज़र डालें:

आयात {तापमान, रिले } से"@डिवाइसस्क्रिप्ट/कोर";
कॉन्स्ट थर्मामीटर = नया तापमान();
कॉन्स्ट थर्मामीटर2= नया तापमान();
कॉन्स्ट रिले = नया रिले();

आवश्यक सेवा ग्राहकों को तुरंत चालू करके, जैसे थर्मामीटर, थर्मामीटर2, और रिले, आप संबंधित सर्वर के साथ निर्बाध संचार स्थापित करते हैं।

डिवाइसस्क्रिप्ट हार्डवेयर सर्वर

डिवाइसस्क्रिप्ट में किसी भी हार्डवेयर घटक के साथ इंटरैक्ट करने के लिए, आप सेवा क्लाइंट को नियुक्त करते हैं। हालाँकि, इन हार्डवेयर घटकों की प्रभावी प्रोग्रामिंग के लिए, अंतर्निहित हार्डवेयर पर सेवा सर्वर को आरंभ करना अनिवार्य है।

डिवाइसस्क्रिप्ट सर्वरों की एक विस्तृत श्रृंखला प्रदान करता है @डिवाइसस्क्रिप्ट/सर्वर मॉड्यूल, जिससे इस प्रक्रिया को सुव्यवस्थित किया जा सके।

उदाहरण के लिए, प्रारंभ करें बटन फ़ंक्शन आपको एक विशिष्ट पिन पर एक बटन सर्वर तैनात करने और संबंधित क्लाइंट प्राप्त करने में सक्षम बनाता है। निम्नलिखित उदाहरण पर गौर करें:

आयात { जीपीओ } से"@डिवाइसस्क्रिप्ट/कोर";
आयात { प्रारंभ करें बटन } से"@डिवाइसस्क्रिप्ट/सर्वर";
कॉन्स्ट बटनए = स्टार्टबटन({ नत्थी करना: जीपीआईओ(2),});

इस कोड स्निपेट को अपनी स्क्रिप्ट में शामिल करके, आप पिन 2 (हार्डवेयर-विशिष्ट पहचानकर्ता) के साथ इंटरैक्ट करने की क्षमता प्राप्त करते हैं बटनए ग्राहक। फिर आप बटन दबाने जैसी घटनाओं की सदस्यता ले सकते हैं और अपने IoT एप्लिकेशन के भीतर विशिष्ट क्रियाएं निष्पादित कर सकते हैं।

डिवाइसस्क्रिप्ट के साथ IoT विकास को सशक्त बनाना

डिवाइसस्क्रिप्ट आपको छोटे IoT उपकरणों के लिए टाइपस्क्रिप्ट का लाभ उठाने में सक्षम बनाता है, प्रतिबंधित वातावरण के लिए कोड को अनुकूलित करता है। इसका कंसोल आउटपुट लॉगिंग और डेटा विज़ुअलाइज़ेशन को सरल बनाता है। जैकडेक सेवाओं के माध्यम से हार्डवेयर इंटरैक्शन को अमूर्त करके, यह सेंसर और एक्चुएटर्स के साथ संचार को सुव्यवस्थित करता है।

विज़ुअल स्टूडियो कोड के साथ एकीकृत, डिवाइसस्क्रिप्ट विकास के लिए एक व्यापक वातावरण प्रदान करता है, जो इसे कुशल और सुरक्षित IoT समाधानों के लिए एक मूल्यवान उपकरण बनाता है। डिवाइसस्क्रिप्ट और विज़ुअल स्टूडियो कोड के साथ, आप आत्मविश्वास से IoT समाधान बना सकते हैं जो न केवल कुशल हैं बल्कि संपूर्ण विकास प्रक्रिया के दौरान उच्च स्तर की सुरक्षा भी बनाए रखते हैं।