कोणीय जेएस - क्या यह वेब ऐप डेवलपमेंट के लिए आसान है

एक सॉफ्टवेयर डेवलपर के रूप में, आपके पास विकल्पों की एक बड़ी मात्रा है। मेरे लिए दुनिया एक बड़े स्कूल की तरह है: मैं आगे क्या सीखूं?

एक ढांचा जो वर्तमान में एक बड़ी लोकप्रियता प्राप्त कर रहा है वह है कोणीय। संस्करण संख्या बढ़ रही है और समुदाय हमेशा बढ़ रहा है।

कोणीय जेएस

लेकिन आपको AngularJS का उपयोग क्यों करना चाहिए? क्या वेब ऐप डेवलपमेंट के लिए यह आसान है?

कोणीय सामने के अंत के विकास के लिए एक वेब फ्रेमवर्क है जो चौखटे के सभी सामान्य लाभ प्रदान करता है।

AngularJS फ्रेमवर्क दोहराए जाने वाले कार्यों को सरल करता है या उन्हें पूरी तरह से हटा देता है। इसका मतलब है कि कार्यक्षमता जल्दी और उसी तरह से उपलब्ध है, एन्कैप्सुलेटेड है और इसका पुन: उपयोग किया जा सकता है।

AngularJS के साथ वेब विकास के क्या फायदे हैं?

आर्किटेक्चर

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

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

कोणीय प्रारंभिक चरण में डेटा को मॉक करने में सक्षम बनाता है और बैक-एंड डेवलपमेंट डिपार्टमेंट के साथ निकट सहयोग में परिभाषित किए जाने वाले इंटरफेस। एक बार डेटाबेस (और वेब एपीआई) ऊपर और चल रहा है, तो फ्रंट-एंड का उपयोग जल्दी से किया जा सकता है।

यदि आप एक रूपरेखा का उपयोग नहीं करते हैं, तो दृश्य और तर्क अक्सर अपरिभाषित होते हैं। एक तो अक्सर यह महसूस करता है कि पूरी परियोजना को फिर से लिखना बेहतर है क्योंकि एक अब विनिर्देशों को जानता है ... जब तक कि अगले आवश्यक परिवर्तन नहीं किया जाता है।

हालांकि, कोणीय केवल घटकों तक ही सीमित नहीं है, लेकिन कई सेवाओं के साथ किसी भी कार्यक्षमता को एकीकृत करने की संभावना प्रदान करता है जिसे एक दृश्य से अलग किया जाता है। यहां सेवाएं सरल टाइपस्क्रिप्ट कक्षाएं हैं जिन्हें आवश्यक होने पर अपने स्वयं के निर्भरता इंजेक्शन प्रणाली के माध्यम से घटकों में लाया जा सकता है। सेवा का एक अच्छा उदाहरण एक डेटा सेवा है जो वेब APIs के अनुरोध को नियंत्रित करता है और घटकों को डेटा आउटपुट करता है।

सत्र भंडारण भी एक सेवा होगी। बेशक, कार्यक्षमता को एक घटक में भी लागू किया जा सकता है, लेकिन डेटा कार्यक्षमता संभवतः घटकों के पार उपयोग की जाती है - सुराग: कोणीय निर्भरता इंजेक्शन के अत्यंत सरल उपयोग के माध्यम से अच्छा कोड सुनिश्चित करता है: डेवलपर एक सेवा लिखता है और सुनिश्चित करता है कि सुनिश्चित हो। घटक में सेवा का सही उदाहरण उपलब्ध है। जादू!

कार्यशीलता

 कोणीय कई मानक कार्यों के साथ आता है। इन सबसे ऊपर, मैं हमेशा इस बात से चकित होता हूं कि तर्क का उपयोग करके दृश्य में कितनी आसानी से डेटा प्रदर्शित किया जाता है।

ऑटोमैटिक "बाइंडिंग" से व्यूज से लॉजिक (इवेंट्स को टारगेट करना), लॉजिक से व्यू (डोम प्रॉपर्टीज को टारगेट करना) या टू-वे बाइंडिंग (कनेक्टेड दोनों तरीके) से, एंगुलर एक HTML टेम्प्लेट में डायनामिक डेटा ट्रांसफर करने का एक बहुत ही सरल और कारगर तरीका बनाता है प्रदर्शित करते हैं। हेडिंग में वैरिएबल डेटा फ़ील्ड प्रदर्शित करना टेम्प्लेट में एकल अभिव्यक्ति के साथ किया जा सकता है।

मैं एक {{विशेषण}} पाठ हूं

यदि चर 'विशेषण' वर्ग में बदलता है, तो कोणीय स्वचालित रूप से सुनिश्चित करता है कि DOM तत्व अपडेट किया गया है।

इस तरह की अभिव्यक्ति के साथ पूरे यूआई और ईवेंट हैंडलिंग के साथ एक इनपुट से निपटना आसान है:

'MyInput' नामक एक वैरिएबल बनाना पर्याप्त है। कोणीय उपयोगकर्ता इनपुट (उपयोगकर्ता प्रकार) की घटना को रोकने के लिए और इनपुट में डेटा प्रदर्शित करने के लिए एक परिष्कृत परिवर्तन का पता लगाने प्रणाली का उपयोग करता है, उदाहरण के लिए यदि डेटाबेस से 'myInput' पूर्व-असाइन किया गया है।

कोणीय अपने डोमेन को अच्छी तरह से जानता है और यह सुनिश्चित करता है कि http संचार (वेब ​​एपीआई के साथ) यथासंभव आसानी से उपलब्ध है। सभी मानक http कॉल और विभिन्न पैरामीटर सेटिंग्स आपूर्ति किए गए http मॉड्यूल के साथ संभव हैं, ताकि मैं एक अनुरोध के बारे में नहीं सोचूंगा जो इसके साथ ट्रिगर नहीं किया जा सकता है।

इसके अलावा, कोणीय 'rxJS' लाइब्रेरी का उपयोग करता है, जो वादों के विपरीत, वेधशालाओं के साथ काम करता है। यहां बहुत दूर जाने के बिना, यह दृष्टिकोण वादों की तुलना में अधिक आधुनिक और व्यापक है।

प्रौद्योगिकी ढेर

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

सीएलआई डेवलपर के लिए एक शक्तिशाली उपकरण है (और मैं इसके लिए बहुत आभारी हूं)। कोणीय NodeJS स्टैक पर आधारित है, जिसका अर्थ है कि जब विकासशील Angularjs अनुप्रयोगों, आप आमतौर पर अपने स्वयं के वेब सर्वर को स्थानीय रूप से शुरू करेंगे, जो स्रोत फ़ाइलों को संकलित और आउटपुट करता है। बेशक, सब कुछ एक लाइव सिंक है: यदि आप स्रोत फ़ाइलों को बदलते हैं, तो कोणीय-सीएलआई इसे पहचानता है और बिल्ड को अपडेट करता है। विशेष रूप से, इसका अर्थ है: परिवर्तन, सहेजना, देखना - सामने वाले की दुनिया में बहुत उपयोगी है।

विकास और परियोजना निर्भरता के प्रबंधन के लिए, आमतौर पर वेबपैक का उपयोग किया जाता है, जो नोड पैकेज (एनपीएम) का प्रबंधन करता है। नए पैकेजों को डाउनलोड करना, अपडेट करना और इंस्टॉल करना बहुत आसान है - एक एप्लिकेशन इंस्टॉल करना एक ही कमांड के साथ किया जाता है।

इसके अलावा, npm संकुल की एक विशाल संख्या प्रदान करता है, जिसमें व्यक्तिगत घटकों से लेकर पूर्व सीएसएस चौखटे (बूटस्ट्रैप, सामग्री) तक की कार्यक्षमता शामिल है। कोणीय स्वयं भी अपना स्वयं का npm पैकेज है।

टाइपोग्राफी का उपयोग तर्क पृष्ठ पर स्वयं कोणीय अनुप्रयोग लिखने के लिए किया जाता है - एक ऐसी भाषा जिसे जावास्क्रिप्ट में ट्रांसप्लड किया जाता है और जिसके लिए निम्नलिखित लागू होता है: प्रत्येक जावास्क्रिप्ट अभिव्यक्ति एक मान्य टाइपस्क्रिप्ट अभिव्यक्ति है (लेकिन दूसरे तरीके से नहीं)।

अनुकूलन क्षमता

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

कुछ अन्य रूपरेखाओं का उपयोग करते समय, मैंने अक्सर देखा है कि कुछ निर्देश या कथन (और होना चाहिए) को बार-बार लागू किया जाता है। कोणीय में, केवल आवेदन का प्रवेश बिंदु अनिवार्य है। प्रत्येक घटक के लिए केवल टेम्प्लेट और CSS फ़ाइल के लिंक होते हैं और जिस नाम की आवश्यकता होती है - बाकी एक वास्तविक टाइपस्क्रिप्ट क्लास (वंशानुक्रम के बिना) है। हालांकि, यदि आप एक सेवा लिखते हैं तो आप इसे लागू करने के लिए पूरी तरह से स्वतंत्र हैं। इसी तरह, टेम्प्लेट और सीएसएस में सर्वोत्तम अभ्यास और अभिसमय होते हैं, लेकिन बहुत कम या बिना किसी मजबूरी के।

समुदाय

 अंतिम लेकिन कम से कम, कोणीय चीजों के बारे में सबसे अच्छी चीजों में से एक: यह बहुत लोकप्रिय है।

ज़रूर, जैसे कि Google सही नहीं है, वैसे ही Angular सही नहीं है, लेकिन Google की तरह, Angular भी बहुत सामान्य है। और इसके कुछ फायदे हैं।

एक ओर, विकास के दौरान आने वाली समस्याओं के साथ मदद का एक बड़ा हिस्सा है। ट्यूटोरियल, संसाधन, किताबें या स्टैक ओवरफ्लो प्रविष्टियों के साथ-साथ कार्यशालाएं और बैठकें।

दूसरी ओर, यह बहुत लोकप्रियता के साथ सुनिश्चित किया जाता है कि कोणीय का विकास जारी रहेगा। Google यह दान करने के लिए नहीं करता है, लेकिन, निश्चित रूप से, शक्ति प्राप्त करने के लिए। यदि कोणीय का उपयोग एक निश्चित मूल्य से नीचे आता है, तो यह परियोजना के आगे के विकास के लिए सार्थक नहीं रह जाता है। और हम सभी जानते हैं कि इंटरनेट में कितनी जल्दी शांत प्रौद्योगिकी डूब जाती है क्योंकि कोई भी उनका उपयोग नहीं करता है।

निष्कर्ष

व्यक्तिगत रूप से, मुझे यह कहना होगा कि मुझे कोणीय के साथ अनुप्रयोग विकसित करने में आनंद आता है। मुझे आशा है कि आपने अपने प्रश्न का उत्तर "AngularJS - वेब ऐप विकास के लिए आसान है?" पाया है। इस लेख में बहुत कुछ अभी तक उल्लेख नहीं किया गया है, उदाहरण के लिए स्वचालित परीक्षण (जैस्मीन, कर्मा, प्रोट्रैक्टर) का उत्कृष्ट विकल्प या आप आसानी से क्रॉस-प्लेटफ़ॉर्म ऐप विकसित कर सकते हैं (एंड्रॉइड, आईओएस) कोणीय के साथ, लेकिन वह दायरे से परे होगा।

मैं केवल सभी को सलाह दे सकता हूं कि कोणीय को एक कोशिश देने और इसके साथ खेलने के लिए।