Tôi hiểu rằng có rất nhiều ngôn ngữ lập trình (ví dụ: Q #, Qiskit, v.v.)
Cái nào phù hợp với người mới bắt đầu học lập trình và không biết gì về cơ học lượng tử?
Tôi hiểu rằng có rất nhiều ngôn ngữ lập trình (ví dụ: Q #, Qiskit, v.v.)
Cái nào phù hợp với người mới bắt đầu học lập trình và không biết gì về cơ học lượng tử?
Câu trả lời:
Các ngôn ngữ về cơ bản là giống nhau cho một người dùng mới. Tất cả đều thực hiện cùng một tập hợp các hoạt động lượng tử cơ bản, đó là những hoạt động đã được các nhà nghiên cứu sử dụng trong vài thập kỷ qua.
Nếu bạn mới bắt đầu lập trình, yếu tố phù hợp nhất với bạn có thể là ngôn ngữ mà SDK lượng tử được viết. Chúng chủ yếu bằng Python, nhưng QISKit cũng có các biến thể Swift và Java. Q # được tích hợp vào Visual Studio.
Ngoài ra, có những khác biệt trong những thứ như
Tôi rất thiên vị trong những gì tôi đề xuất (và vì vậy tôi hy vọng rằng những người khác thiên vị theo các hướng khác nhau cũng sẽ trả lời câu hỏi của bạn) nhưng tôi nói rằng hãy xem blog QISKit có thể là một khởi đầu tốt. Đây là một vài bài viết của riêng tôi
Nó phụ thuộc vào ngôn ngữ mà bạn sẽ có nhiều mối quan hệ hơn.
Qiskit, pyQuil, v.v. đều bằng Python, đây là ngôn ngữ lập trình dễ hiểu nói chung với rất nhiều thư viện hữu ích. Họ cung cấp tài liệu / hướng dẫn để làm cho bất kỳ người mới bắt đầu bắt đầu tính toán lượng tử. Viết mã có thể được thực hiện trong một vài dòng.
Q # nằm trong C #. Tôi chưa thử nhưng nếu bạn bắt đầu học lập trình tập trung vào C hoặc C ++ (và thích nó), tôi đoán bạn nên thoải mái với cái này.
Để tìm hiểu, tôi khuyên bạn nên đọc cuốn sách Tính toán lượng tử và Thông tin lượng tử từ Nielsen và Chuang hoặc Máy tính lượng tử cho các nhà khoa học máy tính từ Yanofsky và Mannucci; nếu bạn có thể có quyền truy cập vào chúng và song song xem xét một số mã trong nền tảng bạn chọn. Nhưng nó luôn luôn là một ý tưởng tốt để kết hợp các nguồn và giải thích khác nhau để hiểu rõ hơn.
Tôi đồng ý với câu trả lời của James Wootton. Sự lựa chọn ngôn ngữ trở nên quan trọng khi bạn làm việc trong một dự án lớn hơn mà bạn muốn dựa vào thư viện, ước tính tài nguyên và các tính năng nâng cao khác. Khi bạn bắt đầu tìm hiểu những điều cơ bản về điện toán lượng tử và lập trình lượng tử, các chương trình của bạn sẽ rất nhỏ và thực sự không khác biệt giữa các ngôn ngữ khác nhau.
Tôi cho rằng bạn sẽ trải qua một số cuốn sách / khóa học về lý thuyết điện toán lượng tử. Trong trường hợp này, có hai điều bạn chắc chắn sẽ muốn từ ngôn ngữ lập trình:
Đề xuất của tôi (thiên vị theo hướng khác nhau, như James đề xuất :-)) là hãy xem Q #: