Quale linguaggio di programmazione è adatto per un principiante?


12

Capisco che ci sono molti linguaggi di programmazione (ad es. Q #, Qiskit, ecc.)

Quale è adatto a qualcuno che ha appena iniziato a studiare la programmazione e non sa nulla di meccanica quantistica?

Risposte:


7

Le lingue stesse sono essenzialmente le stesse per un nuovo utente. Tutti implementano la stessa serie base di operazioni quantistiche, che sono state utilizzate dai ricercatori negli ultimi decenni.

Se hai appena iniziato a programmare, il fattore più rilevante per te potrebbe essere il linguaggio in cui è scritto l'SDK quantico. Sono principalmente in Python, ma QISKit ha anche varianti Swift e Java. Q # è integrato in Visual Studio.

Oltre a ciò, ci sono differenze in cose del genere

  • materiale didattico
  • i simulatori o dispositivi quantistici reali su cui verranno eseguiti i programmi
  • applicazioni di alto livello che non richiedono conoscenze quantistiche.

Sono molto prevenuto in ciò che raccomando (e quindi spero che anche altri di parte in diverse direzioni risponderanno alla tua domanda) ma direi che dare un'occhiata al blog QISKit potrebbe essere un buon inizio. Ecco un paio di miei articoli


5

Dipende dalle lingue con cui avrai più affinità.

Qiskit, pyQuil, ecc. Sono in Python, che è un linguaggio di programmazione facilmente comprensibile generalmente con molte utili librerie. Forniscono documentazioni / tutorial per far iniziare i computer quantistici a tutti i principianti. La scrittura di codici può essere eseguita in poche righe.

Q # è in C #. Non l'ho provato, ma se hai iniziato a studiare la programmazione concentrandoti su C o C ++ (e piace), immagino che dovresti sentirti a tuo agio con questo.

Per l'apprendimento, consiglierei di leggere il libro Calcolo quantistico e Informazioni quantistiche da Nielsen e Chuang o Quantum Computing per informatici di Yanofsky e Mannucci; se puoi accedervi e in parallelo guarda un po 'di codice nella piattaforma che preferisci. Ma è sempre una buona idea combinare diverse fonti e spiegazioni per capire meglio.


2
Onestamente non penso che Mike & Ike sia un buon libro per principianti. Si introduce troppo in fretta, Altri libri come Quantum Computing for Computer Scientists o Quantum Computer Science: un'introduzione sono molto meglio IMO. Mike & Ike è bravo quando hai una conoscenza pratica dell'informatica quantistica e vuoi approfondire ulteriormente.
ahelwer,

@ahelwer Questo è un commento rilevante. L'informatica quantistica per gli informatici ha davvero molti esempi numerici. Andrà meglio per un principiante.
CNADA,

4

Sono d'accordo con la risposta di James Wootton. La scelta della lingua diventa importante quando si lavora su un progetto più ampio in cui si desidera fare affidamento su librerie, stime delle risorse e altre funzionalità avanzate. Quando inizierai ad apprendere le basi dell'informatica quantistica e della programmazione quantistica, i tuoi programmi saranno molto piccoli e in realtà non così diversi in lingue diverse.

Suppongo che seguirai un libro / corso sulla teoria dell'informatica quantistica. In questo caso, ci sono due cose che vorresti sicuramente dal linguaggio di programmazione:

  • un bel set di tutorial introduttivi / esercizi di programmazione per aiutarti a interiorizzare la teoria che hai imparato.
  • un simulatore di stato quantico che ti permetterà di vedere lo stato dei qubit mentre il tuo programma viene eseguito.

La mia raccomandazione (distorta in una direzione diversa, come ha suggerito James :-)) è di dare un'occhiata a Q #:

  • I Katum quantistici sono tutorial di programmazione personalizzati progettati per accompagnare un corso sulla teoria dell'informatica quantistica. Ogni tutorial è costituito da una serie di esercizi da risolvere e da un cablaggio di prova dietro le quinte che verifica se il codice è corretto, fornendo un feedback immediato. I tutorial esistenti trattano un bel set di argomenti introduttivi e stiamo lavorando per creare altri tutorial.
  • Il simulatore di stato completo incluso nel Quantum Development Kit consente di scaricare lo stato del sistema come un elenco di ampiezze, quindi è possibile utilizzarlo ogni volta che si desidera verificare che lo stato del sistema corrisponda alla propria comprensione / aspettativa o per capire cosa è andato storto.
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.