2012-04-09 22 views
8

मैं हास्केल for great good सीख रहा हूं।वेब विकास के लिए हास्केल का उपयोग करने के मुख्य लाभ क्या हैं?

मैं ओओपी और विभिन्न प्रकार के सिस्टम में सुंदर हूं। मैंने वेबपैप्स (जावा ईई, वसंत, हाइबरनेट, स्ट्रैट्स 1.x) विकसित करने के लिए जावा का उपयोग किया, अब मैं नियमित रूप से पायथन (पिलोन, डीजेंगो, स्क्लेल्चेमी, पिमोंगो) और जावास्क्रिप्ट का उपयोग कर रहा हूं। मेरे व्यक्तिगत उत्पादकता में मुझे बहुत बड़ा सुधार हुआ: हल्के दृष्टिकोण, बतख टाइपिंग, भयानक इटरेटर, प्रथम श्रेणी के नागरिकों, सरल वाक्यविन्यास और विन्यास के रूप में कार्य करते हैं, pip और distribute (और बहुत कुछ) जैसे तेज टूल ने मुझे बहुत मदद की।

लेकिन मेरी उत्पादकता वृद्धि का पहला कारण पायथन भाषा स्वयं है।

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

मुझे गलत मत समझो, मैंने अभी हास्केल का अध्ययन करना शुरू कर दिया है, इसलिए Maybe I ' मैं कुछ अजीबता खो रहा हूं लेकिन मैं वास्तव में इसके प्रतिमान को समझना चाहता हूं और जब इसका उपयोग करने लायक है।

+2

तुम शायद यह कैसे काम करता के दो तिहाई नहीं समझोगे (:

मैं कुछ इसका इस्तेमाल करने के रूप में आप नीचे मेरे सवालों में देख सकते हैं की कोशिश कर रहा था मुद्दों 'टी), लेकिन यसोड वेब ढांचा बहुत अच्छे प्रकार के लिए उपयोग करता है। – delnan

+0

@ डेलनान यसोड (और [यह खंड] (http://yannesposito.com/Scratch/en/blog/Yesod-tutorial-for- newbies/#bulletproof)) एक अच्छी शुरुआत की तरह दिखता है, धन्यवाद। – vrde

+0

यह हो सकता है कि यह * कैसे * लाभों का उपयोग किया जा सकता है, लेकिन यह वेब-ऐप विकास के लिए हास्केल का उपयोग करने के फायदों का एक उदाहरण है - http://jekor.com/article/is-haskell- एक-अच्छा-पसंद-के-वेब-अनुप्रयोग – Gangadhar

उत्तर

3

अधिकांश वेब अनुप्रयोगों का लक्ष्य stateless और handle concurrency well होना है। यह स्केल करने के लिए भी महत्वपूर्ण है (Google SEO reasons, and user experience)।

हास्केल इन समस्याओं को अच्छी तरह से संभालता है (हालांकि अधिक शैक्षणिक और शायद कम "मानव" सहज ज्ञान युक्त आईएमएचओ)।

वेब ऐप देव (नोड.जेएस कहने की तुलना में) की भारी कमी के कारण कहा जा रहा है और पारंपरिक वेब ऐप देव ओओपी दिमाग फ्रेम में अधिक केंद्रित रहा है, यह मुश्किल हो सकता है। मैं निश्चित रूप से डॉन

How do I do automatic data serialization of data objects?

Handling incremental Data Modeling Changes in Functional Programming

+0

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

+1

मुझे लगता है कि आपको 2015 के आखिर में यह एक बहुत ही अलग अनुभव मिलेगा। हास्केल के पास बैक एंड एंड फ्रंट एंड (जीएचसीजेएस जावास्क्रिप्ट के लिए संकलित) दोनों के लिए कुछ अविश्वसनीय रूप से शक्तिशाली वेब ढांचे हैं। यदि आप प्रकार की सुरक्षा के साथ वेब-देव की तलाश में हैं, तो हास्केल कर्षण प्राप्त कर रहा है। –

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