Gate-Based Quantum Computing