Computational Thinking (CT) adalah sebuah metode pemecahan masalah dengan mengaplikasikan/melibatkan teknik yang digunakan oleh software engineer dalam menulis program. CT memang memiliki peran penting dalam pengembangan aplikasi komputer, namun CT juga dapat digunakan untuk mendukung pemecahan masalah disemua disiplin ilmu, termasuk humaniora, matematika dan ilmu pengetahuan. Computational Thinking melatih otak untuk terbiasa berfikir secara logis, terstruktur dan kreatif. Salah satu elemen dari Computational Thinking adalah abstraksi.
Menurut Kamus Besar Bahasa Indonesia (KBBI) abstraksi merupakan proses atau perbuatan pemisahan. Dalam Computational Thinking (CT) atau berpikir komputasi abstraksi merupakan salah satu metode berpikir yang dipakai programmer ketika menulis program. Metodenya ini berupa melakukan generalisasi dan mengidentifikasi prinsip-prinsip umum yang menghasilkan pola, tren dan keteraturan tersebut. Metode ini juga membutuhkan kemampuan menyaring informasi yang tidak dibutuhkan, memilah informasi yang kompleks menjadi lebih sederhana dan membuat informasi lebih bersifat general sehingga memudahkan kita untuk menjelaskan suatu ide. Contohnya dalam menentukan posisi di bumi dapat digeneralisasi dengan menggunakan titik koordinat bujur dan lintang.
Dalam mengabstraksi data, kemampuan kita untuk menginterpretasikan suatu data dengan konteks masalahnya sangat dibutuhkan. Contohnya bila kita disuruh untuk menggambar seekor kucing, dalam pengenalan pola kita melihat masalah karena harus menggambar serangkaian kucing. Lalu kita mencatat bahwa semua kucing memiliki karakteristik umum, yang umum terjadi pada semua kucing, misalnya mata, ekor, bulu, keinginan ikan dan kemampuan untuk membuat suara mengi. Selain itu, setiap kucing memiliki ciri khas, seperti bulu hitam, ekor panjang, mata hijau, cinta salmon, dan nyaring keras. Rincian ini dikenal sebagai spesifik.
Untuk menggambar kucing dasar, kita perlu tahu bahwa ia memiliki ekor, bulu dan mata. Karakteristik ini relevan. Kita tidak perlu tahu apa suara kucing yang dibuat atau yang disukai ikan. Karakteristik ini tidak relevan dan bisa disaring. Kita perlu tahu bahwa kucing memiliki ekor, bulu dan mata, tapi kita tidak perlu tahu ukuran dan warnanya. Spesifik ini bisa disaring. Dari karakteristik umum yang kita miliki (ekor, bulu, mata) kita bisa membangun ide dasar seekor kucing, yaitu seperti apa kucing pada dasarnya. Begitu kita tahu seperti apa seekor kucing kita bisa menggambarkan kucing dasar.
Mengapa abstraksi itu penting? Abstraksi memungkinkan kita untuk membuat gagasan umum tentang apa masalahnya dan bagaimana mengatasinya. Proses menginstruksikan kita untuk menghapus semua detail spesifik, dan pola apa pun yang tidak akan membantu kami mengatasi masalah kami. Ini membantu kita membentuk gagasan kita tentang masalah ini. Ide ini dikenal sebagai ‘model’. Jika kita tidak abstrak kita mungkin berakhir dengan solusi yang salah untuk masalah yang sedang kita coba selesaikan. Dengan contoh kucing kita, jika kita tidak abstrak kita mungkin berpikir bahwa semua kucing memiliki ekor panjang dan bulu pendek. Setelah disarikan, kita tahu bahwa meskipun kucing memiliki ekor dan bulu, tidak semua ekor panjang dan tidak semua bulu pendek. Dalam kasus ini, abstraksi telah membantu kita membentuk model seekor kucing yang lebih jelas.
Sumber
www.bbc.co.uk : Abstraction
www.kompasiana.com : Computational Thinking = Computer Science
haddadsammir.wordpress.com : Berpikir Komputasi