एब्स्ट्रक्शन कंप्यूटर प्रोग्रामिंग की एक प्रमुख अवधारणा है और प्रोग्रामर इसे प्राप्त करने में मदद करते हैं। यह एक अच्छी बात है। मुझे संदेह है कि कई लोग असेंबली भाषा में जटिल सिस्टम विकसित करना चाहेंगे! समस्या यह है कि, मुझे लगता है, जब प्रोग्रामर को इस बात का कम ही पता होता है कि अमूर्त परत क्या है। दूसरे शब्दों में, आपको कुछ विचार करने की आवश्यकता है कि हुड के नीचे क्या होता है, भले ही आप इसके साथ सीधे बातचीत या इंटरफ़ेस न करें।
मुझे याद है कि 90 के दशक के मध्य में C और CGI का उपयोग करके पहली बार कुछ डायनेमिक वेबसाइटों को विकसित किया गया था (ऐसे समय में जब अधिकांश वेबसाइटें अभी भी स्थिर HTML थीं)। वास्तव में कोई भी परिपक्व सर्वर-साइड स्क्रिप्टिंग लैंग्वेज (जैसे PHP या ASP) और बहुत कम लाइब्रेरियाँ नहीं थीं, इसलिए आपको हर पेज के साथ सर्वर पर संपूर्ण HTTP रिस्पांस स्ट्रीम लिखना था। अपने स्वयं के पुस्तकालय को लिखने के लिए GET और POST मापदंडों की आवश्यकता होती है। यह थकाऊ, धीमा, कड़ी मेहनत और बहुत त्रुटि प्रवण था। मैं इसे एक बिट याद नहीं है!
हालाँकि, मुझे यह भी लगता है कि ASP.NET वेब-फॉर्म्स जैसे कि वेब के संपूर्ण स्टेटलेस नेचर को एक ऐसे पॉइंट पर समेट दिया है, जहाँ कई नए वेब डेवलपर्स के पास इस बात का थोड़ा सुराग होता है कि वास्तव में हुड के नीचे क्या चल रहा है। यह अयोग्य, फूला हुआ कोड होता है जो खराब प्रदर्शन करता है क्योंकि डेवलपर एक "खींचें'एनआईडीआरपी" कार्यप्रणाली का उपयोग करके एक साथ पाइपलाइन घटक है, जो यह महसूस करता है कि HTTP स्तर पर क्या चल रहा है।
इसलिए, मेरा मानना है कि उच्च-स्तरीय सॉफ़्टवेयर विकसित करने के लिए रूपरेखाएँ आवश्यक हैं, लेकिन वे डेवलपर्स को अनुपस्थित नहीं करते हैं जो कि कुछ सार समझ रहे हैं। हां, चौखटे आपको गूंगा बना सकते हैं, लेकिन केवल तभी जब आप उन्हें समझने में असफल हों।