Я розумію, є багато мов програмування (наприклад, Q #, Qiskit тощо)
Хто з них підходить для того, хто тільки почав вивчати програмування і нічого не знає про квантову механіку?
Я розумію, є багато мов програмування (наприклад, Q #, Qiskit тощо)
Хто з них підходить для того, хто тільки почав вивчати програмування і нічого не знає про квантову механіку?
Відповіді:
Мови самі по суті однакові для нового користувача. Всі вони реалізують один і той же базовий набір квантових операцій, які використовуються дослідниками протягом останніх кількох десятиліть.
Якщо ви щойно розпочали програмування, найбільш релевантним фактором для вас може бути мова, якою записаний квантовий SDK. Вони переважно в Python, але QISKit також має варіанти Swift та Java. Q # інтегрований у Visual Studio.
Крім цього, існують відмінності в таких речах
Я дуже упереджений у тому, що рекомендую (і тому сподіваюся, що інші упереджені в різних напрямках також відповідуть на ваше запитання), але я б сказав, що перегляд блогу QISKit може бути гарним початком. Ось пара моїх власних статей
Це залежить від мов, з якими ви матимете більше спорідненості.
Qiskit, pyQuil тощо є в Python, який є мовою програмування, яку легко зрозуміти, як правило, з великою кількістю корисних бібліотек. Вони надають документацію / підручники, щоб змусити будь-яких початківців розпочати квантові обчислення. Написання кодів можна виконати в декілька рядків.
Q # знаходиться в C #. Я не пробував цього, але якщо ви почали вивчати програмування, орієнтуючись на C або C ++ (і це подобається), я думаю, вам має бути зручно з цим.
Для навчання я рекомендував би прочитати книгу «Квантове обчислення та квантова інформація від Нільсена та Чуанга» або «Квантове обчислення» для вчених-комп'ютерів з Янофського та Мануччі; якщо ви можете мати доступ до них і паралельно переглянути якийсь код на вашій платформі. Але завжди корисно поєднувати різні джерела та пояснення, щоб краще зрозуміти.
Я згоден з відповіддю Джеймса Вуттона. Вибір мови стає важливим, коли ви працюєте над більш масштабним проектом, в якому потрібно спиратися на бібліотеки, кошториси ресурсів та інші розширені функції. Коли ви почнете вивчати основи квантових обчислень та квантового програмування, ваші програми будуть дуже маленькими і насправді не такими різними для різних мов.
Я припускаю, що ви переглянете книгу / курс з теорії квантових обчислень. У цьому випадку, ви обов'язково захочете дві речі з мови програмування:
Моя рекомендація (упереджена в іншому напрямку, як запропонував Джеймс :-)) - поглянути на Q #: