मैं समझता हूं कि बहुत सारी प्रोग्रामिंग लैंग्वेज हैं (जैसे Q #, Qiskit, आदि)
कौन सा किसी के लिए उपयुक्त है जिसने अभी प्रोग्रामिंग सीखना शुरू किया है और क्वांटम यांत्रिकी के बारे में कुछ भी नहीं जानता है?
मैं समझता हूं कि बहुत सारी प्रोग्रामिंग लैंग्वेज हैं (जैसे Q #, Qiskit, आदि)
कौन सा किसी के लिए उपयुक्त है जिसने अभी प्रोग्रामिंग सीखना शुरू किया है और क्वांटम यांत्रिकी के बारे में कुछ भी नहीं जानता है?
जवाबों:
भाषाएँ स्वयं सभी अनिवार्य रूप से एक नए उपयोगकर्ता के लिए समान हैं। वे सभी क्वांटम संचालन के एक ही मूल सेट को लागू करते हैं, जो कि पिछले कुछ दशकों से शोधकर्ताओं द्वारा उपयोग किए गए हैं।
यदि आपने अभी-अभी प्रोग्रामिंग शुरू की है, तो आपके लिए सबसे प्रासंगिक कारक वह भाषा हो सकती है जो क्वांटम एसडीके में लिखी गई है। वे ज्यादातर पायथन में हैं, लेकिन क्यूसेट में स्विफ्ट और जावा संस्करण भी हैं। Q # को Visual Studio में एकीकृत किया गया है।
इससे परे, चीजों में मतभेद हैं
मैं जो कुछ भी सुझाता हूं , उसमें बहुत पक्षपाती हूं (और इसलिए मुझे उम्मीद है कि अन्य लोग अलग-अलग दिशाओं में पक्षपाती होंगे, आपके सवाल का जवाब भी देंगे) लेकिन मैं कहूंगा कि QISKit ब्लॉग पर एक नज़र डालना एक अच्छी शुरुआत हो सकती है। यहाँ मेरे अपने लेखों की एक जोड़ी है
यह उन भाषाओं पर निर्भर करता है जिनके साथ आपकी अधिक आत्मीयता होगी।
किस्किट, pyQuil, आदि पायथन में हैं, जो एक प्रोग्रामिंग लैंग्वेज है, जिसे आमतौर पर बहुत सारे सहायक पुस्तकालयों के साथ समझना आसान है। वे किसी भी शुरुआती को क्वांटम कंप्यूटिंग शुरू करने के लिए दस्तावेज / ट्यूटोरियल प्रदान करते हैं। कोड लिखना कुछ लाइनों में किया जा सकता है।
क्यू # सी # में है। मैंने इसकी कोशिश नहीं की है, लेकिन अगर आपने C या C ++ (और इसे पसंद) पर ध्यान केंद्रित करते हुए प्रोग्रामिंग सीखना शुरू कर दिया है, तो मुझे लगता है कि आपको इस पर सहज होना चाहिए।
सीखने के लिए, मैं येलोफस्की और मन्नुसी से कंप्यूटर वैज्ञानिकों के लिए नीलसन और चुआंग या क्वांटम कम्प्यूटिंग पुस्तक क्वांटम कम्प्यूटेशन और क्वांटम सूचना को पढ़ने की सिफारिश करूंगा; यदि आपके पास उनकी पसंद के प्लेटफ़ॉर्म में कुछ कोड पर उनके समानांतर और समान पहुंच हो सकती है। लेकिन हमेशा बेहतर समझने के लिए विभिन्न स्रोतों और स्पष्टीकरणों को संयोजित करना एक अच्छा विचार है।
मैं जेम्स वॉटन के जवाब से सहमत हूं। एक बड़ी परियोजना पर काम करते समय भाषा का चुनाव महत्वपूर्ण हो जाता है जिसमें आप पुस्तकालयों, संसाधन अनुमानों और अन्य उन्नत सुविधाओं पर निर्भर रहना चाहते हैं। जब आप क्वांटम कंप्यूटिंग और क्वांटम प्रोग्रामिंग की मूल बातें सीखना शुरू कर रहे हैं, तो आपके कार्यक्रम बहुत छोटे होंगे और वास्तव में विभिन्न भाषाओं में भिन्न नहीं होंगे।
मुझे लगता है कि आप क्वांटम कंप्यूटिंग के सिद्धांत पर किसी किताब / पाठ्यक्रम से गुजरेंगे। इस मामले में, दो चीजें हैं जो आप निश्चित रूप से प्रोग्रामिंग भाषा से चाहते हैं:
मेरी सिफारिश (अलग दिशा में पक्षपाती है, जैसा कि जेम्स ने सुझाव दिया :-)) क्यू # पर एक नज़र रखना है: