हम ...
ऐसा लगता है कि मुझे इस चर्चा में थोड़ी देर हो गई है - लेकिन मैंने अभी इसे खोज लिया है। और इतने इनपुट के लिए मैं आप सभी का आभारी हूं।
मैं G-WAN का लेखक हूं, जो यह स्पष्ट करता है कि मैंने इस मामले पर गंभीरता से काम किया है: G-WAN अन्य सभी वेब सर्वर (कोई प्रोसेसिंग नहीं) और अन्य सभी वेब एप्लिकेशन सर्वर (कोई भी प्रोसेसिंग जिसकी आप कल्पना कर सकते हैं) की तुलना में तेज है ।
हां, एएनएसआई सी ने अधिक स्थिर सामग्री को संसाधित करना संभव बना दिया - कम शक्तिशाली सीपीयू के साथ (एएनएसआई सी केवल गतिशील सामग्री बनाने के बारे में नहीं है)।
वैसे, G-WAN C स्क्रिप्ट (कोई C कंपाइलर और लिंकर की जरूरत नहीं है) का उपयोग करता है इसलिए संकलन / लिंकिंग चक्र / विलंब मौजूद नहीं है।
G-WAN को .NET Java और PHP से तुलना करने की प्रक्रिया में, मैंने सभी 4 भाषाओं में समान अनुप्रयोग लिखे : http://gwan.ch/ource/
और, मेरे निराशा के लिए, आधुनिक स्क्रिप्टिंग भाषाओं का उपयोग करना आसान नहीं था ।
नौकरी का एक हिस्सा जो विशेष रूप से निराशाजनक है , वह 'जादू' एपीआई कॉल के लिए सख्त खोज करना है जो आप करना चाहते हैं।
इस बारे में सोचें कि 'सुंदर हजारों' कैसे करें:
सी#
String.Format("{0:n}"...
जावा
new DecimalFormat("0.00"); ...
पीएचपी
number_format($amount, 2); ...
ANSI सी
sprintf("%'.2f", amount);
"..." का अर्थ है कि कुछ पूर्व-विन्यास, या पोस्ट प्रोसेसिंग आवश्यक है। एएनएसआई सी स्पष्ट रूप से उपयोग करने और याद रखने में आसान है।
जब PHP में 5900 से अधिक एपीआई कॉल (C # और Java दूर नहीं) हैं, तो सही API कॉल को ढूंढना अपने आप में एक चुनौती है। इसे खोजने के लिए व्यर्थ समय (और फिर मूल एपीआई कॉल को कितनी बुरी तरह से लागू किया गया है) यह जानने के लिए, अगली बार जब आपको इसकी आवश्यकता हो, तो इसे सीखने का समय, यह सब समय आपके आवेदन को हल करने के लिए आवश्यक समय से आपको वंचित कर रहा है। समस्या।
मैंने पढ़ा है (ऊपर) कि PHP ANSI C से अधिक संक्षिप्त है? तो "//:: this is a comment ::"
बजाय उपयोग क्यों "// this is a comment"
? एक मूर्खतापूर्ण जटिल 'सुंदर हजारों' वाक्य रचना क्यों है?
अन्य सामान्य तर्क यह है कि जावा और जैसे वेब अनुप्रयोगों के लिए समर्पित कॉल प्रदान करते हैं।
मुझे जावा में HTML से बचने के लिए कुछ भी नहीं मिल रहा था इसलिए मैंने इसका संस्करण लिखा:
// all litteral strings provided by a client must be escaped this way
// if you inject them into an HTML page
public static String escape_html(String Name) {
int len = Name.length();
StringBuffer sb = new StringBuffer(len);
boolean lastWasBlankChar = false;
int c;
for(int i=0; i<len; i++) {
c = Name.charAt(i);
if(c == ' ') sb.append(" "); else
if(c == '"') sb.append("""); else
if(c == '&') sb.append("&"); else
if(c == '<') sb.append("<"); else
if(c == '>') sb.append(">"); else
if(c == '\n') sb.append("<br/>"); else {
c = c&0xffff; // unicode
if(c < 32 || c > 127) {
sb.append("&#");
sb.append(new Integer(c).toString());
sb.append(';');
} else
sb.append(c);
}
}
return sb.toString();
//szName = sb.toString();
}
क्या आप वास्तव में मानते हैं कि ANSI C में समान कोड अधिक जटिल होगा? नहीं, यह बेहद सरल और तेज दोनों होगा ।
जावा (सी से प्राप्त) है की आवश्यकता होती है के साथ एक '+' लिंक बहु लाइन तार करने के लिए प्रोग्रामर
सी # (सी से प्राप्त) है की आवश्यकता होती है एक '+' के साथ लिंक बहु लाइन तार करने के लिए प्रोग्रामर
पीएचपी (सी से प्राप्त) है की आवश्यकता होती है करने के लिए प्रोग्रामर लिंक मल्टी-लाइन स्ट्रिंग्स के साथ '।'
ANSI C के पास अब यह पूरी तरह से बेवकूफ (अप्रचलित) आवश्यकता नहीं है।
तो, क्या आधुनिक भाषाओं ने इतनी स्पष्ट प्रगति का दावा किया था? मैं अब भी इसकी तलाश में हूं।
निष्ठा से,
पियरे।