2009-05-26 7 views
16

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

+1

डुप्लिकेट http://stackoverflow.com/questions/742262/what-can-i-do-with-c-and-powershell – NinethSense

+2

@NinethSense: क्या आपको नहीं लगता लिंक आपके द्वारा दी गई जो एक के बारे में था दोनों शक्तियों और सी # में कर सकते हैं? मैं जानना चाहता हूं कि मैंने सी # – Draco

+1

पर पावरहेल क्यों चुना होगा दूसरा प्रश्न सी # से पावरहेल को विस्तार या उपयोग करने के बारे में अधिक है। निश्चित रूप से एक डुप्लिकेट नहीं है। – Joey

उत्तर

15

मुझे लगता है कि आप गलत सवाल पूछ रहे हैं। यह होना चाहिए: "मुझे सी # का उपयोग क्यों करना चाहिए जब मैं एक ही चीज़ को कोड करने के लिए पावरहेल का उपयोग कर सकता हूं?"

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

एक छोटे से कार्य के लिए, एक स्क्रिप्ट विजुअल स्टूडियो में एक प्रोजेक्ट बनाने, इसे संकलित करने, इसे लक्ष्य में तैनात करने, कोड को सही करने, इसे फिर से संकलित करने, इसे फिर से तैनात करने के लिए लिखने, तैनाती और बदलने के लिए तेज़ है ...

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

आप कर सकते हैं किसी भी (क्रम दक्षता आम तौर पर एक संकलित सॉफ्टवेयर में बेहतर है, लेकिन आधुनिक CPUs के साथ यह इतना अधिकांश परियोजनाओं के लिए, यह किसी भी अधिक बात नहीं है, कुछ मिली सेकंड के अंतर करने के लिए नीचे आता है।) सी # या पावरहेल में प्रोजेक्ट की तरह। इसका मतलब यह नहीं है कि आप होना चाहिए।

1
  • यह संकलित भाषा नहीं है।
  • इसमें एक प्लगइन पारिस्थितिक तंत्र है जिसमें विभिन्न डोमेन विशिष्ट चीजें करने जैसे फाइलों की प्रतिलिपि बनाना, एडी, एक्सचेंज के साथ खेलना शामिल है।
  • यह नौकरियों के एक अलग, थोड़ा ओवरलैपिंग सेट के लिए सही उपकरण है।
  • यह सीएमडी.एक्सईई की तुलना में बहुत अधिक शक्तिशाली और सुसंगत है और अन्य चीजें कमांड शैल से विकसित होती हैं जिन्हें 8 के रैम में फिट करने की आवश्यकता होती है।

और आप सी # का उपयोग क्यों कर रहे हैं, आईएलएएसएम सब कुछ अधिक नियंत्रण के साथ कर सकता है, और आप बस बीसीएल में सामान बुला रहे हैं।

7

जब एक खोल लेकिन एक प्रोग्रामिंग वातावरण के रूप में PowerShell का उपयोग नहीं, तो आप इंटरैक्टिव नेट खेल का मैदान के एक प्रकार के रूप Powershell के बारे में सोच सकते हैं। मैं जीयूआई प्रोटोटाइप के लिए कभी भी पावरहेल का उपयोग नहीं करता लेकिन मैंने इसे अतीत में .NET ऑब्जेक्ट्स और किसी विशेष समस्या को हल करने के लिए उनके तरीकों के साथ खेलने के लिए उपयोग किया है। प्रत्येक बार जब आप कोई परिवर्तन करते हैं तो संपादन/सहेजें/संकलन/रन चक्र करने से कमांडलाइन को बदलना अधिक उत्पादक होता है।

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

आप शायद Powershell के साथ एक enterprisey डेटाबेस आवेदन लिखने के लिए नहीं करना चाहते हैं और आप शायद एक सी # प्रोग्राम लिखने के लिए सिर्फ फाइल सिस्टम में आसपास कुछ सामान कॉपी करने के लिए नहीं करना चाहती।

+0

एंटरप्राइज़ी – SheldonH

0

मैं निम्नलिखित में अपने प्रश्न सामान्यीकृत:

मैं क्यों लूं (उच्च स्तर की भाषा है कि मैं थोड़ा के बारे में पता) से अधिक (कम स्तर की भाषा मैं के बारे में अधिक जानते हैं)?

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

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

+2

शब्द का उपयोग करने के लिए ऊपर नहीं है, मुझे नहीं लगता कि पावरहेल सी # की तुलना में स्वाभाविक रूप से "उच्च-स्तर" है, यह केवल उनका संबंधित कार्य है डोमेन बहुत अलग हैं। – Joey

+0

पावरशेल वास्तव में उच्च स्तर है, अगर केवल "पाइपलाइन" अवधारणा को पुन: उपयोग करना और "टुकड़े" को गठबंधन करना आसान बनाता है ... निश्चित रूप से PowerShell निम्न स्तर पर गिर जाता है जब आपको ऐसा करने की आवश्यकता होती है जिसके लिए पहले से नहीं है एक मौजूदा स्क्रिप्ट या cmdlet, लेकिन cmdlets और कार्यों की composability सी # (या उस मामले के लिए रूबी/पायथन/पर्ल) में किसी भी चीज़ की तुलना में बहुत अधिक स्तर है। – Jaykul

संबंधित मुद्दे