Ilmu komputer adalah teori, eksperimen, dan teknik yang membentuk dasar untuk desain dan penggunaan komputer. Ini melibatkan studi tentang algoritma yang memproses, menyimpan, dan mengkomunikasikan informasi digital. Seorang ilmuwan komputer mengkhususkan diri dalam teori komputasi dan desain sistem komputasi.
Bidangnya dapat dibagi menjadi berbagai disiplin ilmu teoritis dan praktis. Beberapa bidang, seperti teori kompleksitas komputasi (yang mengeksplorasi sifat-sifat dasar dari masalah komputasi dan yang sulit ditangani), sangat abstrak, sedangkan bidang-bidang seperti grafik komputer menekankan aplikasi visual dunia nyata. Bidang-bidang lain fokus pada tantangan dalam mengimplementasikan komputasi. Sebagai contoh, teori bahasa pemrograman mempertimbangkan berbagai pendekatan untuk deskripsi komputasi, sedangkan studi tentang pemrograman komputer sendiri menyelidiki berbagai aspek penggunaan bahasa pemrograman dan sistem yang kompleks. Interaksi manusia-komputer mempertimbangkan tantangan dalam membuat komputer dan komputasi bermanfaat, dapat digunakan, dan dapat diakses secara universal oleh manusia.