2014-11-25 9 views
7

भले ही टीसीपी/यूडीपी/आईपी आमतौर पर प्रोटोकॉल का उपयोग किया जाता है, मुझे नहीं पता कि वे इसे आईएसओ सी ++ मानक का हिस्सा क्यों बनना चाहते हैं। इनके पास भाषा के मूल से कोई लेना देना नहीं है। डेटा संरचनाएं सार्वभौमिक रूप से आवश्यक उपकरण हैं इसलिए एसटीएल समझ में आता है लेकिन ये प्रोटोकॉल बहुत विशिष्ट आईएमओ हैं।सी ++ 14/17 के लिए नेटवर्किंग लाइब्रेरी प्रस्ताव क्यों है?

+0

यह सवाल भी ओपन एंडेड है। आप इसे C++ मेलिंग सूचियों में ले जाने से बेहतर हैं। –

+3

प्रस्ताव पुस्तकालय के लिए है, न कि "भाषा का मूल"। मैं एक के लिए एक मानक नेटवर्क पुस्तकालय उपयोगी मिलेगा। –

+0

यदि यह आईएसओ सी ++ मानक का हिस्सा बन जाता है, तो क्या होगा यदि मैं एक ऐसे ऑपरेटिंग सिस्टम पर उस कंपाइलर का उपयोग करता हूं जिसमें टीसीपी/आईपी स्टैक नहीं है? –

उत्तर

7

सी ++ 11 मानक में थ्रेडिंग शामिल है। अब प्रोग्रामर को लिनक्स में PThread और Windows में Windows Threads लिखने की आवश्यकता नहीं है। नेटवर्किंग लाइब्रेरी मानकीकृत होने पर भी ऐसा ही हो सकता है।

+3

मुझे थ्रेड समान रूप से सार्वभौमिक लगता है। लेकिन टीसीपी/यूडीपी आईएमओ नहीं है। विकल्प हैं (उदाहरण के लिए एससीटीपी - हालांकि मुख्य रूप से 3 जीपीपी में उपयोग किया जाता है) –

+0

@ बेनजी मिजराही यह उल्लेखनीय है कि मानक नेटवर्किंग लाइब्रेरी आसानी से विस्तारित होगी और एससीटीपी के लिए मल्टीप्लार्टर कार्यान्वयन जोड़ना आसान और बहु-प्रारूप होगा। –

14

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

इस प्रकार राय का वह पक्ष जाता है।

बेशक ऐसे लोग भी हैं जो सोचते हैं कि यह वही तरीका होना चाहिए। फिर भी, मानकीकरण कठिन काम है, और जबकि जावा और सी # और गो जैसी भाषाओं में बड़ी कंपनियों हैं जो बड़ी पुस्तकालय विकसित करने में ऊर्जा डाल सकती हैं, सी ++ में उस तरह की जनशक्ति नहीं है, और अधिकांश लोग जो सी ++ मानकीकरण पर समय बिताते हैं प्रोग्रामिंग के मूल पहलुओं में अधिक रुचि रखते हैं: डेटा संरचनाएं, समरूपता, भाषा विकास (अवधारणाएं, श्रेणियां, मॉड्यूल ...)।

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

(आप फाइल सिस्टम के लिए और ग्राफिक्स के लिए तकनीकी विनिर्देश बनाने के लिए इसी तरह के प्रयासों को देखा हो।)

+1

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

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