2008-11-30 17 views
93

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

धन्यवाद!

+0

मैं यह वही प्रश्न पूछने जा रहा था। यह मुझे आश्चर्यचकित करता है कि यह "असली दुनिया" में कितना व्यावहारिक है – ScArcher2

+5

लोग इस "असली दुनिया" – Rayne

+0

पर भी असंतुष्ट हैं, मैंने इसके साथ एक आईआरसी बॉट बनाया है, यह इसके लिए एकदम सही भाषा है (प्रदर्शन कोई समस्या नहीं है, हॉट-स्वैपिंग प्लग -इन, उत्पादन इनपुट से संबंधित है - समारोह)। अधिकांश अन्य उपयोगों के लिए यह बहुत अच्छा नहीं है। बहुत अधिक CPU बर्बाद कर रहा है और विशेष रूप से बहुत अधिक मेमोरी उपयोग, मेमोरी मंथन, कैश मिस। –

उत्तर

38

मैं ब्रायन कार्पर द्वारा cow-blog की अनुशंसा करता हूं। लेखक के अनुसार यह आपके उद्देश्य के साथ दिमाग में लिखा गया था।

+0

उत्कृष्ट - धन्यवाद! – foxdonut

+0

आपको बहुत बहुत धन्यवाद –

19

यदि आप clojure-contrib स्रोत कोड ब्राउज़ करते हैं तो आप देख सकते हैं कि क्लोजर में पुस्तकालयों को कैसे लागू किया जाता है।

आप उसी स्रोत पेड़ के नीचे "ClojureScript" चेकआउट भी कर सकते हैं।

Clojure का एक बहुत छोटा सबसेट में लिखे कोड स्वचालित रूप से जावास्क्रिप्ट को अनुवाद करने की अनुमति देता है।

क्लोजरस्क्रिप्ट अनुवादक एक पूर्ण क्लोजर ऐप है।

यदि आप पहले से नहीं हैं तो मैं स्टीवर्ट हेलोवे के Port of Practical Common Lisp samples to Clojure की जांच करने की भी सिफारिश करता हूं।

+0

मोनोलिथिक क्लोजर कंट्री लाइब्रेरी को नए मॉड्यूलर contrib पुस्तकालयों के एक सेट के पक्ष में बहिष्कृत कर दिया गया है जो यहां पाया जा सकता है: http://dev.clojure.org/display/doc/Clojure+Contrib (ध्यान दें कि क्लोजर से स्थानांतरित हो गया है गिटूब पर आधिकारिक क्लोजर रिपोजिटरी में रिचहिकी रिपोजिटरी) –

10

चेक बाहर चींटियों डेमो कि Clojure के लेखक ने लिखा है, रिच हिक्की:

http://riddell.us/clojure:

http://clojure.googlegroups.com/web/ants.clj

यहाँ एक Emacs विकास के वातावरण के साथ-साथ यह सेट करने के लिए कुछ अच्छा निर्देश है

रिच की प्रस्तुति भी देखें जो इस कोड के साथ जाती है:

http://blip.tv/file/812787

+1

जब मैं स्रोत देखने का प्रयास करता हूं तो मैं रीडायरेक्ट हो रहा हूं। विचित्र रूप से मैं इसे Google के माध्यम से भी नहीं ढूंढ सकता। – Annan

+1

चींटियों का डेमो स्रोत यहां उपलब्ध प्रतीत होता है: https://gist.github.com/1093917 –

+0

ब्लिप की तरह दिखता है।टीवी लिंक अब http://www.youtube.com/watch?v=dGVqrGmwOAw पर है और मुझे लगता है कि कोड का विवरण प्रस्तुति में लगभग 1 घंटा 24 मिनट शुरू होता है। –

0

क्लोजर अभी भी बहुत छोटा है और उपलब्ध स्रोत कोड के साथ मध्यम आकार के अनुप्रयोगों के लिए एक चलती लक्ष्य है।

3

एक सकारात्मक संकेत: एक बड़े पैमाने पर उत्पादन परिनियोजन में उपयोग किए जाने वाले क्लोजर की पहली प्रकाशित रिपोर्ट में से एक के बारे में article on InfoQ है। यह खुला प्रतीत नहीं होता है, लेकिन कम से कम यह वास्तविक उत्पादन दुनिया में एक मिशन महत्वपूर्ण अनुप्रयोग में क्लोजर का उपयोग किया जा रहा है। क्लोजर समुदाय के लिए एक बड़ा कदम।

15

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

यह सक्रिय विकास के तहत है और इसमें उपयोगी Google Group है।

+1

चूंकि अधिकांश कोड अब कंपोजर रिंग से चला गया है, अब यह देखने का स्थान हो सकता है। – mac

+0

बहुत सारे कॉम्पोजर का एचटीएमएल जनरेटिंग कोड अब हिचकप का विश्वास है (https://github.com/weavejester/hiccup) – mikera

7

Clojure ही Clojure सर्वोत्तम प्रथाओं का एक अच्छा उदाहरण है। Core.clj, अच्छी चीजों के नीचे की तरफ पढ़ें।

6

मुझे लगता है कि कंपोज़र शायद उदाहरण के लिए जाने का सबसे अच्छा तरीका है। मुझे संदेह है कि यह एक "मध्यम आकार का" उदाहरण है, लेकिन शायद इसके उपखंड हैं जो छोटे हैं जो काम करेंगे। कम से कम, यह मेरा दृष्टिकोण होगा। मुस्कान

इसके अलावा,

http://github.com/technomancy/mire/tree/master

जो एक छोटे से m.u.d. है की जाँच क्लोजर में निर्मित क्लाइंट प्रोटोटाइप, इसका लाभ यह है कि यह पूरी तरह से आत्मनिर्भर है, और शायद इसमें शामिल अवधारणाओं सहित बहुत सरल है। प्रलेखन, आह, यह जुस ठीक है, लेकिन कोड में अवधारणाएं एम.यू.डी. के क्रिया तत्वों के बहुत करीब से बंधी हुई हैं। जो आसानी से चलता है।

2

आप यहाँ एक बार देख ले सकते हैं: http://bitbucket.org/kumarshantanu/blogjure/overview/

यह एक छोटे से ब्लॉग आवेदन हाइबरनेट, Compojure और StringTemplate है कि वास्तव में काम करता है का उपयोग करते हुए लिखा है!

+0

इसके अलावा, मैं इस पर काम कर रहा हूं - http://code.google.com/p/ बिटुमेनफ्रेमवर्क/ यह जावा और क्लोजर पर केंद्रित है। –

6

http://4clojure.com

4Clojure एक open source वेबसाइट है, जहां आप इंटरैक्टिव भरने रिक्त Clojure समस्याओं को हल कर सकते हैं।

5

हम इस प्रश्न से दो साल हैं और, जबकि यह अभी भी एक भाषा के चक्र में शुरुआती है, क्लोजर निश्चित रूप से गंभीर उत्पादन कार्य के लिए उपयोग किया जा रहा है। विश्व एकल में, हमारे पास उत्पादन में क्लोजर की कई हज़ार लाइनें हैं जो हमारे वेब प्लेटफ़ॉर्म में सामान्य उद्देश्यों के सभी प्रकारों को संभालती हैं - मैंने इसके बारे में Real World Clojure series में ब्लॉग किया।

कुछ उचित रूप से बड़ी खुली स्रोत परियोजनाओं के लिए - बिल्कुल अनुप्रयोग नहीं, लेकिन उच्च प्रोफ़ाइल आधारभूत संरचना - आप Storm from Twitter और Cascalog from BackType (अब ट्विटर का हिस्सा) देख सकते हैं। 4clojure.com को ओपन सोर्स वेब एप्लिकेशन के रूप में वर्णित किया गया है, यह भी एक लायक है, लेकिन new github repo for 4clojure पर ध्यान दें।

1

मैं आपको केवल Pedestal, सर्वर-साइड और क्लाइंट-साइड दोनों (जहां यह क्लोजरस्क्रिप्ट को सुविधाजनक बनाता है), एक बहुत ही आशाजनक वेब फ्रेमवर्क देखने के लिए आपको सलाह दे सकता है। गुई सामान को समझना थोड़ा मुश्किल है, लेकिन एक बड़े ऐप में सैने रहने के लिए इसे बहुत कुछ किया जाना चाहिए।

1

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

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