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 algoritma hingga subyek yang lebih konkret seperti bahasa pemrograman, perangkat lunak dan perangkat keras.[1] 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, kedua istilah tersebut sering disalah artikan oleh banyak orang.[2][3]
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.[4][5] 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 teoretis (seperti komputer random and komputer oracle).
Ilmu komputer mempelajari apa yang bisa dilakukan oleh beberapa program, dan apa yang tidak (komputabilitas dan kecerdasan buatan), bagaimana program itu harus mengevaluasi suatu hasil (algoritme), 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 ke-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!
Dalam bahasa Indonesia, istilah informatika diturunkan dari bahasa Prancis informatique, yang dalam bahasa Jerman disebut informatik. Sebenarnya, kata ini identik dengan istilah computer science di Amerika Serikat dan computing 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.
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.[6] 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 analisis komunikasi dan basis data.[7]
Rekayasa perangkat lunak
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.[8]
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 application 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 (rekayasa perangkat keras)
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. Adapun materi yang dipelajari dalam hal keamanan informasi yaitu kriptografi, steganografi, dan watermark.
Dasar matematika
Teori ilmu komputer
Perangkat lunak
Organisasi sistem komputer
(lihat juga elektronika)
Metodologi komputasi
Aplikasi komputer
Lingkungan komputasi
Sejarah
Ahli terkenal ilmu komputer
Lihat Daftar Ahli Ilmu Komputer untuk informasi lebih lanjut.
Lihat pula
Referensi
- ^ Mushthofa (2021). Informatika untuk SMA Kelas X. Jakarta: Pusat Kurikulum dan Perbukuan. hlm. 246. ISBN 978-602-244-506-7.
- ^ "What is Computer Science? - Computer Science, The University of York". www.cs.york.ac.uk. Diakses tanggal 2020-08-04.
- ^ "Wayback Machine" (PDF). web.archive.org. 2006-05-25. Archived from the original on 2006-05-25. Diakses tanggal 2020-08-04.
- ^ De Mol, Liesbeth (2019). Zalta, Edward N., ed. The Stanford Encyclopedia of Philosophy (edisi ke-Winter 2019). Metaphysics Research Lab, Stanford University. [pranala nonaktif permanen]
- ^ "Turing machine | Definition & Facts". Encyclopedia Britannica (dalam bahasa Inggris). Diakses tanggal 2020-08-04.
- ^ "Trustworthy Refinement Through Intrusion-Aware Design". web.archive.org. 2007-09-03. Archived from the original on 2007-09-03. Diakses tanggal 2020-08-04.
- ^ Stock, Wolfgang G.; Stock, Mechtild (2013-07-31). Handbook of Information Science (dalam bahasa Inggris). Walter de Gruyter. ISBN 978-3-11-023500-5.
- ^ Laplante, Philip A. (2007-04-25). What Every Engineer Should Know about Software Engineering (dalam bahasa Inggris). CRC Press. ISBN 978-1-4200-0674-2.
Pranala luar