Ilmu komputer (bahasa Inggris: Computer Science), secara umum diartikan sebagai ilmu yang mempelajari
baik tentang komputasi,
perangkat keras (hardware) maupun perangkat lunak (software). Ilmu
komputer mencakup beragam topik yang berkaitan dengan komputer, mulai dari analisis abstrak algoritma sampai subyek yang lebih
konkret seperti bahasa pemrograman, perangkat lunak,
termasuk perangkat keras.
Sebagai suatu disiplin ilmu, Ilmu Komputer lebih menekankan pada pemrograman
komputer, dan rekayasa
perangkat lunak (software), sementara teknik
komputer lebih cenderung berkaitan dengan hal-hal seperti
perangkat keras komputer (hardware). Namun demikian, kedua istilah
tersebut sering disalah-artikan oleh banyak orang.
Tesis Church-Turing menyatakan bahwa
semua alat komputasi yang telah umum diketahui sebenarnya sama dalam hal apa
yang bisa mereka lakukan, sekalipun dengan efisiensi yang berbeda. Tesis ini
kadang-kadang dianggap sebagai prinsip dasar dari ilmu komputer. Para ahli ilmu
komputer biasanya menekankan komputer
von Neumann atau mesin Turing (komputer
yang mengerjakan tugas yang kecil dan deterministik pada suatu waktu tertentu),
karena hal seperti itulah kebanyakan komputer digunakan sekarang ini. Para ahli
ilmu komputer juga mempelajari jenis mesin yang lain, beberapa diantaranya
belum bisa dipakai secara praktikal (seperti komputer neural, komputer DNA, dan komputer
kuantum) serta beberapa diantaranya masih cukup teoritis (sepertikomputer random and komputer oracle).
Ilmu Komputer mempelajari apa yang bisa dilakukan oleh
beberapa program, dan apa yang tidak (komputabilitasdan intelegensia buatan),
bagaimana program itu harus mengevaluasi suatu hasil (algoritma), bagaimana program harus
menyimpan dan mengambil bit tertentu dari suatu informasi (struktur
data), dan bagaimana program dan pengguna berkomunikasi (antarmuka pengguna dan bahasa pemrograman).
Ilmu komputer berakar dari elektronika, matematika dan linguistik. Dalam
tiga dekade terakhir dari abad 20, ilmu komputer telah menjadi suatu
disiplin ilmu baru dan telah mengembangkan metode dan istilah sendiri.
Departemen ilmu komputer pertama didirikan di Universitas Purdue pada
tahun 1962.
Hampir semua universitas sekarang mempunyai departemen ilmu komputer.
Penghargaan tertinggi dalam ilmu komputer adalah Turing
Award, pemenang penghargaan ini adalah semua pionir di bidangnya.
Edsger Dijkstra mengatakan:
Ilmu
komputer bukan tentang komputer sebagaimana astronomi bukan tentang teleskop
Fisikawan Richard Feynman mengatakan:
Ilmu komputer
umurnya tidak setua fisika; lebih muda beberapa ratus tahun. Walaupun begitu,
ini tidak berarti bahwa "hidangan" ilmuwan komputer jauh lebih
sedikit dibanding fisikawan. Memang lebih muda, tapi dibesarkan secara jauh
lebih intensif!
Catatan
tentang istilah 'Informatika' dan 'Ilmu komputer'
Dalam bahasa Indonesia,
istilah Informatika diturunkan dari bahasa Perancis informatique, yang dalam
bahasa Jerman disebut Informatik. Sebenarnya, kata ini identik
dengan istilah computer science di Amerika Serikat dancomputing
science di Inggris. Namun, istilah informatics dalam
bahasa Inggris memiliki makna yang sedikit berbeda, yaitu lebih menekankan pada
aspek pengolahan informasi secara sistematis dan rasional.
Hubungan
Informatika dengan bidang lain
Ilmu komputer berkaitan erat dengan beberapa bidang
lain. Bidang-bidang ini tidak benar-benar terpisah, sekalipun mempunyai
perbedaan penting.
Sistem Informasi adalah aplikasi komputer untuk
mendukung operasi dari suatu organisasi yaitu: operasi, instalasi, dan
perawatan komputer, perangkat lunak, dan data. Sistem
Informasi Manajemen adalah kunci dari bidang yang menekankan
finansial dan personal manajemen. 'Sistem Informasi' dapat berupa gabungan dari
beberapa elemen teknologi berbasis komputer yang saling berinteraksi dan
bekerja sama berdasarkan suatu prosedur kerja (aturan kerja) yang telah
ditetapkan, dimana memproses dan mengolah data menjadi suatu bentuk informasi
yang dapat digunakan dalam mendukung keputusan.
Ilmu Informasi adalah ilmu yang mempelajari
data dan informasi, mencakup bagaimana menginterpretasi, menganalisis,
menyimpan, dan mengambil kembali. Ilmu informasi dimulai sebagai dasar dari
analisiskomunikasi dan basis data.
Rekayasa Perangkat Lunak pada
prinsipnya menekankan pada tahapan-tahapan pengembangan suatu perangkat lunak
yakni : Analisis, Desain, Implementasi, Testing dan Maintenance. Pada
tahap yang lebih luas Rekayasa Perangkat Lunak mengacu pada Manajemen Proyek
pengembangan Perangkat Lunak itu sendiri dengan tetap memperhatikan
tahapan-tahapan pengembangan sebelumnya.
Dalam pengembangannya perangkat lunak memiliki
berbagai model yaitu model water fall ('model konvensional' sebagai model
terdahulu yang dikembangkan dan karena model water fall nyaris sama dengan
siklus hidup pengembangan sistem), model prototype ('model yang disukai oleh
user dan pengembang), model sequensial linear, model RAD 'rapid aplikation
model', model 'formal method' atau 'metode formal' disini sebelum diadakannya
implementasi terlebih dahulu rancangan model yang dibuat diverifikasi terlebih
dahulu sehingga tidak ada lagi kesalahan - kesalahan pada saat implementasi.
Rekayasa Komputer adalah ilmu yang mempelajari
analisis, desain, dan konstruksi dari perangkat keras komputer.
Ilmu yang mempelajari segala aspek pembuatan,
konstruksi, pemeliharaan perangkat lunak.
Keamanan Informasi adalah ilmu yang mempelajari
analisis dan implementasi dari keamanan sistem informasi (termasuk Kriptografi).
