This course mainly teaches students the basic knowledge of quantum computing and leads them to know about the latest research on quantum computers. Graduate students and senior undergraduates are both welcomed to take this course. It is recommended that students have already taken courses such as linear algebra and advanced mathematics in advance. The main contents of the course are arranged as follows: The first part introduces basic concepts of quantum computation, including qubits, quantum states, and Bloch spheres. The second part is about the theoretical principle of quantum circuits, quantum algorithms, quantum complexity, etc.The third part is about the physical realization of quantum computation, explaining how qubits and gates are constructed. The fourth part talks about practical characterization of quantum computers. The fifth part is about quantum correction, which is crucial for building scalable quantum computers. The final parts is about some frontier applications of quantum computers. Students will have a grasp of basic concepts, methodologies, as well as important topics of quantum computing by taking this course.