सरल शब्दों में, रेक क्या करता है? इसके क्या उद्देश्य हैं? मैं समझता हूं कि यह एक बिल्ड टूल है लेकिन मैं थोड़ा और विस्तार देख रहा हूं। (एक साधारण के लिए।)
जवाबों:
अधिक जानकारी के लिए रेक पर मार्टिन फाउलर का लेख देखें:
http://martinfowler.com/articles/rake.html
उनका पूर्व-प्रतीक है:
रेक एक बिल्ड लैंग्वेज है, जिसे बनाने और चींटी बनाने के लिए समान है। जैसे बनाओ और चींटी यह एक डोमेन विशिष्ट भाषा है, उन दो के विपरीत यह रूबी भाषा में एक आंतरिक डीएसएल क्रमादेशित है। इस लेख में मैं रेक का परिचय देता हूं और इस वेब साइट को बनाने के लिए रेक के मेरे उपयोग से आई कुछ दिलचस्प बातों का वर्णन करता हूं: निर्भरता मॉडल, संश्लेषित कार्य, कस्टम बिल्ड रूटीन और बिल्ड स्क्रिप्ट डीबग करना।
परियोजना के मुख पृष्ठ से या साथ ही अधिक जानकारी उपलब्ध है:
ये उत्तर मान लेते हैं कि आपको पता है कि DSL क्या है, या Make या Ant से परिचित हैं। अगर ऐसा नहीं है, तो यहाँ (शायद मोटे तौर पर ओवरसाइप्लाइज़्ड उत्तर) है:
रेक एक उपकरण है जिसे आप रूबी परियोजनाओं के साथ उपयोग कर सकते हैं । यह आपको "कार्यों" को परिभाषित करने के लिए माणिक कोड का उपयोग करने की अनुमति देता है जिसे कमांड लाइन में चलाया जा सकता है।
रेक को रूबी रत्न के रूप में रूबी परियोजनाओं में डाउनलोड और शामिल किया जा सकता है ।
एक बार स्थापित होने के बाद, आप " Rakefile " नामक एक फ़ाइल में कार्यों को परिभाषित करते हैं जिसे आप अपनी परियोजना में जोड़ते हैं।
हम इसे "बिल्ड टूल" कहते हैं क्योंकि रेक कुछ पुस्तकालयों के साथ आता है जो बिल्ड / परिनियोजन प्रक्रिया के दौरान सामान्य कार्य करना आसान बनाते हैं, जैसे फ़ाइल संचालन ( फाइल बनाना, हटाना, नाम बदलना और हिलाना), एफ़टीपी के माध्यम से साइटों को प्रकाशित करना। / एसएसएच , और परीक्षण चल रहा है ।
अधिक जानकारी के लिए, यहाँ परियोजना प्रलेखन: http://rake.rubyforge.org/
रेक रूबी प्रोग्रामिंग भाषा में निर्भरता-आधारित घोषणात्मक प्रोग्रामिंग का कार्यान्वयन है । असल में, रेक रूबी को है कि मेक टू सी क्या है, उल्लेखनीय अंतर के साथ, कि मेक एक बाहरी डीएसएल है , जबकि रेक एक आंतरिक डीएसएल है।
रेक आपको एक अच्छे नामस्थान एपीआई के माध्यम से रूबी कोड निष्पादित करने देता है। एक उदाहरण रेक डीबी है: माइग्रेट। आप अन्य कार्यों से पहले और बाद में कार्यों को स्वचालित रूप से चला सकते हैं। बस इतना ही।