कोणीय-बीज डे-फैक्टो के साथ शुरू करने के लिए खाली परियोजना है?


82

Angular.js सीखने और उपयोग करने के लिए आश्वस्त होने के बाद, मैं अनुभव के सीखने के पहिये को लॉन्च करने के लिए एक ठोस वेब यूआई एप्लिकेशन शुरू करने जा रहा था। (एप्लिकेशन सूची, अनुस्मारक, pomodoro तकनीक उन्मुख, और इतने पर करने के लिए, व्यक्तिगत योजना के कुछ प्रकार होने जा रहा है ...)

कोणीय के लेखक द्वारा देखे गए ट्यूटोरियल वीडियो में से एक, सर्वोत्तम प्रथाओं के बारे में है। और सबसे अच्छी प्रथाओं में से एक angular-seedपरियोजना के साथ शुरू करना है ।

यह वही है जो मैं करने जा रहा था, लेकिन थोड़ा पीछे हटने के बाद, पहले से ही कम से कम दो अन्य परियोजनाएं हैं जो अच्छे शुरुआती बिंदु होने का दावा करते हैं:

  • angular-enterprise-seed
  • angular-sprout

मैं शुरुआत कर रहा हूं, लेकिन मुझे लंबी अवधि में निवेश करना पसंद है। क्या मुझे किसी और चीज़ के इस्तेमाल की चिंता करनी चाहिए angular-seed? मुझे ऐसा लगता है कि यह सवाल खुद से पूछना बहुत जल्दी है, लेकिन अगर पहले से ही दो अन्य परियोजनाएं हैं, तो शायद कुछ अच्छे कारण हैं।


1
मुझे लगता है कि सामान्य रूप से शुरुआती बिंदु के रूप में टेम्प्लेट का उपयोग करने के बारे में 'सर्वोत्तम प्रथाओं' की बात अधिक थी, न कि कुछ विशिष्ट टेम्पलेट के बारे में। हां, angular-sproutइसके कुछ फायदे हैं, लेकिन मेरी राय में, आप angular-seedसीखने के उद्देश्यों के लिए उपयोग कर सकते हैं।
बारिश 7

मैंने templateप्रश्न से शब्द हटाने के लिए संपादन किया । नहीं, वास्तव में, लेखक ने शुरुआत के रूप में कोणीय-बीज का उपयोग करने पर जोर दिया, ताकि इसके फ्रेम पर आवेदन का निर्माण किया जा सके (इसलिए मैंने शब्द टेम्पलेट का उपयोग किया था, html टेम्पलेट के अर्थ में नहीं)। यह बात बताने के लिए धन्यवाद।
स्टीफन रोलैंड

angular-seedठीक काम करना चाहिए। यह वास्तव में व्यक्तिगत प्राथमिकता का मामला है कि आप अपनी परियोजना को कैसे बनाना चाहते हैं। अगर मैं इसका उपयोग करने के लिए एक उपकरण का सुझाव देने जा रहा था तो यह तुर्क होगा । यह कोणीय परियोजनाओं और अधिक मचान के लिए महान है ...
जोनाथन पालुम्बो

1
आपका ट्यूटोरियल वीडियो लिंक टूट सकता है।
जेजे ज़कर

1
@JJZabkar ने सही किया, बहुत बुरा मैंने आज रात ही आपकी टिप्पणी देखी।
स्टीफन रोलैंड

जवाबों:


60

मैंने पाया है कि हालांकि कई लोग विभिन्न बीज परियोजनाओं का उपयोग करते हैं, एक कोणीय ऐप (या किसी जावास्क्रिप्ट वेब ऐप) के लिए सबसे आसान और सबसे सुसंगत शुरुआती बिंदु येओमन है

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

हालांकि इस तरह का ऐप जरूरी माना जाता है, लेकिन इसे बनाने वाला मचान अभी भी बहुत सामान्य है।

उदाहरण:

mkdir my-app
cd my-app
npm install generator-angular
npm install generator-karma
yo angular

8
मेरा मानना ​​है कि ऊपर पंक्ति 3 होनी चाहिए npm install generator-angular
रयान वॉल्स

और पंक्ति 4:
npm

npm ईआरआर! 404 'कोणीय-जनरेटर' npm रजिस्ट्री में नहीं है।
मर्तसाहाल

grunt serveब्राउज़र में यह देखने के लिए
jacktrades

1
मुझे भी "npm install --global yo"
moke

26

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

  1. यह सर्वर-अज्ञेय है। यह AngularJS के मूल सिद्धांत, और इसे आकर्षक बनाने वाली कई चीजों में से एक के बाद से महत्वपूर्ण है, यह है कि यह क्लाइंट MVC प्रतिमान का अनुसरण करता है। इसका मतलब है कि यह किसी भी और सभी सर्वर प्रौद्योगिकियों से पूरी तरह से डिकॉउंडेड है। कई मौजूदा बीज AngularJS को सर्वर प्रौद्योगिकियों जैसे कि कोणीय-अंकुर (NodeJS) या ग्रिल्ड- फीटा (Google App Engine / Java) से जोड़ते हैं । उपर्युक्त परियोजनाओं के मामले में, यदि NodeJS और / या जावा वातावरण आपके सिस्टम पर पहले से ही नहीं हैं, तो आपको बीज को देखने के लिए बस कई हुप्स से गुजरना होगा। यह PHP और पायथन डेवलपर्स के लिए अलग-थलग हो सकता है, जिसके परिणामस्वरूप परियोजना के समुदाय को सीमित किया जा सकता है।

  2. सेकंड में ऊपर और चल रहा है। क्योंकि यह सर्वर-अज्ञेयवादी है, इसे किसी भी कंटेनर में चलाया जा सकता है (उस मामले के लिए फाइल सिस्टम को दबाएं)। मूल विधि से "python -m SimpleHTTPServer" का सुझाव दिया विधि चल रही है - यह मैक और लिनक्स पर देशी आता है इसलिए कोई अतिरिक्त कदम नहीं हैं।

  3. सजीव पूर्वावलोकन। यह परियोजना की स्थिति की जांच करने के लिए सस्ता है क्योंकि लाइव संस्करण को हमेशा गीथूब पर होस्ट किया जाता है । क्योंकि यह सर्वर अज्ञेय है, यह स्वचालित रूप से क्रॉन जॉब से gh-pages ब्रांच में मास्टर कॉपी करके किया जाता है।

  4. अमीर स्टाइल। इसमें ट्विटर बूटस्ट्रैप और बॉक्स के बाहर कस्टम / बिल्ड करने योग्य लेस शामिल हैं, साथ ही समृद्ध स्टाइलिंग और जवाबदेही क्षमताओं को प्रदान करने के लिए कोणीय-यूआई, कोणीय-एनजी, फोंट, और अन्य उपकरणों के असंख्य।

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

कोणीय-बीज एक अकादमिक अभ्यास के रूप में महान है यदि आप सीखना चाहते हैं कि टुकड़े कैसे काम करते हैं, लेकिन यह आपको अधिक पर्याप्त कूद-बंद बिंदु के लिए लालसा देगा।

मैंने कोणीय-अंकुर का उपयोग नहीं किया है इसलिए मैं इसकी खूबियों के बारे में बात नहीं कर सकता। शायद कोणीय-अंकुर और कोणीय-उद्यम-बीज को विलय करने के लिए कुछ जगह है?


2
यदि आप सर्वर युग्मन चाहते हैं, तो github.com/robertjchristian/service-nucleus देखें , जो नेटफ्लिक्स-कारियन के साथ कोणीय-उद्यम-बीज को एकीकृत करता है, और अतिरिक्त कार्यक्षमता जोड़ता है। तैनाती और युद्ध के लिए तैयार बॉक्स से बाहर। (जावा आधारित, और जर्सी के माध्यम से रीस्ट शामिल)।
रॉबर्ट क्रिश्चियन

1
यह एक आधार के रूप में वास्तव में अच्छा लग रहा है। क्या आपने कोणीय-यूई-मैप आदि चीजों को जोड़ना आसान बनाने के लिए बोवर को एकीकृत करने पर विचार किया है?
बालि

1
@ बाल्दी - हां, मैं प्रोजेक्ट में बोवर को शिम करना चाहूंगा। क्या आप स्वयं सेवा कर रहे हैं? :)
राबर्ट क्रिश्चियन

दुर्भाग्य से, मैं कुछ और नहीं ले गया :)
Baldy

1
आपने मुझे "हमेशा एक नया संस्करण गिथब पर होस्ट किया" के साथ आश्वस्त किया ... और फिर प्रदान की गई लिंक: robertjchristian.github.io/angular-enterprise-seed/# एक खाली पृष्ठ देता है।
CERD

18

मैं मानता हूं कि यह एक पुराना सवाल है, लेकिन यह उचित संख्या में लगता है, इसलिए यह सलाह देता है कि हाल ही में येओमान और कोणीय-बीज: एनजी-बॉयलरप्लेट दोनों के लिए एक बहुत लोकप्रिय विकल्प बन गया है । एनजी-बायलरप्लेट कोणीय-बीज से भिन्न होता है जो इसे बड़े उत्पादन वेब ऐप के लिए जमीन से डिज़ाइन किया गया है, और इसलिए मेरी राय में कोणीय-बीज से बेहतर समाधान है।

ऐप किकस्टार्टिंग के योमन और एनजी-बॉयलरप्लेट विधियों के बीच के अंतर को समझाने के लिए, मैं ngbp के निर्माता, जोश डी। मिलर को उद्धृत करूंगा :

येमन कमाल का है। लेकिन मुझे AngularJS के लिए जनरेटर को लेकर जो समस्या है, वह यह है कि वे फीचर के बजाय लेयर द्वारा पैकेज करते हैं। यदि हम सभी नियंत्रकों को "नियंत्रकों" फ़ोल्डर में और सभी सेवाओं को "सेवाओं" फ़ोल्डर, आदि में संग्रहीत करते हैं, और हमारे सभी परीक्षण पूरी तरह से कहीं और करते हैं, तो हमारे घटकों का पुन: उपयोग करना काफी चुनौतीपूर्ण हो सकता है।

यह भी जोहान द्वारा येओमान कोणीय-जनरेटर मुद्दों मंच पर बहुत अच्छी चर्चा है, जो एनजी-बॉयलरप्लेट बनाम योमन की स्थापना के बारे में अधिक गहराई से जाता है।


10

बस स्पष्ट होने के लिए, योमन एक जनरेटर नहीं है। योमन जनरेटर बनाने के लिए एक प्रारूप / प्रणाली है। योमन के साथ कई जेनरेटर बनाए गए हैं जिनका उपयोग आप AngularJS एप्लिकेशन जेनरेट करने के लिए कर सकते हैं। लोग अक्सर गलती से उनमें से एक या दूसरे को "योमन जनरेटर" के रूप में संदर्भित करते हैं। लेकिन कई हैं। अभी तक उलझन में है? येओमन एकमात्र जनरेटर बनाने की प्रणाली नहीं है। ब्रंच एक और है।

आपके प्रश्न का उत्तर देने के लिए, यहाँ कई AngularJS जनरेटर की एक व्यापक रूप से साइड-बाय-साइड तुलना है, जिसका उपयोग AngularJS के साथ एक वेब एप्लिकेशन बनाने के लिए किया जा सकता है। वर्तमान में, इसमें इन चीजों के 200 से अधिक विभिन्न पहलू शामिल हैं। उनमें से एक फ़ाइल संगठन शैली है। तो आप आसानी से देख सकते हैं कि कौन सी फाइल को फीचर द्वारा व्यवस्थित करें यदि यह आपके लिए महत्वपूर्ण है। यह मेरे लिए है।

अभी भी इनमें से कई को जोड़ा जाना बाकी है। इस सूत्र में वर्णित दो मेरे लिए नए हैं। लेकिन इस तुलना से आपको विकल्पों के बारे में अच्छी जानकारी मिल सकती है कि वे कैसे तुलना करते हैं। यह संपादन योग्य भी है, इसलिए यदि आप में से कोई भी इनमें से किसी भी चीज़ में विशेषज्ञ है, तो जो आप जानते हैं उसे साझा करने के लिए स्वतंत्र महसूस करें।

भगवान ही जानता है कि क्यों लोग मौजूदा चीजों को बेहतर बनाने में मदद करने के बजाय इन चीजों को ज्यादा से ज्यादा बनाते रहते हैं। यदि आपके पास कोई अनुमान है, तो मैं उस रहस्य को सुलझाना पसंद करूंगा।

संपादित करें: डॉक्टर के पास पहुँच प्राप्त करने के लिए मैं पूछता हूँ कि आप या तो किसी चीज़ का ज्ञान साझा करने के लिए एक प्रश्नावली पूरी करें या ऐसा करने के लिए विशेषज्ञों की पैरवी करें।

एक प्रश्नावली करने के लिए यहां जाएं: http://www.dancancro.com/technology-questionnaires/


9

मुझे भी योमन का उपयोग करना पसंद है। एक अच्छा पाड़ पाने के लिए इन्हें आज़माएँ:

npm install -g generator-angular  # install generator
yo angular                        # scaffold out a AngularJS project
bower install angular-ui          # install a dependency for your project from Bower
grunt test                        # test your app
grunt server                      # preview your app
grunt                             # build the application for deployment

बस ध्यान दें कि यह जनरेटर अब बहुत पुराना है, इसलिए सुनिश्चित नहीं है कि मैं इसे अब और सुझाऊंगा।
dmackerman

हां, लेकिन yeoman.io/generators पर एक और खोजें । कोणीय / कोणीय 2 के लिए खोजें
HankCa
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.