2009-06-02 15 views
8

मैंने 8 वर्षों में सी ++ को स्पर्श नहीं किया है। मुझे हाल ही में कुछ सी ++ कोड ठीक करना पड़ा, और हालांकि मैं अभी भी कोड कर सकता हूं, मुझे लगता है कि मैं सी ++ प्रोग्रामर के शिविर से अधिक नहीं हूं। मुझे किसी पुस्तकालयों को नहीं पता, नई भाषा सुविधाओं/सुधार/सर्वोत्तम प्रथाओं पर ध्यान नहीं दिया।आधुनिक सी ++ संसाधनों को फिर से सीखें?

क्यूटी निर्माता और क्यूटी अब मुझे जो चाहिए, उसके लिए एक अच्छा टूलसेट जैसा लगता है, क्योंकि मुझे अधिकांशतः क्रॉस प्लेटफार्म विकास में दिलचस्पी है।

मेरे जैसे किसी के लिए सी ++ को फिर से सीखने और कम से कम समय में सर्वोत्तम प्रथाओं के लिए अच्छे संसाधन क्या होंगे?

सी, फ्लेक्स, स्कैला और हास्केल के लिए एक छोटी सी दिशा के साथ, मैं ज्यादातर जावा और सामान्य लिस्प कर रहा हूं।

+0

यहां कुछ अच्छे विचार मिल सकते हैं: http://stackoverflow.com/questions/777764/what-modern-c- पुस्तकालय-should-be-in-my-toolbox/777779 –

+0

कृपया ध्यान दें कि इनमें से कुछ उत्तर नहीं हैं 2017 में अब प्रासंगिक! भाषा पिछले 8 वर्षों में एक लंबा सफर तय कर चुकी है, साथ ही यहां सुझाए गए कुछ संसाधनों ने लगभग एक दशक तक सवाल का अनुमान लगाया है। – einpoklum

उत्तर

6

S.tandard T.emplate L.ibrary को जानें।

यदि आप वास्तव में अत्याधुनिक हैं तो बूस्ट को जानें।

स्कॉट मेयर्स द्वारा "प्रभावी सी ++" और "प्रभावी एसटीएल" किताबें पढ़ें।

"C++ faq lite" पढ़ें।

(necsissarily इसी क्रम में नहीं)

1

पहले संकेत दिए गए, संदर्भ, आदि

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

हालांकि यह एसटीएल/बूस्ट को जानने/उपयोग करने में कोई दिक्कत नहीं होगी। लेकिन जीटीके से दूर (दूर) रहें।

+1

आप पॉइंटर्स के बारे में नहीं भूलते हैं। यह एक bicicle सवारी की तरह है, आप जमीन को कुछ बार मारा और इसे कभी नहीं भूलना। इसके बारे में सोचने के लिए आओ, आपको भी वही ताजा हवा आजादी मिलती है ... – Javier

+1

उल्लेख नहीं है: नंगे पॉइंटर्स के बारे में भूल जाओ। स्मार्ट पॉइंटर्स बहुत बेहतर हैं। (ठीक है, मैं थोड़ा अतिरंजित कर रहा हूं, लेकिन स्मार्ट पॉइंटर्स के पास नंगे पॉइंटर को वापस पाने के तरीके हैं।) –

+2

आप कैसे निर्धारित करते हैं कि क्यूटी के कंटेनर एसटीएल के कंटेनर के बाद अधिक कुशल हैं? –

2

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

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

14

पढ़ें:

उन सी पर संदर्भ पुस्तकें हैं ++ जो सी ++ पर सभी आधुनिक प्रभावी प्रस्तुतियों, दर्शन और ज्ञान को फिर से शुरू करता है (मेटा-प्रोग्रामेशन सामान में जाने के बिना)।

तो अगर आप आगे जाना चाहते हैं, पढ़ते हैं:

पुस्तकालयों के बारे में: पहले एसटीएल के बारे में जानने और Boost को "मानक" एसटीएल एक्सटेंशन के रूप में उपयोग करना सीखें।

+0

+1। मैं एक लोकी-लिब डेवलपर हूं :) –

+0

प्रभावी सी ++ के लिए +1। यह स्वर्ण मानक और ईमानदारी से है यदि मैं एक टीम के प्रभारी थे, तो मैं सुनिश्चित करता हूं कि हर कोई इसे पढ़े। – rlbond

+0

सी ++ किताबों की सबसे अच्छी सूची जो मैंने अभी तक देखी है। मेरी इच्छा है कि प्रत्येक सी ++ डेवलपर इन कवरों में से प्रत्येक को कवर करने के लिए पढ़ेगा। –

1

कोड कोड और फिर कोड अधिक!

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

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

2

एकेनिग और बीएम के Accelerated C++ पर एक नज़र डालें।

उद्धृत अन्य पुस्तकें अच्छी किताबें हैं, लेकिन उन्हें आपको सभी को पढ़ने के लिए बहुत समय की आवश्यकता होगी। एसी ++ आधुनिक सी ++ सिखाता है (ऐतिहासिक सी ++ के विरोध में - यह टेम्पलेट्स जादूगर के बारे में नहीं है)।

बीस्ट्रोस्ट्रप, Programming -- Principles and Practice Using C++ की नवीनतम पुस्तक, लगता है (मैंने इसे अभी तक नहीं पढ़ा है) भी दिलचस्प है।

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