Siapa yang tidak kenal matematika? Mata pelajaran yang dianggap sulit oleh sebagian besar orang ini sebenarnya menyimpan peranan yang begitu besar dalam kemajuan dunia teknologi informasi. Sulit dibayangkan jika di masa sekarang ini tidak ada google yang membantu kita mengerjakan pekerjaan rumah atau tidak ada platform untuk saling bertukar cerita dan informasi. Lalu seperti apa “track record” matematika dalam perkembangan teknologi?
Matematika Sebagai Dasar
Dalam perkembangannya, matematika terbagi menjadi dua kelompok besar. Pertama yaitu matematika murni yang membahas topik seperti aljabar, geometri, dan kalkulus. Kedua yaitu matematika terapan yang merupakan kombinasi matematika dengan keilmuan di luar matematika seperti fisika, matematika biologi, matematika kimia, dan ilmu komputer. Pengaplikasian matematika murni sangatlah luas karena dipergunakan di setiap cabang sains fisik, sains komputer, teknik, ekonomi, kedokteran, dan masih banyak lagi. Salah satu bentuk pengaplikasian matematika murni yang terkenal di bidang teknologi informasi adalah matematika komputasi. Matematika komputasi sendiri adalah bidang ilmu lanjutan sebagai respon terhadap perkembangan teknologi, informasi, dan komunikasi baik sebagai pengembangan dari ilmu matematika maupun untuk pemecahan masalah dalam kehidupan sehari-hari.
Logika dan Algoritma Pemrograman
Salah satu produk penjabaran matematika komputasi adalah ilmu logika yang digunakan untuk memecahkan masalah pemrograman. Logika yaitu bentuk penalaran atau pemikiran mengenai suatu hal, yang juga merupakan awal dari algoritma. Selanjutnya, logika dalam ilmu komputer digunakan sebagai dasar dalam belajar bahasa pemrograman, struktur data, Artificial Intelligence (AI), teknik (sistem) digital, basis data, teori komputasi, rekayasa perangkat lunak, dan lain-lain yang mempergunakan logika secara intensif. Logika dalam pemrograman komputer mencakup logika aritmatika, logika perbandingan, logika Boolean, dan logika BitWise.
Bukan hanya logika, pengintegrasian ilmu-ilmu dasar seperti kalkulus dan aljabar dalam matematika komputasi melahirkan beragam temuan baru dalam kelompok matematika terapan yang mengarah pada perkembangan disiplin ilmu baru. Contohnya pada penggunaan algoritma. Algoritma adalah sekumpulan langkah rinci dan sistematis untuk menyelesaikan masalah pada program yang nantinya dapat diseksekusi oleh komputer, sehingga algoritma dibutuhkan untuk menciptakan efisiensi dan efektifitas dalam pemrograman komputer.
Dalam menghadapi permasalahan di berbagai bidang, seorang ilmuan komputer harus memiliki kombinasi kemampuan dalam mengkonstruksi algoritma atau bahasa formal (bahasa yang dirancang khusus contohnya notasi matematika) untuk memodelkan konsep, mengamati perilaku, merumuskan hipotesis, menguji prediksi, serta mampu mendesain, merakit komponen dalam sistem, hingga mengambil keputusan dengan tepat.
Bahasa Pemrograman
Kaitan antara logika dan algoritma tidak dapat dipisahkan karena keduanya merupakan dua ilmu penting yang digunakan dalam mempelajari pemrograman komputer. Algoritma dan logika pemrograman tersebut kemudian menjadi basis dari terciptanya bahasa pemrograman. Bahasa pemrograman adalah bahasa formal yang didesain untuk mengekspresikan algoritma. Bahasa ini diperlukan sebagai media oleh user (pengguna) komputer untuk dapat berkomunikasi dengan mesin (komputer). Beberapa contoh bahasa pemrograman adalah Python, C, Java, PHP, Ruby, dan Go.
Meskipun saling berhubungan dan kelihatannya sama, program tidak sama dengan algoritma. Di dalam program terdapat gabungan antara algoritma dan bahasa pemrograman. Algoritma yang baik namun pemilihan struktur datanya tidak tepat, akan membuat program menjadi kurang efektif dan efisien, begitu juga sebaliknya. Jadi, program adalah implementasi teknis algoritma yang ditulis dalam bahasa pemrograman sehingga dapat dilaksanakan oleh mesin (komputer). Kegiatan membuat program disebut pemrograman (programming), sedangkan tiap-tiap langkah dalam membuat program disebut instruksi (coding).
Setiap bahasa pemrograman memiliki kelebihan dan kekurangannya masing-masing, sehingga penggunaan dan pemanfaatannya pun berbeda-beda. Ada yang digunakan untuk menghasilkan sistem operasi, website, game, dan aplikasi berbasis IOS dan Android yang ada saat ini. Ada pula yang condong dimanfaatkan untuk membangun sistem informasi perbankan, analisis data, machine learning, Artificial Intelligence (AI), dan sistem pembangunan database. Seiring perkembangan teknologi informasi, semakin banyak muncul bahasa pemrograman baru yang semakin mudah digunakan dari masa ke masa.