वेब विकास के लिए एक नई प्रोग्रामिंग भाषा ढूँढना? [बन्द है]


14

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

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

पायथन एक प्रोग्रामिंग भाषा है जो आपको अधिक तेज़ी से काम करने देती है और आपके सिस्टम को अधिक प्रभावी ढंग से एकीकृत करती है।

साल के लिए एक PHP डेवलपर होने के बाद, विक चेरुबिनि ने मेरी दुर्दशा को अच्छी तरह से समझा।

मैं अच्छी तरह से जानता था कि PHP का अपना ढांचा है, और कुछ पाने और चलाने के लिए जल्दी से काम कर सकता है।

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

यही कारण है कि मैं अपने साइड प्रोजेक्ट्स और नए प्रोग्रामिंग उपक्रमों के लिए PHP से रिटायर हो रहा हूं। मैंने PHP के साथ बिताया है। थका हुआ है, अगर आप करेंगे। मैं एक स्तर पर पहुंच गया हूं, जहां मुझे लगता है कि मैं एक भाषा के रूप में इसके साथ शीर्ष पर हूं और अगर मैं जल्द ही एक नई भाषा पर नहीं जाता हूं, तो मैं पूरी तरह से प्रोग्रामिंग के साथ किया जाऊंगा और मैं ऐसा नहीं चाहता।

मैंने जिन भाषाओं को देखा है उनमें जावास्क्रिप्ट (नोड के लिए), रूबी, पायथन, और एरलंग शामिल हैं। मैंने स्काला या सी ++ के बारे में भी सोचा है।

समस्या यह पता लगा रही है कि मेरी जरूरतों को पूरा करने के लिए कौन से लोगों को बनाया गया है।

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

अपडेट करें

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


14
यदि आप इन आवश्यकताओं को निर्दिष्ट नहीं करते हैं, तो यह बता पाना मुश्किल है कि कौन आपकी आवश्यकताओं को बेहतर ढंग से सम्भालेगा।
वार्त

3
यही कारण है कि मैंने अपनी आवश्यकताओं को परिभाषित नहीं किया है - मेरी व्यक्तिगत आवश्यकताएं बिंदु के बगल में हैं । मैं जानना चाहता हूं कि मैं अपनी जरूरतों को एक निश्चित प्रोग्रामिंग भाषा से कैसे जोड़ सकता हूं। क्योंकि मेरी ज़रूरतें बदल सकती हैं और मुझे फिर से वापस जाने की आवश्यकता होगी।
Xeoncross

यह इंगित करने योग्य है कि निष्पादन गति से अधिक प्रोग्राम के लिए भी अधिक है । विकास की गति और जिस तरह से आपको अपना एप्लिकेशन बनाना है (भाषा के कारण) एक महत्वपूर्ण भूमिका निभाते हैं।
Xeoncross

4
यह भाषाओं के बारे में कम और परिपक्वता की विशेषता के बारे में अधिक है और उनके लिए उपलब्ध चौखटे की समृद्धि है।

1
मेरा सुझाव है कि आप एलेक्स मार्टेली के इस उत्कृष्ट पोस्ट पर एक नज़र डालें ।
प्रेत ० मी ०

जवाबों:


3

मैं इसे एक उत्तर के रूप में पोस्ट नहीं करने वाला था, लेकिन एक्सोनक्रॉस ने मुझसे पूछा, इसलिए यहां हम जाते हैं:

(सिडेनोट: यदि कोई कम कोड उदाहरण में मार्कडाउन समस्या को ठीक कर सकता है, तो मैं इसकी सराहना करूंगा।)

एलेक्स मार्टेली द्वारा comp.lang.python पर पोस्ट किया गया : पाइथन की तुलना में रूबी के बारे में क्या बेहतर है? पर अगस्त 18, 2003 5:50 बजे

एरिक मैक्स फ्रांसिस ने लिखा है:

"ब्रैंडन जे। वान हर" ने लिखा है:

रूबी के बारे में पायथन से बेहतर क्या है? मुझे यकीन है कि कुछ है। यह क्या है? क्या पाइथन लोगों के बजाय रूबी लोगों से यह पूछना ज्यादा अच्छा नहीं होगा?

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

निश्चित रूप से, मैं रूबी में, प्रत्येक ब्लॉक के अंत में मूर्खतापूर्ण "अंत" टाइप करने के बजाय थका हुआ हो जाता हूं (बल्कि सिर्फ अनुत्तरदायी) - लेकिन फिर मुझे समान रूप से मूर्खतापूर्ण टाइपिंग से बचने के लिए मिलता है : जो पायथन के शुरू में आवश्यक है प्रत्येक ब्लॉक, तो यह लगभग एक धोने :-) है। अन्य वाक्यविन्यास अंतर जैसे @fooबनाम self.foo, या रूबी बनाम पायथन में मामले का उच्च महत्व, वास्तव में मेरे लिए अप्रासंगिक हैं।

दूसरों को कोई संदेह नहीं है कि बस ऐसे मुद्दों पर प्रोग्रामिंग भाषाओं की उनकी पसंद है, और वे सबसे गर्म बहस पैदा करते हैं - लेकिन मेरे लिए यह केवल पार्किंसंस कानूनों में से एक का एक उदाहरण है (कार्रवाई पर बहस की राशि मुद्दे के विपरीत आनुपातिक है वास्तविक महत्व)। एक वाक्यविन्यास अंतर जो मुझे महत्वपूर्ण लगता है, और पायथन के पक्ष में - लेकिन अन्य लोगों को कोई संदेह नहीं होगा कि बस उल्टा लगता है - "आप एक फ़ंक्शन को कैसे कहते हैं जो कोई पैरामीटर नहीं लेता है"। पायथन में (सी की तरह), एक फ़ंक्शन को कॉल करने के लिए आप हमेशा "कॉल ऑपरेटर" को लागू करते हैं - आप जिस वस्तु को कॉल कर रहे हैं उसके ठीक बाद कोष्ठक को पीछे छोड़ते हुए (उन अनुगामी कोष्ठक के अंदर आप जिस कॉल में पास हो रहे हैं, उस पर जाएं - यदि आप कोई आर्ग नहीं कर रहे हैं, तब कोष्ठक खाली हैं)। यह किसी भी वस्तु के मात्र उल्लेख को छोड़ देता है, जिसमें कोई भी संचालक शामिल नहीं है, जिसका अर्थ केवल वस्तु का संदर्भ है - किसी भी संदर्भ में, विशेष मामलों, अपवादों, तदर्थ नियमों और इस तरह के बिना। रूबी में (पास्कल की तरह), एक फ़ंक्शन को तर्कों के साथ कॉल करने के लिए, आप आर्ग्स पास करते हैं (आमतौर पर कोष्ठक में, हालांकि यह हमेशा मामला नहीं है) - लेकिन अगर फ़ंक्शन कोई आर्ग नहीं लेता है, तो फ़ंक्शन का उल्लेख करने के लिए इसे सीधे कॉल करें। यह कई लोगों की अपेक्षाओं को पूरा कर सकता है (कम से कम, कोई संदेह नहीं है, जिनकी प्रोग्रामिंग का एकमात्र पिछला अनुभव पास्कल के साथ था, या अन्य "समान कॉलिंग" जैसे विजुअल बेसिक के साथ अन्य भाषाओं में) - लेकिन मेरे लिए, इसका मतलब है किसी वस्तु का मात्र उल्लेख EITHER का अर्थ वस्तु के संदर्भ में हो सकता है, या वस्तु के लिए एक कॉल, ऑब्जेक्ट के प्रकार पर निर्भर करता है - और उन मामलों में जहां मुझे केवल इसका उल्लेख करके ऑब्जेक्ट का संदर्भ नहीं मिल सकता है, मुझे स्पष्ट रूप से उपयोग करने की आवश्यकता होगी "मुझे इसका संदर्भ दें, इसे कॉल न करें!" ऑपरेटरों कि अन्यथा की जरूरत नहीं है। मुझे लगता है कि यह कार्यों (या विधियों, या अन्य कॉल करने योग्य वस्तुओं) की "प्रथम-श्रेणीता" और सुचारू रूप से इंटरचेंज वस्तुओं की संभावना को प्रभावित करता है। इसलिए, मेरे लिए, यह विशिष्ट वाक्यविन्यास अंतर रूबी के खिलाफ एक गंभीर काला निशान है - लेकिन मुझे समझ में नहीं आता कि अन्य लोग क्यों अन्यथा बात करेंगे, भले ही मैं शायद ही उनके साथ और अधिक असहमत हो सकता हूं :-)। सिंटैक्स के नीचे, हमें प्रारंभिक शब्दार्थ में कुछ महत्वपूर्ण अंतर मिलते हैं - उदाहरण के लिए, रूबी में तार परस्पर वस्तुएं हैं (जैसे C ++ में) पायथन में रहते हुए वे परस्पर नहीं हैं (जैसे जावा में, या मेरा मानना ​​है कि C #)। फिर से, जो लोग मुख्य रूप से वे पहले से ही परिचित हैं, वे सोच सकते हैं कि यह रूबी के लिए एक प्लस है (जब तक कि वे जावा या सी # से परिचित नहीं हैं, निश्चित रूप से :-)। मुझे, मुझे लगता है कि अपरिवर्तनीय तार एक उत्कृष्ट विचार है (और मुझे आश्चर्य नहीं है कि जावा, स्वतंत्र रूप से मुझे लगता है, उस विचार को पुन: स्थापित किया जो पहले से ही पायथन में था), हालांकि मुझे "उत्परिवर्ती स्ट्रिंग बफर" प्रकार के रूप में भी बुरा नहीं लगेगा (और आदर्श रूप से जावा के अपने "स्ट्रिंग बफ़र्स" की तुलना में बेहतर आसानी से उपयोग के साथ एक); और मैं यह निर्णय परिचितता के कारण नहीं देता - जावा का अध्ययन करने से पहले, कार्यात्मक प्रोग्रामिंग भाषाओं के अलावा जहां जो लोग मुख्य रूप से पहले से ही परिचित हैं, वे सोच सकते हैं कि यह रूबी के लिए एक प्लस है (जब तक कि वे जावा या सी # से परिचित नहीं हैं, निश्चित रूप से :-)। मुझे, मुझे लगता है कि अपरिवर्तनीय तार एक उत्कृष्ट विचार है (और मुझे आश्चर्य नहीं है कि जावा, स्वतंत्र रूप से मुझे लगता है, उस विचार को पुन: स्थापित किया जो पहले से ही पायथन में था), हालांकि मुझे "उत्परिवर्ती स्ट्रिंग बफर" प्रकार के रूप में भी बुरा नहीं लगेगा (और आदर्श रूप से जावा के अपने "स्ट्रिंग बफ़र्स" की तुलना में बेहतर आसानी से उपयोग के साथ एक); और मैं यह निर्णय परिचितता के कारण नहीं देता - जावा का अध्ययन करने से पहले, कार्यात्मक प्रोग्रामिंग भाषाओं के अलावा जहां जो लोग मुख्य रूप से पहले से ही परिचित हैं, वे सोच सकते हैं कि यह रूबी के लिए एक प्लस है (जब तक कि वे जावा या सी # से परिचित नहीं हैं, निश्चित रूप से :-)। मुझे, मुझे लगता है कि अपरिवर्तनीय तार एक उत्कृष्ट विचार है (और मुझे आश्चर्य नहीं है कि जावा, स्वतंत्र रूप से मुझे लगता है, उस विचार को पुन: स्थापित किया जो पहले से ही पायथन में था), हालांकि मुझे "उत्परिवर्ती स्ट्रिंग बफर" प्रकार के रूप में भी बुरा नहीं लगेगा (और आदर्श रूप से जावा के अपने "स्ट्रिंग बफ़र्स" की तुलना में बेहतर आसानी से उपयोग के साथ एक); और मैं यह निर्णय परिचितता के कारण नहीं देता - जावा का अध्ययन करने से पहले, कार्यात्मक प्रोग्रामिंग भाषाओं के अलावा जहां मुझे लगता है कि अपरिवर्तनीय तार एक उत्कृष्ट विचार है (और मुझे आश्चर्य नहीं है कि जावा, स्वतंत्र रूप से मुझे लगता है, उस विचार को फिर से बहाल कर दिया है जो पहले से ही पायथन में था), हालांकि मुझे "म्यूटेबल स्ट्रिंग बफर" प्रकार के रूप में भी बुरा नहीं लगेगा (और आदर्श रूप से जावा के अपने "स्ट्रिंग बफ़र्स" की तुलना में बेहतर आसानी से उपयोग के साथ एक); और मैं यह निर्णय परिचितता के कारण नहीं देता - जावा का अध्ययन करने से पहले, कार्यात्मक प्रोग्रामिंग भाषाओं के अलावा जहां मुझे लगता है कि अपरिवर्तनीय तार एक उत्कृष्ट विचार है (और मुझे आश्चर्य नहीं है कि जावा, स्वतंत्र रूप से मुझे लगता है, उस विचार को फिर से बहाल कर दिया है जो पहले से ही पायथन में था), हालांकि मुझे "म्यूटेबल स्ट्रिंग बफर" प्रकार के रूप में भी बुरा नहीं लगेगा (और आदर्श रूप से जावा के अपने "स्ट्रिंग बफ़र्स" की तुलना में बेहतर आसानी से उपयोग के साथ एक); और मैं यह निर्णय परिचितता के कारण नहीं देता - जावा का अध्ययन करने से पहले, कार्यात्मक प्रोग्रामिंग भाषाओं के अलावा जहांसभी डेटा अपरिवर्तनीय हैं, मुझे पता था कि सभी भाषाओं में परिवर्तनशील तार थे - फिर भी जब मैंने पहली बार जावा में अपरिवर्तनीय-स्ट्रिंग विचार देखा था (जिसे मैंने पायथन सीखने से पहले अच्छी तरह से सीखा था), इसने मुझे तुरंत उत्कृष्ट के रूप में मारा, एक बहुत अच्छा फिट एक उच्च स्तरीय प्रोग्रामिंग भाषा के संदर्भ-शब्दार्थ के रूप में (मूल्य-शब्दार्थ के विपरीत जो मशीन के करीब की भाषाओं के साथ सबसे अच्छी तरह से फिट होते हैं और अनुप्रयोगों से दूर होते हैं, जैसे सी) एक प्रथम श्रेणी के रूप में स्ट्रिंग्स के साथ, बिल्ट-इन (और सुंदर) महत्वपूर्ण) डेटा प्रकार।

प्राथमिक शब्दार्थ में रूबी के कुछ फायदे हैं - उदाहरण के लिए, पायथन की "सूचियों बनाम ट्यूपल्स" को हटाने से अत्यधिक सूक्ष्म अंतर होता है। लेकिन ज्यादातर स्कोर (जैसा कि मैं इसे रखता हूं, सादगी के साथ एक बड़ा प्लस और सूक्ष्म, चतुर भेद एक उल्लेखनीय ऋण) रूबी के खिलाफ है (जैसे, दोनों बंद और आधे-खुले अंतराल के साथ, अंकन के साथ a.b और a .. .b [कोई भी दावा करना चाहता है कि यह स्पष्ट है कि कौन सा है? -)], मूर्खतापूर्ण है - IMHO, बिल्कुल।)। फिर से, जो लोग भाषा के मूल में समान लेकिन समान रूप से अलग-अलग चीजों पर विचार करते हैं, एक MINUS के बजाय एक PLUS, निश्चित रूप से इन "आसपास के अन्य तरीके" से गिनेंगे कि मैं उन्हें कैसे गिनता हूं :-)।

इन तुलनाओं से गुमराह न हों, यह सोचकर कि दो भाषाएँ बहुत हैंअलग, तुम मन। वे नहीं कर रहे हैं लेकिन अगर मुझे "कैपेली डींगेलो" की तुलना "स्पेगेटिनी" से करने के लिए कहा जाता है, तो यह इंगित करने के बाद कि ये दो प्रकार के पास्ता किसी के लिए बस अविवेच्य हैं और किसी भी डिश में विनिमेय है जिसे आप तैयार करना चाहते हैं, मैं तब अनिवार्य रूप से होगा इस बात की सूक्ष्म जांच करने के लिए कि कैसे लंबाई और व्यास अलग-अलग होते हैं, कैसे किस्में के सिरों को एक मामले में टेप किया जाता है और दूसरे में नहीं, और इसी तरह - कोशिश करने और समझाने के लिए कि मैं क्यों, व्यक्तिगत रूप से, बल्कि कैपिटल डी होगा 'किसी भी तरह के शोरबा में पास्ता के रूप में एंजेलो, लेकिन इस तरह के लंबे पतले पास्ता रूपों (जैतून का तेल, कीमा बनाया हुआ लहसुन, कीमा बनाया हुआ लाल मिर्च, और बारीक जमीन एन्कोवीज) के लिए उपयुक्त सॉस के साथ जाने के लिए पास्ताच्युत के रूप में स्पेगेटीनी पसंद करेंगे। उदाहरण के लिए - लेकिन अगर आपने लहसुन और मिर्च को उबालने के बजाय कटा हुआ है, तो आपको स्पेगेटी के पतले विस्तार के बजाय स्पेगेटी के साउंड बॉडी का चयन करना चाहिए, और अच्छी तरह से achoview को त्यागने और कुछ नए स्प्रिंग बेसिल को जोड़ने की सलाह दी जाएगी [ या यहां तक ​​कि - मैं एक विधर्मी हूँ ...! - हल्की पुदीना ...] पत्तियां - डिश को परोसने से पहले अंतिम समय पर)। ओह, क्षमा करें, यह दर्शाता है कि मैं विदेश यात्रा कर रहा हूं और थोड़ी देर के लिए पास्ता नहीं था, मुझे लगता है। लेकिन सादृश्य अभी भी बहुत अच्छा है! -) और अच्छी तरह से achoview को आगे बढ़ाने और इसके बजाय कुछ ताजा स्प्रिंग तुलसी [या यहाँ तक कि - मैं एक विधर्मी हूँ ... जोड़ने की सलाह दी जाएगी! - हल्की पुदीना ...] पत्तियां - डिश को परोसने से पहले अंतिम समय पर)। ओह, क्षमा करें, यह दर्शाता है कि मैं विदेश यात्रा कर रहा हूं और थोड़ी देर के लिए पास्ता नहीं था, मुझे लगता है। लेकिन सादृश्य अभी भी बहुत अच्छा है! -) और अच्छी तरह से achoview को आगे बढ़ाने और इसके बजाय कुछ ताजा स्प्रिंग तुलसी [या यहाँ तक कि - मैं एक विधर्मी हूँ ... जोड़ने की सलाह दी जाएगी! - हल्की पुदीना ...] पत्तियां - डिश को परोसने से पहले अंतिम समय पर)। ओह, क्षमा करें, यह दर्शाता है कि मैं विदेश यात्रा कर रहा हूं और थोड़ी देर के लिए पास्ता नहीं था, मुझे लगता है। लेकिन सादृश्य अभी भी बहुत अच्छा है! -)

इसलिए, पायथन और रूबी में, हम दो दिग्गजों के पास आते हैं (भाषा की दृष्टि से उचित - पुस्तकालयों को छोड़कर, और अन्य महत्वपूर्ण सहायक उपकरण जैसे उपकरण और वातावरण, प्रत्येक भाषा को कैसे एम्बेड / विस्तारित करें, आदि, आदि) अभी के लिए - वे वैसे भी प्रत्येक भाषा के सभी कार्यान्वयनों पर लागू नहीं होंगे, उदाहरण के लिए, जेथॉन बनाम क्लासिक पायथन, पायथन भाषा के दो कार्यान्वयन हैं!):

  1. रूबी के पुनरावृत्तियों और कोडब्लॉक बनाम पायथन के पुनरावृत्तियों और जनरेटर;

  2. रूबी के कुल, निरंकुश "dynamicity", "फिर से खोलना" किसी भी मौजूदा वर्ग, सभी में निर्मित सहित, और रन-टाइम में अपने व्यवहार को बदलने की क्षमता सहित - बनाम अजगर के विशाल लेकिन     घिरे dynamicity, जो मौजूदा के व्यवहार में परिवर्तन कभी नहीं अंतर्निहित कक्षाएं और उनके उदाहरण।

व्यक्तिगत रूप से, मैं 1 वॉश पर विचार करता हूं (मतभेद इतने गहरे हैं कि मैं आसानी से लोगों को या तो दृष्टिकोण से घृणा कर सकता हूं और दूसरे को श्रद्धांजलि दे सकता हूं, लेकिन मेरे व्यक्तिगत पैमानों पर प्लस और माइनस के बारे में भी); और [2] एक महत्वपूर्ण मुद्दा है - एक जो रूबी को "टिंकरिंग" के लिए अधिक उपयुक्त बनाता है, लेकिन ब्यूट पायथन बड़े उत्पादन अनुप्रयोगों में उपयोग के लिए समान रूप से अधिक उपयुक्त है। यह एक तरह से मज़ेदार है, क्योंकि दोनों भाषाएं अन्य लोगों की तुलना में बहुत अधिक गतिशील हैं, इसलिए अंत में मेरे POV से उनके बीच का महत्वपूर्ण अंतर इस पर टिका होना चाहिए - कि रूबी इस संबंध में "ग्यारह हो जाती है" (संदर्भ यहाँ "स्पाइनल टैप" है, निश्चित रूप से)। रूबी में,मैं कर सकता हूँ ! यानी, मैं गतिशील रूप से अंतर्निहित स्ट्रिंग वर्ग को बदल सकता हूं ताकि

a = "हैलो वर्ल्ड" 
b = "हैलो वर्ल्ड" 
अगर ए == बी 
    "बराबर! \ n" प्रिंट करें 
अन्य 
    प्रिंट "अलग! \ n" 
समाप्त
 

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

अगर मुझे इतने बड़े एप्लिकेशन के लिए रूबी का उपयोग करना था, तो मैं कोडिंग-शैली प्रतिबंधों पर भरोसा करने की कोशिश करूंगा, बहुत सारे परीक्षण (जब भी कुछ भी बदल जाए - फिर भी पूरी तरह से असंबंधित होना चाहिए ...), और पसंद है इस भाषा सुविधा के उपयोग पर रोक लगाने के लिए। लेकिन पहली जगह में फ़ीचर न होना और भी बेहतर है, मेरी राय में - जैसे कि पायथन खुद ही एप्लिकेशन प्रोग्रामिंग के लिए एक बेहतर भाषा होगी, अगर एक निश्चित संख्या में बिल्ट-इन "नॉट डाउन" हो सकता है, तो मैं KNEW कि , जैसे, len("ciao")4 है (बजाय किसी के मॉड्यूल lenमें नाम के बंधन को बदल दिया है कि क्या इसके बारे में चिंता करने की बजाय __builtins__...)। मुझे उम्मीद है कि अंततः पायथन अपने बिल्ट-इन को "नेल डाउन" करता है।

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

एलेक्स


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

27

शुभ लाभ

दिए गए उदाहरण विवरण में से कोई भी उद्देश्य या परीक्षण योग्य नहीं है। वे सभी प्रचार और राय हैं।

... सादगी और उत्पादकता ... अधिक तेज़ी से ... अधिक प्रभावी ढंग से।

कोशिश करो

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


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

1
@ Xeoncross: आपके द्वारा कोशिश की जाने वाली प्रत्येक भाषा के साथ, आप अपना अनुभव बढ़ाएंगे, और आप इसे अन्य भाषाओं में ले सकेंगे। एक भाषा में गोता लगाने के लिए 4 महीने कभी नहीं खोते हैं; और अगर भाषा वास्तव में बकवास है, तो आपको यह पता लगाने के लिए दो सप्ताह से भी कम समय चाहिए।
tdammers

यह सच है, कुछ बनाने के लिए केवल कुछ हफ़्ते लगने चाहिए और मुझे अनुभव से लाभ होगा क्योंकि आम तौर पर भाषाएं अन्य भाषाओं का अनुसरण करती हैं।
Xeoncross

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

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

8

मुझे लगता है कि समस्या का एक हिस्सा यह है कि जो कोई एक या एक से अधिक भाषाओं के बारे में सार्थक टिप्पणी करना जानता है , वह पूर्वाग्रह रखता है। लगभग 4 दशकों की प्रोग्रामिंग में मैंने जितनी भाषाओं में काम किया है, उससे अधिक मैं कर सकता हूं। मैं आपको उनमें से कुछ भाषाओं के बारे में राय (उनमें से कुछ दिनांक) दे सकता हूं, लेकिन उन रायों में से कोई भी निष्पक्ष नहीं होगी।

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

तो शायद आपको उन ग्राहकों के प्रकारों को देखना चाहिए जो उन परियोजनाओं में रुचि रखते हैं जो खुद को कुछ अलग करने के लिए उधार देते हैं, और फिर खुद को उनके लिए दिलचस्प बनाने पर काम करते हैं।


खैर, चूंकि मैं PHP में बहुत अच्छा हूँ - मैं इसमें काम करना जारी रखूँगा क्योंकि मैं अभी भी एक अच्छा जीवन बना सकता हूँ। मैं ज्यादातर अपने प्रोजेक्ट्स के लिए एक नई भाषा के बारे में सोच रहा था । मेरे जीवन में कुछ स्वाद जोड़ने में मदद करने के लिए कुछ। मैं केवल उन सभी वेब विकास के बारे में काम करता हूं जिनके बारे में आप सोच सकते हैं, एनएलपी, टेक्स्ट पार्सिंग, सीएमएस, एपीआई, स्टोरेज, आदि। इसके अलावा, कई भाषाओं में अनुभव वाले लोगों के पास केवल एक डिजाइन प्रक्रिया वाले लोगों की तुलना में बहुत कम पूर्वाग्रह है।
Xeoncross

आह। तब मैं अपने मानक उत्तर "सर्वश्रेष्ठ भाषा" -प्रश्न के प्रश्नों के साथ दूंगा: पायथन। "महत्वपूर्ण व्हाट्सएप" (जो करना संभव है) को अनदेखा करना, यह मेरे लिए एक आदर्श भाषा के करीब है। इसके अलावा, पायथन एपीआई के साथ बहुत उच्च गुणवत्ता वाले पुस्तकालयों की एक अद्भुत संख्या है। उदाहरण के लिए एनएलटीके, प्राकृतिक भाषा टूलकिट ( nltk.org )।
पीटर रोवेल

आह, लेकिन यह अजगर के बारे में क्या है जो इसे बेहतर बनाता है? अधिकांश भाषाएं सभी एक ही टूलकिट को साझा करती हैं - यह भाषा का डिज़ाइन है जो थ्रेडिंग,
कंसर्ट

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

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

7

अजगर

उन सभी का सबसे सार्वभौमिक और सामान्य उद्देश्य, लेकिन वेब प्रोग्रामिंग के मामले में भी उत्पादों का व्यापक विकल्प प्रदान करता है। मानकीकृत WSGI इंटरफ़ेस होने से फ्रेमवर्क और सर्वर के बीच काफी अंतर होता है। उल्लेखनीय पायथन वेब उत्पादों में से कुछ:

  • Django - पूरी तरह से उन्नत ORM के साथ परिपक्व उच्च-स्तरीय ढांचा, अस्थायी प्रणाली, फॉर्म हैंडलिंग आदि।
  • मुड़ - घटना-चालित (अतुल्यकालिक) नेटवर्क प्रोग्रामिंग के लिए रूपरेखा, इसका उपयोग चैट, सॉकेट सर्वर, वेब सेवाओं के लिए किया जा सकता है, आप इसे नाम देते हैं।
  • बवंडर - भी घटना-संचालित फ्रेमवर्क, लेकिन यह एक अतुल्यकालिक वेब सेवाओं के लिए डिज़ाइन किया गया है।

माणिक

रूबी भी काफी सार्वभौमिक भाषा है। लेकिन अब तक यह सबसे उल्लेखनीय उत्पाद है रूबी ऑन रेल्स। यह डिजाइन कई के लिए प्रेरणा रहा है (ऊपर उल्लेखित Django सहित)।

जावास्क्रिप्ट

वर्तमान में JS के लिए एकमात्र सर्वर-साइड पसंद है। यह टॉरनेडो और ट्विस्टेड (जिससे प्रेरित था) के समान है। हालाँकि, यह अभी भी Django या RoR के शीर्ष पर निर्मित की तरह पूरी तरह से विकसित ढांचे का अभाव है।

स्काला

कार्यात्मक भाषा होने के नाते यह बड़े पैमाने पर समानांतर कंप्यूटिंग के लिए बहुत अच्छा है, जहां तक ​​सामान्य प्रयोजन वेब प्रोग्रामिंग है वहां लिफ्ट - वेब फ्रेमवर्क RoR से प्रेरित है, उदाहरण के लिए फोरस्क्वेयर द्वारा उपयोग किया जाता है।


यह इंगित करने योग्य है कि गैर-अवरोधक प्रतिक्रियाएं, स्मृति उपयोग, संगामिति और अन्य कारक जैसी चीजें बाजार में एक नई भाषा के लिए बहुत बड़ी हैं जो एक वेब एप्लिकेशन को शक्ति प्रदान करेंगी।
Xeoncross

Django के लिए +1। इसने मेरे दिमाग को तब उड़ा दिया जब मैंने इसे सीखा ... वह, या मैं एक घोर स्तब्धता में था क्योंकि मैंने इसे और पायथन को समवर्ती रूप से सीखा था। किसी भी तरह से, एक महान तकनीक मैं इसे अपने कभी-मायावी "खाली समय" को फिर से देखना चाहूंगा।
ज़ोर्तनी

1
"... यह अभी भी पूरी तरह से विकसित ढांचे का अभाव है" चेक आउट एक्सप्रेस फॉर नोड - expressjs.com
टी। स्टोन

@ टी: हाँ, मैंने एक्सप्रेस को देखा है। Django और RoR के मजबूत बिंदुओं में से एक ORM है। एक्सप्रेस ऐसा लगता नहीं है।
वर्तक

3

अपने नवीनतम वेब-प्रोजेक्ट में मैंने PHP के साथ शुरू किया क्योंकि मैंने इसे वेब-प्रोजेक्ट के लिए पहले (त्वरित शुरुआत) के लिए इस्तेमाल किया था, लेकिन मुझे भाषा के साथ कई समस्याएं थीं जैसे खराब UTF-8 समर्थन और गतिशील टाइपिंग। मेरे पास कुछ जावा बैकग्राउंड भी हैं और मैं वास्तव में स्टैटिक टाइपिंग और अच्छे रीफैक्टरिंग टूल्स का आनंद लेता हूं। PHP की तुलना में Java का प्रदर्शन भी अच्छा है। लेकिन मुझे कार्यात्मक प्रोग्रामिंग की स्पष्टता भी पसंद है।

स्काला और प्ले फ्रेमवर्क

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

संक्षेप में, मैं स्कैला को प्रोग्रामिंग लैंग्वेज और प्ले फ्रेमवर्क को वेब फ्रेमवर्क के रूप में सुझाता हूं।


खेलने के लिए अच्छा लग रहा है, वास्तव में ( वास्तव में ) यह हालांकि testdrive करने के लिए एक मौका नहीं था । इसी तरह के php बैकग्राउंड से आने के बाद, मैंने लिफ्ट को आसानी से समझ लिया। यह भी प्ले से थोड़ा अधिक परिपक्व लगता है, लेकिन निर्णायक होने के लिए मैं स्काला के लिए बहुत नया हूं।
यानि

3

वास्तव में, आप तीन प्रकार के संसाधनों को देख रहे हैं:

  • वह जो भाषा की मूल बातें समझाता है और आप इसका उपयोग क्यों करना चाहते हैं,
  • वह जो कई भाषाओं की तुलना करता है।
  • वह जो किसी भाषा के किसी पहलू की आलोचना करता है।

वे दोनों संसाधन पक्षपाती होंगे।

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

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


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

इसका मतलब है कि आपको या तो समय (महीने, या साल) बिताने का अभ्यास करना होगा। या, आप बहुत कुछ पढ़ सकते हैं। लेकिन विरोधाभासी चीजों को पढ़ने की कोशिश करें । अगर कोई व्यक्ति लिखता है कि वह PHP से नफरत करता है और PHP कभी भी सबसे बुरी भाषाओं में से एक है, खासकर रूबी, सी # या जावा जैसी वास्तविक भाषाओं की तुलना में, एक ऐसे व्यक्ति को खोजने का भी प्रयास करें जो बताता है कि PHP अद्भुत है, और इसका उपयोग करने में आसान है। C #, जावा की तुलना में बहुत तेज, और बहुत ... (मैं वास्तव में नहीं जानता कि क्या) रूबी की तुलना में।

एक बात याद रखें: यदि आप पहले से ही अच्छी तरह से एक भाषा जानते हैं, तो आप शुरुआत में एक दूसरे को सीखते समय बहुत आलोचक होंगे , यह विश्वास करते हुए कि जिस भाषा को आप पहले से जानते हैं वह बेहतर और उपयोग करने में बहुत आसान है। यह लिनक्स के उपयोगकर्ताओं की तरह है जो विंडोज से नफरत करते हैं, और विंडोज उपयोगकर्ता जो लिनक्स से नफरत करते हैं: वास्तव में, न तो ओएस बेहतर है; यह सिर्फ इतना है कि एक लिनक्स उपयोगकर्ता विंडोज का उपयोग करना नहीं जानता है, और इसके विपरीत। आपके द्वारा दोनों में पर्याप्त अनुभव प्राप्त करने के बाद ही आप सही तरीके से निर्णय ले पाएंगे कि कौन सा आपके लिए बेहतर है।


पिछली बात, जिसे अक्सर भुला दिया जाता है: किसी भाषा के "परिवेश" का मूल्यांकन करने में सक्षम होना भी बहुत महत्वपूर्ण है:

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

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

2

खैर, चूंकि आपका एक मापदंड "काम करने के लिए मजेदार है" लगता है, मुझे लगता है कि आप पक्षपाती जानकारी ढूंढना चाहते हैं। अगर किसी चीज़ के लेखक को अपनी पसंद की भाषा का शौक है, तो एक अच्छा मौका है कि वे एक पक्षपाती मूल्यांकन देंगे।

हो सकता है कि आप इसे दूसरी दिशा से ले जाएं। चूंकि आप ध्वनि करते हैं जैसे आप एक शौक के बजाय कैरियर बनाने की बात कर रहे हैं, शायद आपको कुछ नौकरी विज्ञापनों का सर्वेक्षण करना चाहिए, कुछ दिलचस्प तकनीकों / भाषाओं को ढूंढना चाहिए और उन पर गौर करना चाहिए।

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


1

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


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

0

क्या आप वास्तव में PHP की सीमा तक पहुँच गए हैं, या जैसा कि आप जानते हैं , बस PHP की सीमाएँ हैं ?

क्या आपने द्रुपल में देखा है ? यह एक PHP- आधारित CMS और प्रोग्रामिंग फ्रेमवर्क है जो अच्छे कोडिंग मानकों और प्रथाओं को दृढ़ता से प्रोत्साहित करता है। (पिछली नौकरियों में OSCommerce के साथ काम करने के बाद, मुझे वहां आपका दर्द महसूस होता है।) हालांकि PHP- आधारित, यह अलग है कि अक्सर शुद्ध PHP में कुछ करने का "सही" तरीका ड्रुपल में करने का सही तरीका नहीं है, और आप इसे वास्तव में मास्टर करने के लिए चढ़ाई करने के लिए एक अच्छा सीखने की अवस्था के लिए जा रहे हैं। हालाँकि, यह एक भाषा और वेब विकास के रूप में PHP की क्षमताओं पर आपके दृष्टिकोण को बदल सकता है।


आखिरी बार जब मैंने द्रुपाल (4 और 5) को देखा, तो यह बुरा था। शायद उनके नए संस्करण अब उचित मानकों का उपयोग करते हैं। फिर भी, यह जितना धीमा होता है, मैं उतनी ही धीमी गति से वहाँ से बाहर निकलता हूँ।
Xeoncross
हमारी साइट का प्रयोग करके, आप स्वीकार करते हैं कि आपने हमारी Cookie Policy और निजता नीति को पढ़ और समझा लिया है।
Licensed under cc by-sa 3.0 with attribution required.