2010-02-28 26 views
8

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

क्या मैं मुख्य रूप से की आवश्यकता होगी किया जाएगा, improtance द्वारा आदेश दिया:, विंडोज, लिनक्स और ओएस एक्स

  • अच्छा पुस्तकालयों में से बहुत सारे उपलब्ध फ़ाइल और निर्देशिका हेरफेर से उग्र:

    1. शीर्ष तीन OSs भर में पोर्टेबल डेटाबेस पहुंच के लिए। जीयूआई की आवश्यकता नहीं है, हालांकि नेटवर्किंग हो सकती है (एफ़टीपी या HTTP के माध्यम से कुछ सामान डाउनलोड करें)। एक बड़ा प्लस एक सबवर्सन रिपोजिटरी को मूल रूप से चेकआउट करने की क्षमता होगी।
    2. अच्छा सामुदायिक समर्थन आवश्यक है। पाइथन और रूबी दोनों इस क्षेत्र में उत्कृष्ट हैं।
    3. विस्तारशीलता: यदि कुछ करने के लिए कोई अच्छी लाइब्रेरी उपलब्ध नहीं है, तो मेरे लिए एक को लागू करने या मूल समाधान का उपयोग करने के लिए कितना आसान है (एक प्रोग्राम निष्पादित करें, मूल कार्य को कॉल करें)।
    4. तैनाती की आसानी: विंडोज़ (XP & 7, सर्वर 2003+), लिनक्स (सेंटोस 5.2, उबंटू & उबंटू सर्वर 8.04+) और ओएस एक्स (10.5+) पर उठना और चलाना कितना आसान है।
    5. सीखने की आसानी। जबकि सभी स्क्रिप्टिंग भाषाओं को उनके नमक के किसी भी प्रोग्रामर के लिए सीखना मुश्किल नहीं है, मुझे उसमें दिलचस्पी है जो सीखने के बजाय जल्दी और आसान है।

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

  • उत्तर

    10

    आपने यह कहा: पायथन सभी आवश्यकताओं को पूरा करता है। यह मेरा "वोट" है हालांकि मैं कुछ पक्षपातपूर्ण हो सकता हूं।

    संपादित:

    • (मेरी पहली हाथ अनुभव है, प्रश्न में वर्णित कार्यों के संदर्भ में पर) मैं अजगर से इमारत रिलीज के साथ कोई अनुभव नहीं है (मैं चींटी पाते हैं या यहाँ तक कि के लिए एक बेहतर उपकरण बनाने यह विशेष कार्य)।
    • डेटाबेस के साथ "मेसिंग": एक हवा!
    • निर्देशिकाओं का निरीक्षण, निर्देशिकाओं का निरीक्षण आदि: एक हवा!

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

    हालांकि पाइथन का एक संभावित "आलोचना" कुछ हद तक विरोधाभासी है, इसकी व्यापक पैकेज लाइब्रेरी (इसकी उदार मानक लाइब्रेरी के अतिरिक्त); जबकि सभी सिद्धांतों "तीसरे पक्ष" पुस्तकालयों के लिए अच्छा है, लेकिन परिपक्वता को गेज करना और इन पैकेजों में से कुछ की प्रभावशीलता कभी-कभी मुश्किल हो सकती है, और कभी-कभी इन्हें चुनने में कुछ समय बर्बाद हो जाता है (या "खरोंच से" लिखना है या नहीं) । फिर भी, ऐसे मूल्यांकन दुभाषिया की संवादात्मक प्रकृति के लिए धन्यवाद, हालांकि तेजी से पर्याप्त हो सकता है।

    +0

    रूबी, कम स्तर पर यद्यपि करता है। लेकिन: "हालांकि, मैं आपकी पसंद की भाषा में लिखी गई इस तरह की लिपियों का उपयोग करने के साथ अपने अनुभवों की भी तलाश कर रहा हूं।" – CMircea

    +0

    मुझे लगता है कि पाइथन रूबी की तुलना में एक बेहतर ऑलराउंडर है, जो वेब देव पर अधिक ध्यान केंद्रित करता है। अलग-अलग गुणवत्ता के पुस्तकालयों द्वारा अभिभूत होने के विरोधाभास के लिए –

    +0

    +1। पर्याप्त ध्यान नहीं दिया जाता है ... –

    1

    http://ant.apache.org/

    मैं दोनों जावा और PHP परियोजनाओं के लिए इसका इस्तेमाल करते हैं। हाँ, कुछ में निर्माण कर रहे हैं, बाकी के लिए आप का उपयोग एक्सटेंशन

  • समुदाय: db, नेटवर्किंग, आई/ओ, SVN के लिए
  • पुस्तकालयों 100%: और अपने अंक को जवाब देने के लिए:

    • पोर्टेबिलिटी: कई किताबें और ऑनलाइन संसाधनों
    • extendability: हाँ, चींटी एक्स्टेंसिबल होने के लिए डिजाइन किया गया था
    • स्थापना: शिक्षा के मृत आसान
    • सुगमता: बहुत आसान
  • +0

    धन्यवाद, दिलचस्प लग रहा है, मैं इसे देख लूंगा। – CMircea

    +0

    चींटी एक सामान्य स्क्रिप्टिंग भाषा की तुलना में एक निर्माण उपकरण की तरह दिखता है। मैं या तो जावा का बहुत शौक नहीं हूँ। मैं विशेष रूप से पसंद करता हूं अगर मुझे ओओपी का उपयोग करने के लिए मजबूर नहीं किया गया था। – CMircea

    +0

    चींटी भी मेरी पसंद होगी। मैंने इसे बड़े पैमाने पर उपयोग नहीं किया है, लेकिन यह निश्चित रूप से आपकी आवश्यकताओं को फिट करता है। – Checksum

    1

    पायथन एक महान पटकथा भाषा है और बहुत पोर्टेबल है। यह मेरी पसंद है जब मेरी लिपियों की पोर्टेबिलिटी मुख्य मुद्दा है।

    लेकिन पोर्टेबिलिटी शायद ही कभी मेरा मुख्य मुद्दा है। मेरी अधिकांश स्क्रिप्ट ओएस मुद्दों के साथ गहराई से सौदा करती हैं। इसलिए जब मुझे पता है कि मैं विंडोज़ पर चल रहा हूं और पाइथन उपलब्ध नहीं हो सकता है, तो मैं Windows Script Host के तहत जेस्क्रिप्ट का उपयोग करता हूं।

    +0

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

    +0

    पाइथन अभी मेरी सूची में शीर्ष पर है, लेकिन मैंने यह भी पूछा कि भाषा इस विशिष्ट कार्य पर कैसे करती है। मुझे स्क्रिप्ट के साथ अधिक ओएस-विशिष्ट सामान करने की आवश्यकता नहीं है। – CMircea

    +0

    @iconK: क्षमा करें मैं स्पष्ट नहीं था। आपके कार्यों और प्राथमिकताओं के लिए, मैं अजगर के साथ जाऊंगा। कई प्लेटफार्मों पर बहुत अच्छा समर्थन, और बहुत अच्छी/समृद्ध पुस्तकालयों। –

    0

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

    2

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

    +1

    बहुत दर्दनाक नहीं == इंस्टॉलर चलाएं और चलाने के लिए फ़ाइल पर डबल-क्लिक करें? लिनक्स से आसान लगता है। – CMircea

    0

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

    1

    पायथन, बिना किसी संदेह के। यह आपके सभी उद्देश्यों को पूरा करता है और संक्षिप्त और सीखने में आसान होने का लाभ होता है।

    0

    पायथन इस तरह की चीज़ के लिए वास्तव में बहुत अच्छा है। मैं सिर्फ टीसीएल पर आपका ध्यान आकर्षित करना चाहता था जो सामान्य उद्देश्य स्क्रिप्टिंग और फ़ाइल हैंडलिंग के लिए बिल्कुल शानदार है। Wikipedia entry about Tcl

    1

    iconiK,

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

    मैं भी अपने अनुभवों को

    रहा हूँ

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

    शायद मेरा सबसे हालिया मुख्य अनुभव यह है कि 1 999 में मुझे यह तय करना था कि Objective Caml या Haskell में एक प्रमुख कंपाइलर प्रोजेक्ट लिखा जाएगा या नहीं। हम कैमल चुनते हैं, और कई बार मैंने कामना की है कि मैंने हास्केल चुना था, लेकिन वास्तव में 1 999 में कैमल शायद बेहतर विकल्प था, और निश्चित रूप से हमने उस कंपाइलर के साथ बहुत अच्छा काम किया। सभी की सबसे बुरी पसंद अधिक जानकारी इकट्ठा करने के लिए इंतजार करनी होगी।

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

    अच्छे स्वास्थ्य में कोड!

    +0

    मेरे पास बहुत समय है हालांकि। जब तक परियोजना पूरी तरह से समाप्त नहीं हो जाती है, मैं पूरी तरह से स्क्रिप्टिंग भाषा की तलाश कर सकता हूं। वैसे भी मैंने पाइथन चुना है और पाइथन 3 में डुबकी पढ़ रहा हूं। – CMircea

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

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