मैं क्लोजर के साथ एक पालतू परियोजना विकसित कर रहा हूं, लेकिन आश्चर्य है कि क्या मैं अपने वर्कफ़्लो को थोड़ा बढ़ा सकता हूं।कुशल क्लोजर वर्कफ़्लो?
मेरे वर्तमान कार्यप्रवाह (Compojure के साथ):
lein swank
साथ
- प्रारंभ स्वांक।
- Emacs पर जाएं,
M-x slime-connect
से कनेक्ट करें। - सभी मौजूदा स्रोत फ़ाइलों को एक-एक करके लोड करें। यह जेटी सर्वर और एक एप्लीकेशन भी शुरू करता है।
- REPL में कुछ कोड लिखें।
- प्रयोगों से संतुष्ट होने पर, मेरे मन में एक निर्माण का एक पूर्ण संस्करण लिखें। Eval (
C-c C-c
) यह। - नामस्थान पर आरईपीएल स्विच करें जहां यह निर्माण रहता है और इसका परीक्षण करता है।
- ब्राउज़र पर स्विच करें और प्रभावित पृष्ठ के साथ ब्राउज़र टैब पुनः लोड करें।
- कोड को ट्वीक करें, इसे eval करें, ब्राउज़र में चेक करें।
- उपर्युक्त में से कोई भी दोहराएं।
इसके साथ खीज की एक संख्या हैं:
- मैं Emacs और ब्राउज़र के बीच स्विच करने (या ब्राउज़र अगर मैं एक से अधिक ब्राउज़र के साथ templating जैसी चीजों का परीक्षण कर रहा हूँ) हर समय नहीं है। क्या इसे स्वचालित करने के लिए कोई आम मुहावरे है? मेरे पास एक जावास्क्रिप्ट बिट होता था जो लगातार पृष्ठ को फिर से लोड करता था, लेकिन यह सीमित उपयोगिता है, जाहिर है, जब मुझे कुछ सेकंड से अधिक समय तक पृष्ठ से बातचीत करना होता है।
- जब मैं प्रयोग करता हूं और परीक्षण कार्यों को लिखता हूं तो मेरा जेवीएम उदाहरण "गंदे" बन जाता है। असल में नामस्थान प्रदूषित हो जाते हैं, खासकर यदि मैं नामस्थानों के बीच कार्यों को पुन: सक्रिय और स्थानांतरित कर रहा हूं। यह प्रतीक टकराव का कारण बन सकता है और मुझे स्वैंक को पुनरारंभ करने की आवश्यकता है। क्या मैं एक प्रतीक को मिटा सकता हूं?
- मैं स्वैंक को पुनरारंभ करने पर सभी स्रोत फ़ाइलों को एक-एक करके (
C-c C-k
) लोड करता हूं। मुझे संदेह है कि मैं यह सब गलत कर रहा हूँ। - आरईपीएल और फ़ाइल संपादक के बीच स्विचिंग थोड़ा परेशान हो सकता है, खासकर जब मेरे पास ब्राउज़र के साथ-साथ कई Emacs टैब खुलते हैं।
मैं उपरोक्त बिंदुओं और पूरे वर्कफ़्लो को सामान्य रूप से सुधारने के तरीकों की तलाश में हूं, इसलिए यदि आप अपना साझा करेंगे तो मैं सराहना करता हूं।
पी.एस.
मैं भी, इससे पहले कि Vimclojure का इस्तेमाल किया है तो Vimclojure आधारित workflows भी स्वागत है।