मुझे पता है कि यह एक बिंदु-सवाल की तरह लग रहा है, लेकिन मुझे समझाने दो कि मैं कहाँ से आ रहा हूँ।
कॉलेज से बाहर मुझे एक PHP शॉप में नौकरी मिल गई। मैंने वहां डेढ़ साल तक काम किया और मुझे लगा कि प्रोग्रामिंग के बारे में जानने के लिए मैंने वहीं सीखा है।
तब मुझे एक बड़े निगम में एक आदमी की आंतरिक विकास की दुकान के रूप में नौकरी मिली जहाँ सारा काम C # में था। स्थिति के प्रति मेरी प्रतिबद्धता में मैंने ब्लॉग और पुस्तकों का एक टन पढ़ना शुरू किया और जल्दी से महसूस किया कि मुझे लगता है कि मैं सब कुछ जानता था कि कितना गलत था। मैंने यूनिट परीक्षण, निर्भरता इंजेक्शन और डेकोरेटर पैटर्न, ढीली कपलिंग के डिजाइन सिद्धांत, विरासत बहस पर रचना और इतने पर और इसके बारे में सीखा - मैं अभी भी बहुत ज्यादा यह सब अवशोषित कर रहा हूं। कहने की आवश्यकता नहीं कि मेरी प्रोग्रामिंग शैली पिछले वर्ष में पूरी तरह से बदल गई है।
अब मैं अपने आप को एक दोस्त के स्टार्ट-अप के लिए कुछ कोडिंग कर रहा एक php प्रोजेक्ट उठा रहा हूं और C # में प्रोग्रामिंग के विपरीत पूरी तरह से विवश महसूस करता हूं। यह वास्तव में मुझे परेशान करता है कि एक वर्ग दायरे के सभी चर को '$ this->' को जोड़कर संदर्भित करना होगा। यह मुझे गुस्सा दिलाता है कि मैंने जो भी IDE की कोशिश की है उनमें से कोई भी बहुत अच्छा नहीं है और मेरी SimpleTest इकाई परीक्षण विधियों को 'परीक्षण' शब्द से शुरू करना है। यह मुझे पागल कर देता है कि डायनामिक टाइपिंग मुझे स्पष्ट रूप से निर्दिष्ट करने से रोकती है कि कौन सा पैरामीटर प्रकार एक विधि की अपेक्षा करता है, और आपको विधि अधिभार करने के लिए एक स्विच स्टेटमेंट लिखना होगा। मैं यह नहीं कह सकता कि आपके पास नेस्टस्पेस नाम नहीं हो सकते हैं और बेस क्लास के कंस्ट्रक्टर को कॉल करने के लिए :: ऑपरेटर का उपयोग करना होगा।
अब मेरा PHP बनाम C # बहस शुरू करने का कोई इरादा नहीं है, बल्कि मेरे कहने का मतलब यह है कि मुझे यकीन है कि कुछ PHP विशेषताएँ हैं जिनके बारे में मुझे या तो नहीं पता है या जिनके बारे में अभी तक ठीक से उपयोग करने में विफल हैं। मैं अपने सी # ब्रह्मांड में सेट हूं और कांच के कटोरे के बाहर देखने में परेशानी हो रही है।
तो मैं पूछ रहा हूँ, PHP की आपकी पसंदीदा विशेषताएँ क्या हैं? ऐसी कौन सी चीजें हैं जो आप इसमें कर सकते हैं जो आप .net भाषाओं में नहीं कर सकते हैं या अधिक कठिन हैं?