2010-12-08 11 views
5

मुझे basic OOP-related topics, RTTI, Templates पता है। Java' Collection Framework से वापस लौटने पर, मैंने C++ में ऐसे संग्रह खोजने की कोशिश की और STL पाया, और मैं अपनी परियोजनाओं में इसका उपयोग करने की कोशिश कर रहा हूं (हालांकि मैं उन्हें अंदर और बाहर नहीं जानता)। मैंने Accelerated C++, Effective and More Effective C++ जैसी किताबों के लिए सिफारिशों की खोज की और पाया।सी ++ | प्रगति पथ

लेकिन मुझे यकीन नहीं है कि मेरा प्रगति पथ क्या होना चाहिए। अक्सर अपने कोड

  • डिस्कवर Decorators
  • पुनरावर्ती कार्यों लिखें में

    def apprentice(): 
        read(diveintopython) 
        experiment(interpreter) 
        read(python_tutorial) 
        experiment(interpreter, modules/files) 
        watch(pycon) 
    
    def master(): 
        refer(python-essential-reference) 
        refer(PEPs/language reference) 
        experiment() 
        read(good_python_code) # Eg. twisted, other libraries 
        write(basic_library) # reinvent wheel and compare to existing wheels 
        if have_interesting_ideas: 
        give_talk(pycon) 
    
    def guru(): 
        pass # Not qualified to comment. Fix the GIL perhaps? 
    
    1. डिस्कवर list comprehensions
    2. डिस्कवर generators
    3. समाविष्ट map, reduce, filter, iter, range, xrange,: Python-Progression Path - मैं कुछ इस तरह रहा हूँ बहुत
    4. डिस्कवर itertools और functools
    5. पढ़ें Real World Haskell
    6. पुनर्लेखन सभी अपने पुराने अजगर उच्च आदेश कार्यों, प्रत्यावर्तन, और whatnot की टन के साथ कोड।
    7. हर बार जब वे आपको पाइथन कक्षा के साथ पेश करते हैं तो अपने क्यूबिकल साथी को परेशान करें। दावा करें कि इसे और कुछ फ़ंक्शंस के रूप में "बेहतर" लागू किया जा सकता है। कार्यात्मक प्रोग्रामिंग गले लगाओ।
    8. Strategy पैटर्न को फिर से खोजें और फिर all those things अनिवार्य कोड से आपने हास्केल के बाद भूलना बहुत कठिन प्रयास किया।
    9. एक संतुलन खोजें।
  • +2

    यद्यपि आप सी ++ सवाल शीर्षक और एक C++ टैग में है , प्रश्न में सी ++ के साथ कुछ भी नहीं दिखता है। इसके बारे में सोचने के लिए आओ, सवाल क्या है? –

    +1

    निहित प्रश्न यह है कि "सी ++ के छात्रों के लिए इस सूची के बराबर क्या है?" –

    +0

    @ चार्ल्स बेली: मैंने अपना प्रश्न अपडेट किया। –

    उत्तर

    3

    यह एक कठिन सवाल है, क्योंकि आपको जो चाहिए वह वास्तव में अच्छा हो रहा है जो आप करते हैं, और इस प्रकार कोई आधिकारिक सूची मौजूद नहीं है।

    कहा जा रहा है ...

    • पढ़ें Effective C++ मेयर्स द्वारा और C++ Coding Standards सूटर करके, आप अगर आप शुरुआत कर रहे हैं सब कुछ समझने के लिए, इसलिए उन्हें समय-समय पर फिर से पढ़ संभावना नहीं कर रहे हैं
    • समय (यह भी एक अच्छा टीका है) एसटीएल (यह एक अद्भुत छोटा मोती है) पेश करने के लिए, यदि संभव हो तो सी ++ 0x संस्करण
    • मिश्रण में बूस्ट को शामिल करें, धीरे-धीरे पहले: boost::optional, मिश्रण में बूस्ट को शामिल करें, सब कुछ हाथ से क्राफ्टिंग करने के बजाय अपने एल्गोरिदम का उपयोग करना सीखें। boost::variant, boost::lexical_cast, boost::numeric_cast अपना कोड सुरक्षित और अधिक बेवकूफ बनाओ। बूस्ट स्ट्रिंग एल्गोरिदम लाइब्रेरी को भी दबाएं।
    • टेम्पलेट मेटा प्रोग्रामिंग और बूस्ट.एमपीएल अगली हैं: अब्राहम गुर्टोवॉय द्वारा सी ++ टेम्पलेट मेटा प्रोग्रामिंग वहां मदद करेगी। आपको कुछ टेम्पलेट सामानों के लिए बूस्ट.प्रप्रोसेसर का लाभ उठाना पड़ सकता है।
    • और जानें बूस्ट लाइब्रेरीज़, यह एक विशाल भंडार है और यह सभी पुस्तकालयों में आश्चर्यजनक है।

    मुझे लगता है कि अंतिम भाग अपने आप पर अभी भी कर रहा हूँ, तो हर कदम पर आगे जाने :)

    पर कोई टिप्पणी नहीं कर सकते हैं, तो आप कोड का एक बहुत कुछ लिखना चाहिए, पढ़ने के लिए पर्याप्त नहीं है, तो आप प्रयोग करने के लिए की जरूरत है। प्रोग्रामिंग सिर्फ तकनीकी नहीं है, कार्यक्रम का वास्तुकला हिस्सा क्षेत्र में बेहद महत्वपूर्ण है।

    ओह और कोशिश करते हैं और शामिल होने के (यदि केवल पढ़ने के लिए) एक खुला स्रोत परियोजना, कुछ भी कोड लिखने धड़क रहा है और यह बेहतर है जब किसी और यह :) की समीक्षा करता है

    0

    सबसे पहले मैं "डीप सी राज" पीटर वैन दर लिंडन द्वारा की सिफारिश सी के साथ वास्तव में अच्छा मिलता है।

    स्कॉट मेयर्स द्वारा "प्रभावी सी ++" की एक प्रति प्राप्त करें, और स्मृति को इसकी सलाह दें ("अधिक प्रभावी सी ++" भी बहुत अच्छा है)।

    कोप्लिएन द्वारा "उन्नत सी ++" पढ़ें।

    The C++ FAQ पढ़ें।

    इस बिंदु पर स्ट्राउस्ट्रप द्वारा "सी ++ प्रोग्रामिंग भाषा" पढ़ें।

    +6

    सी के साथ अच्छा होना वास्तव में आपको सी ++ में से बचने के लिए बुरी आदतों को सिखा सकता है। –

    +0

    @ मार्क बी: सहमत। मैं निश्चित रूप से संभावित सी ++ छात्रों सी आदतों को नहीं सिखाऊंगा। – Puppy

    +0

    यह अच्छा लगता है कि सी आदतों को वापस गिरना अच्छा लगता है जब आप पाते हैं कि कुछ सी ++ सामान बहुत धीमी है। –

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